3. /etc/passwd

В Linux имена пользователей — это удобочитаемые метки, но система идентифицирует пользователей с помощью уникального идентификатора пользователя (UID). Соответствие между именами пользователей и UID хранится в файле /etc/passwd, который является критически важным компонентом для управления пользователями.

Чтобы просмотреть его содержимое, вы можете использовать простую команду:

cat /etc/passwd

Этот файл отображает список всех системных пользователей и подробную информацию о них. Каждая строка представляет одну учетную запись пользователя.

Разбор полей /etc/passwd

Типичная строка в этом файле, часто самая первая, выглядит следующим образом:

root:x:0:0:root:/root:/bin/bash

Эта запись для пользователя root содержит семь полей, разделенных двоеточиями (:). Понимание структуры /etc/passwd в Linux является ключом к управлению пользователями. Давайте разберем каждое поле:

  1. Имя пользователя: Имя для входа пользователя (например, root).
  2. Пароль: Заполнитель для зашифрованного пароля пользователя. Фактический пароль здесь не хранится из соображений безопасности.
    • x указывает, что зашифрованный пароль находится в файле /etc/shadow.
    • * (звездочка) означает, что учетная запись заблокирована и не может использоваться для входа.
    • Пустое поле означает, что у пользователя нет пароля.
  3. Идентификатор пользователя (UID): Уникальный числовой идентификатор пользователя. Пользователь root всегда имеет UID, равный 0.
  4. Идентификатор группы (GID): Числовой идентификатор основной группы пользователя.
  5. Поле GECOS: Поле для комментариев, которое традиционно содержит дополнительную информацию, такую как полное имя пользователя, номер телефона или местоположение офиса. Оно разделено запятыми.
  6. Домашний каталог: Абсолютный путь к домашнему каталогу пользователя (например, /root).
  7. Оболочка по умолчанию: Командный интерпретатор по умолчанию для пользователя, который запускается при входе в систему (например, /bin/bash).

Системные пользователи и специальные учетные записи

Когда вы просматриваете файл /etc/passwd, вы заметите множество учетных записей, которые не принадлежат людям. Это системные учетные записи, используемые для запуска определенных служб или процессов с ограниченными правами, что повышает безопасность системы. Например, пользователь daemon используется для запуска фоновых процессов-демонов.

Редактирование файла /etc/passwd

Хотя технически вы можете редактировать файл /etc/passwd напрямую с помощью текстового редактора или команды vipw, это настоятельно не рекомендуется. Ручное редактирование может легко привести к синтаксическим ошибкам, потенциально заблокировав вам доступ к системе или вызвав нестабильность.

Всегда безопаснее и надежнее использовать специальные утилиты командной строки, такие как useradd, usermod и userdel, для управления учетными записями пользователей. Эти инструменты предназначены для правильного изменения файла и обработки всех связанных конфигураций.

Войдите, чтобы сохранить ваш прогресс обучения

Вход

Упражнения

Чтобы закрепить свои знания, попробуйте выполнить следующие практические лабораторные работы. Они помогут вам применить концепции идентификаторов пользователей и управления учетными записями в реальных сценариях и повысить уверенность в администрировании пользователей Linux.

  1. Управление учетными записями пользователей Linux с помощью useradd, usermod и userdel - Практикуйте полный жизненный цикл администрирования пользователей: от создания и защиты новых учетных записей до их изменения и удаления.
  2. Управление группами Linux с помощью groupadd, usermod и groupdel - Получите практический опыт работы с основными утилитами командной строки для администрирования групп, включая создание новых групп и изменение членства пользователей.
  3. Настройка учетных записей пользователей и привилегий Sudo в Linux - Изучите основные методы управления учетными записями пользователей и привилегиями sudo для повышения безопасности системы Linux.

Тест

Если учетная запись пользователя заблокирована и не может быть использована для входа в систему, как это обозначается в поле пароля файла `/etc/passwd`? Пожалуйста, ответьте, используя только требуемый символ.