В системах на базе Debian (включая Ubuntu) пакеты создают пользователей, используя сценарии сопровождающего, обычно postinst
. Следовательно, одним из способов может быть использование этих сценариев:
grep -R --include='*.postinst' -e useradd -e adduser /var/lib/dpkg/info/
Это предполагает, конечно, что сценарий postinst
не был удалён (либо вручную, либо потому, что вы удалили данный пакет).
Политика Debian, кажется, благоприятствует postinst
:
.
[Y]ou ou ou ou должны организовать создание пользователя или группы, если необходимо, с помощью
adduser
в сценарииpreinst
илиpostinst
(опять же, последний предпочтительнее, если это возможно).
Сопровождающий пакета может также использовать preinst
, если adduser
является предварительной зависимостью.
Политика также приводит нас к другому источнику учетных записей: пакет base-passwd
, как сказано в предыдущем параграфе:
Если вам нужен статически выделенный идентификатор, вы должны запросить идентификатор пользователя или группы у сопровождающего
base-passwd
, и не должны выпускать пакет до тех пор, пока он не будет вам выделен. После выделения пакета вы должны либо сделать его зависимым от версии пакетаbase-passwd
с идентификатором, указанным в/etc/passwd
или/etc/group
, или организовать создание самого пользователя или группы с правильным id (используяadduser
) в егоpreinst
илиpostinst
. (Если это возможно, то предпочтительнее сделать это вpostinst
, иначе понадобится предварительная зависимость от пакета adduser. )
The base-passwd
documentation (/usr/share/doc/base-passwd/users-and-groups.txt.gz
or /usr/share/doc/base-passwd/users-and-groups.html
) says:
The Debian base-passwd package contains the master versions of /etc/passwd and
/etc/group. The update-passwd tool keeps the entries in these master files in
sync on all Debian systems. They comprise only "global static" ids: that is,
those which are reserved globally for the benefit of packages which need to
include files owned by those users or groups, or need the ids compiled into
binaries.
Включенные пользователи/группы (grepped out from /usr/share/doc/base-passwd/users-and-groups.txt) говорят: "Пользователи/группы". gz
):
root man majordom irc gdm
daemon lp postgres gnats saned
bin mail www-data nobody klog
sys news backup messagebus syslog
sync uucp operator postfix
games proxy list haldaemon
adm fax audio staff sshd
tty voice src users fetchmail
disk cdrom shadow lpadmin cupsys
kmem floppy utmp sasl nogroup
dialout tape video scanner
dip sudo plugdev ssh
Пакет README (/usr/share/doc/base-passwd/README
) также перечисляет некоторых пользователей с UID в диапазоне 60000-64999 и заявляет, что они созданы соответствующими пакетами.
Убедитесь, что вы указываете хэш для параметра Passwd [11594222] Passwd в разделе # Cloud-Config
.
$ echo "core" | openssl passwd -stdin -1
$1$o2SU8wJ7$IUhyYV.5yJ5TI7BSZmZDx.