useradd
is native binary compiled with the system. But, adduser
is a perl script which uses useradd
binary in back-end.
adduser
is more user friendly and interactive than its back-end useradd
. There's no difference in features provided.
Интересно: почему в Debian Linux есть две эти команды с очень похожими именами и функциональностью? Это всегда смущало меня.
useradd
is native binary compiled with the system. But, adduser
is a perl script which uses useradd
binary in back-end.
adduser
is more user friendly and interactive than its back-end useradd
. There's no difference in features provided.
The main advantage to adduser over useradd is dealing with system level users. With adduser the system level users account when created puts a user directory in home for the system user where useradd does not automatically. If you read the man they are essentially the same except for system level users and associated home directories are automatic. adduser creates a /home/user directory automatically for system level users where there is not a provision in useradd, except if specified by -m option. The other readings I have come across generically state that UID and GUID are assigned by accepted conformal Debian standards in adduser.
В нескольких экземплярах Redhat, которые я проверял (4.9 из 2011 и 6.9 из 2017), adduser - это просто псевдоним useradd, а не сценарий Perl. Вот это в Redhat 6.9:
$ ls -la /usr/sbin/useradd /usr/sbin/adduser lrwxrwxrwx. 1 root root 7 Nov 2 2016 /usr/sbin/adduser -> useradd -rwxr-x---. 1 root root 111320 Feb 9 2016 /usr/sbin/useradd
Я помню, что useradd - это «правильная» программа: добавление пользователя - это всего лишь одна операция в спектре CRUD. Вам также понадобятся операции «изменить» и «удалить» (предположительно, «чтение» рассматривается при просмотре / etc / passwd). И так, программы называются user * (useradd, usermod и userdel соответственно). Я предполагаю, что альтернативное * соглашение об именах пользователей (adduser, moduser и deluser - их не существует) также может работать. Но это было бы немного более неловко (по причине, которую я не могу выразить ясно в данный момент :)