pwd.md
1> **Источник:** https://python-all.ru/2.7/library/pwd.html2>3> «Документация Python на русском» – неофициальный перевод официальной документации Python: версии от 2.6 до 3.16, полнотекстовый поиск, английский оригинал рядом с переводом. Эта Markdown-версия страницы предназначена для работы с LLM: вставьте её в ChatGPT, Claude или Cursor.45---67# 36.2. [`pwd`](https://python-all.ru/2.7/library/pwd.html#module-pwd) – База данных паролей89Этот модуль предоставляет доступ к базе данных учётных записей и паролей Unix. Он доступен на всех версиях Unix.1011Записи базы данных паролей предоставляются в виде объекта, похожего на кортеж, чьи атрибуты соответствуют членам структуры `passwd` (поля атрибутов ниже, см. `<pwd.h>`):1213| Индекс | Атрибут | Значение |14| --- | --- | --- |15| 0 | `pw_name` | Логин |16| 1 | `pw_passwd` | Необязательный зашифрованный пароль |17| 2 | `pw_uid` | Числовой идентификатор пользователя |18| 3 | `pw_gid` | Числовой идентификатор группы |19| 4 | `pw_gecos` | Имя пользователя или поле комментария |20| 5 | `pw_dir` | Домашний каталог пользователя |21| 6 | `pw_shell` | Интерпретатор команд пользователя |2223Элементы uid и gid – целые числа, все остальные – строки. Исключение [`KeyError`](https://python-all.ru/2.7/library/exceptions.html#exceptions.KeyError) возбуждается, если запрашиваемая запись не найдена.2425> **Примечание**26>27> В традиционных Unix-системах поле `pw_passwd` обычно содержит пароль, зашифрованный с помощью алгоритма на основе DES (см. модуль [`crypt`](https://python-all.ru/2.7/library/crypt.html#module-crypt)). Однако большинство современных Unix-систем используют так называемую систему *теневых паролей*. В таких системах поле *pw\_passwd* содержит только звёздочку (`'*'`) или букву `'x'`, а зашифрованный пароль хранится в файле `/etc/shadow`, который не доступен для чтения всем пользователям. Содержит ли поле *pw\_passwd* что-либо полезное, зависит от системы. Если требуется доступ к зашифрованному паролю, следует использовать модуль [`spwd`](https://python-all.ru/2.7/library/spwd.html#module-spwd) (если он доступен).2829Определяются следующие элементы:3031#### `pwd.getpwuid(uid)`3233Возвращает запись базы данных паролей для указанного числового идентификатора пользователя.3435#### `pwd.getpwnam(name)`3637Возвращает запись базы данных паролей для указанного имени пользователя.3839#### `pwd.getpwall()`4041Возвращает список всех доступных записей базы данных паролей в произвольном порядке.4243> **См. также**44>45> **Модуль [`grp`](https://python-all.ru/2.7/library/grp.html#module-grp)**46>47> Интерфейс к базе данных групп, аналогичный этому.48>49> **Модуль [`spwd`](https://python-all.ru/2.7/library/spwd.html#module-spwd)**50>51> Интерфейс к базе данных теневых паролей, аналогичный этому.52