В чем разница между adduser и useradd?

В чем разница между командами adduser и useradd в Ubuntu?

453
задан 1 May 2018 в 20:39

8 ответов

adduser удобнее в том, что он устанавливает домашние папки учетной записи и другие настройки (например, автоматическая загрузка статистики системы и уведомлений при входе в систему), тогда как useradd просто создает пользователя.

0
ответ дан 1 May 2018 в 20:39

adduser: добавить пользователя с полным профилем и информацией (пароль, квота, разрешение и т. Д.)

useradd: добавить пользователя только с его именем (если вы хотите добавить временного пользователя с только имя, другая информация не требуется)

0
ответ дан 1 May 2018 в 20:39

Основное отличие заключается в том, что «adduser» создаст домашний каталог & amp; добавьте файлы скелета в тот каталог, где «useradd» не будет создавать домашний каталог & amp; скелетные файлы!

adduser try:

Adding user `try' ...
Adding new group `try' (1001) ...
Adding new user `try' (1001) with group `try' ...
Creating home directory `/home/try' ...
Copying files from `/etc/skel' ...
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
Changing the user information for try
Enter the new value, or press ENTER for the default
        Full Name []:
        Room Number []:
        Work Phone []:
        Home Phone []:
        Other []:
Is the information correct? [Y/n] y

useradd try1:

# ll /home/
total 20
drwxr-xr-x  5 root    root    4096 Oct 26 15:52 ./
drwxr-xr-x 22 root    root    4096 Oct 26 15:47 ../
drwx------  8 ashishk ashishk 4096 Oct 26 15:50 ashishk/
drwxr-xr-x  3 root    root    4096 Oct 14 13:02 .ecryptfs/
drwxr-xr-x  2 try     try     4096 Oct 26 15:52 try/
root@chef-workstation:/home/ashishk#
0
ответ дан 1 May 2018 в 20:39

Я также укажу, что adduser не всегда имеет -M опция и также не уважает эти --system флаг, который конкретно говорит :

Примечание, что useradd не создаст корневой каталог для такого пользователя, независимо от настройки по умолчанию в/etc/login.defs (CREATE_HOME). Необходимо указать-m опции, если Вы хотите, чтобы корневой каталог для системной учетной записи был создан.

, При попытке создать пользователя системы без , корневой каталог затем использует useradd --system -M.

0
ответ дан 1 May 2018 в 20:39

Еще одна пара различий, которые приводят к конкретным сценариям, где useradd может быть предпочтительнее.

  1. В некоторых новых дистрибутивах, включая Ubuntu 14.4, adduser запрашивает информацию, такую ​​как пароль и «gecos» (данные для команды finger). Это означает, что он может быть менее подходящим для вызова из скрипта (кредит: уже упоминалось в комментарии Wernight).

    Подсказки можно подавить, передав нулевые аргументы:

    adduser --disabled-password --gecos "" USER
    
  2. useradd позволяет передавать несколько дополнительных групп для добавления пользователя с помощью -G вариант. adduser, кажется, требует, чтобы вы вызывали команду один раз для добавления каждой группы.

0
ответ дан 1 May 2018 в 20:39

Всегда используйте adduser deluser при удалении пользователей) при создании новых пользователей из командной строки. (Если вы пишете сценарий, особенно если вы стремитесь к переносимости, вы можете вместо этого использовать утилиты низкого уровня - и adduser / deluser могут быть доступны не на всех дистрибутивах, например, на SuSE.)

Команды useradd, userdel и usermod являются утилитами низкого уровня, которые существуют по историческим причинам, в то время как adduser/deluser Do The Right Thing ™. (Я помню, что использовать, думая, что user* следует после adduser/deluser в алфавите и, следовательно, «хуже».)

Согласно соответствующим страницам (в Ubuntu 12.04 Precise Pangolin, то есть в Debian). производная система).

Справочная страница для adduser гласит:

(выделение добавлено.)

adduser и addgroup добавляют пользователей и группы в систему в соответствии с параметрами командной строки и информация о конфигурации в /etc/adduser.conf. Они являются более дружественными интерфейсами для инструментов низкого уровня, таких как программы useradd, groupadd и usermod , по умолчанию выбирая значения UID и GID, соответствующие политике Debian, создавая домашний каталог с конфигурацией скелета, выполняя пользовательский скрипт и другие функции. adduser и addgroup могут быть запущены в одном из пяти режимов:

Manpage для useradd говорит:

useradd - утилита низкого уровня для добавления пользователей. В Debian администраторы обычно должны использовать adduser(8) вместо этого.

См. также: В чем разница между «adduser» и «useradd»? (в SuperUser)

0
ответ дан 1 May 2018 в 20:39

useradd - это собственный двоичный файл, скомпилированный с системой. Но adduser - это скрипт на Perl, который использует useradd бинарный код в конце.

adduser более удобный и интерактивный, чем его серверная часть useradd. Там нет никакой разницы в предоставляемых функциях.

Источник: В чем разница между «adduser» и «useradd»?

0
ответ дан 1 May 2018 в 20:39

Самое большое другое между использованием adduser и useradd:

  • команда With adduser, домашняя папка для пользователя будет создана как значение по умолчанию.
  • команда With useradd, нет никакой домашней папки для пользователя.

, Таким образом, я предлагаю, чтобы Вы использовали adduser вместо того, чтобы использовать useradd.

0
ответ дан 23 November 2019 в 10:22

Другие вопросы по тегам:

Похожие вопросы: