/etc/passwd Структура и формат записей файла -- Данные о пользователе в linux

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

Стуктура записей в /etc/passwd

Каждая строка файла описывает одного пользователя и 7 полей, разделенных двоеточиями:

  1. Регистрационное имя. Регистрационные имена должны быть уникальными и состоять не более чем из 32 символов.
    Они могут содержать любые символы, кроме двоеточия и символа новой строки. Они не должны начинаться с цифры.
  2. Зашифрованный пароль или «заполнитель» пароля.

    В данном поле возможно присутствие:

    1. символа «х» --
      так указыватеся, что пароль храниться в файле /etc/shadow
    2. символа «*»
      -- значит, что данная учетная запись временно отключена.
    3. или набора случайных символов и чисел
      -- значит указывается непосредственный пароль пользователя в зашифрованном виде.
  3. Идентификатор пользователя - это 32-битное целое число, которое уникально идентифицирует пользователя в системе.
    По умолчанию, идентификаторы меньше 500 зарезервированы для служебных учетных записей. Регулярные пользователи имеют идентификаторы, начиная с 500.
  4. Идентификатор группы по умолчанию.
    Как и идентификатор пользователя, идентификатор группы (GID) является 32-битным целым числом.
    Причем:
    • Идентификатор 0 зарезервирован для группы с именем root,
    • идентификатор 1 - для группы bin,
    • а 2 - для группы daemon.

    Группы определяются в файле /etc/group, а поле идентификатора группы в файле /etc/passwd задает стандартный («эффективный») идентификатор на момент регистрации пользователя в системе.

    Этот идентификатор не играет особой роли при определении прав доступа; он используется лишь при создании новых файлов и каталогов.

    Новые файлы обычно включаются в эффективную группу своего владельца, но если у каталога установлен специальный бит setgid (02000) или файловая система смонтирована с опцией grpid, новые файлы принадлежат группе владельца каталога.
    По умолчанию, в ОС Linux для каждого нового пользователя создается новая группа с таким же регистрационным именем и идентификатором.

  5. Поле персональных данных. Поле GECOS в основном используется для хранения персональной информации о каждом пользователе. Оно не имеет четко определенного синтаксиса.

    Структура данного поля может быть произвольной, но команда finger интерпретирует разделенные запятыми элементы данного поля в следующем порядке:

    • полное имя;
    • номер офиса и здания;
    • рабочий телефон;
    • домашний телефон.
  6. Домашний каталог. Войдя в систему, пользователь попадает в свой домашний каталог. Если на момент регистрации этот каталог отсутствует, выводится сообщение о его отсутствии. Если в качестве значения поля домашнего каталога по умолчанию DEFAULT_HOME в файле /etc/login.defs установлено «no», продолжение регистрации пользователя будет невозможно; в противном случае пользователь попадает в корневой каталог.
    По умолчанию, домашние каталоги пользователей создаются в каталоге /home. При добавлении в систему нового пользователя в его домашний каталог копируются все файлы из каталога /etc/skel, в котором содержаться персональные конфигурационные файлы командного интерпретатора и различных программ.
  7. Командный интерпретатор.
    -- В качестве регистрационной оболочки, как правило, задается интерпретатор команд, например,
    /bin/sh

    или

    /bin/csh

    ,
    -- но, в принципе, это может быть любая программа. По умолчанию используется интерпретатор bash.

    Пользователи могут менять интерпретатор с помощью команды chsh. Файл /etc/shells содержит список тех интерпретаторов, которые доступны для выбора.

Пример записи в /etc/passwd

Типовые записи файла /etc/passwd имеет следующий вид (приведём две строки):

root:х:0:0:test,w,1,w:/root:/bin/bash
sabayon:x:86:86:Sabayon user:/home/sabayon:/sbin/nologin

В первой записи указана учетная запись пользователя root. Как видно, идентификатор пользователя и идентификатор группы пользователя для данной учетной записи совпадают и равны нулю. Затем следует поле персональных данных, домашний каталог, которым является каталог /root и командный интерпретатор пользователя - /bin/bash.

Источник:
http://life-prog.ru/man/etc.html