Une différence importante que j'ai rencontrée (et que je n'ai pas vue dans une réponse ici), est que useradd --system
semble impliquer --shell /bin/bash
alors que adduser --system
implique --shell /usr/sbin/nologin
et c'est ce que je voulais.
Mais je voulais aussi pas de répertoire personnel (qui est la valeur par défaut avec useradd
mais pas avec adduser
), donc je pourrais soit utiliser useradd このように
useradd --system --shell /usr/sbin/nologin foo
(ou /bin/false
est également populaire pour non Shell )
Ce qui conduit, par exemple, à l'entrée suivante dans le document /etc/passwd
foo:x:994:991::/home/foo:/usr/sbin/nologin
Ou utilisez adduser このように
adduser --system --no-create-home foo
Ce qui conduit, par exemple, à l'entrée suivante dans le document /etc/passwd
foo:x:110:65534::/home/foo:/usr/sbin/nologin
Notez que l'attribution automatique des (G)UIDs est également très différente. useradd
semble les prendre en comptant vers le bas à partir de 999, tandis que adduser
compte vers le haut à partir de 100 pour l'UID et utilise 65534 pour le GUID (ce qui semble vouloir dire aucun groupe ). En effet, useradd
crée également un groupe (voir /etc/group
), tandis que adduser
ne le fait pas.
Donc pour moi, je vais m'en tenir à adduser après avoir appris tous ces faits.
Source : Testé sur Raspberry Pi OS (basé sur Debian Buster).
4 votes
Notez que
useradd
est disponible sur toutes les plateformes de type Unix ;adduser
est uniquement pour Debian et ses dérivés.