Цитата(ViGOur @ 8.4.2013, 0:54)
/etc/passwd (от англ. password — пароль) — файл, содержащий в текстовом формате список пользовательских учётных записей (аккаунтов).
Является первым и основным источником информации о правах пользователя операционной системы. Существует в большинстве версий и вариантов UNIX-систем. Обязан присутствовать в POSIX совместимой операционной системе.
Каждая строка файла описывает одного пользователя и содержит семь полей, разделённых двоеточиями:
- регистрационное имя или логин;
- хеш пароля (см. ниже);
- идентификатор пользователя;
- идентификатор группы по умолчанию;
- информационное поле GECOS (см. ниже);
- начальный (он же домашний) каталог;
- регистрационная оболочка, или shell.
Например:
root:lZTB0KTrSKy8M:0:0:root:/root:/bin/sh/daemon:x:1:1:daemon:/usr/sbin:/bin/false/bin:x:2:2:bin:/bin:/bin/false
john:H5ned8EV1vank:101:101::/home/john:/usr/bin/csh/bill:7qeFjndagetZk:102:102::/home/bill:/bin/sh
как сказать, в похожих на SYSV (linux например) пароль давно уже унесли в /etc/shadow. Во BSD линии, он вообще находится в master.passwd кажется.
Цитата(DaiV @ 8.4.2013, 2:02)
Цитата(ViGOur @ 7.4.2013, 19:54)
/etc/passwd (от англ. password — пароль) — файл, содержащий...
Сейчас возможности посмотреть данный файл нет, но направление мне понятно, спасибо.
есть стандартные функции системы. Например getpwnam и getpwuid, которые возвращают структуру вида
/* The passwd structure. */
struct passwd
{
char *pw_name; /* Username. */
char *pw_passwd; /* Password. */
__uid_t pw_uid; /* User ID. */
__gid_t pw_gid; /* Group ID. */
char *pw_gecos; /* Real name. */
char *pw_dir; /* Home directory. */
char *pw_shell; /* Shell program. */
};