Что делает adduser для этого useradd?

В дополнение к более широкому пользовательскому интерфейсу, системы на базе Debian также содержат дополнительную команду adduser которая обеспечивает интерфейс более высокого уровня для добавления пользователей и некоторых связанных с ними задач. На других сайтах SE есть различные вопросы / ответы, в которых подробно описаны основные различия между этими командами, например:

  • ServerFault – В чем разница между «useradd» и «adduser»?
  • Superuser – В чем разница между «adduser» и «useradd»?
  • Спросите Ubuntu – В чем разница между adduser и useradd?

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

  1. Что делает adduser этого useradd ?
  2. Какие команды мне нужно использовать для получения эквивалентных результатов?

3 Solutions collect form web for “Что делает adduser для этого useradd?”

Во-первых, соответствующие фрагменты справочной страницы подчеркивают различия между двумя командами и дают некоторые указания на то, что происходит. Для adduser :

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

Затем для useradd :

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

Дальнейшее исследование adduser показывает, что это perl-скрипт, обеспечивающий интерфейс высокого уровня и, следовательно, предлагающий некоторые из функций следующих команд:

  • useradd
  • groupadd
  • passwd – используется для добавления / изменения паролей пользователей.
  • gpasswd – используется для добавления / изменения групповых паролей.
  • usermod – используется для изменения различных параметров, связанных с пользователем.
  • chfn – используется для добавления / изменения дополнительной информации, хранящейся у пользователя.
  • chage – используется для изменения информации об истечении срока действия пароля.
  • edquota – используется для изменения квот использования диска.

Базовый запуск команды adduser выглядит следующим образом:

 adduser username 

Эта простая команда сделает несколько вещей:

  1. Создайте имя пользователя с именем username .
  2. Создайте домашний каталог пользователя (по умолчанию /home/username и скопируйте файлы из /etc/skel в него.
  3. Создайте группу с тем же именем, что и пользователь, и поместите в нее пользователя.
  4. Запросить пароль для пользователя.
  5. Запросить дополнительную информацию о пользователе.

Программа useradd может выполнить большинство из этого, но по умолчанию она не делает этого и требует дополнительных опций. Некоторая информация требует больше команд:

 useradd -m -U username passwd username chfn username 

Обратите внимание, что adduser гарантирует, что созданные UID и GID соответствуют политике Debian . Создание нормальных пользователей с useradd выглядит нормально, если UID_MIN / UID_MAX в /etc/login.defs соответствует политике Debian. Проблема состоит в том, что Debian указывает конкретный диапазон для UID системных пользователей, который, как представляется, поддерживается только в /etc/adduser.conf , поэтому наивно добавляя пользователя системы с useradd и не указывая идентификатор UID / GUID в правильном диапазоне, потенциал для серьезных проблем.

Другим распространенным использованием для adduser является упрощение процесса добавления пользователя в группу. Здесь следующая команда:

 adduser username newgroup 

заменяет более сложную команду usermod которой требуются группы, к которым пользователь уже является членом (и который вы хотите, чтобы пользователь оставался членом):

 usermod -G all,other,groups,user,is,in,newgroup 

Однако один недостаток использования adduser заключается в том, что вы можете указывать только одну группу за раз.

Команда adduser по умолчанию также создает каталог / home / user для пользователей системы, которые вы не можете сделать с помощью команды useradd . useradd только добавляет домашние каталоги для обычных пользователей, а не для пользователей системы.

Системный администратор может делать все с помощью useradd, которое может быть выполнено с помощью adduser. Здесь было указано, что вы не можете создать каталог / home / user для пользователей системы с помощью useradd, и вы абсолютно можете, изменив файлы, содержащиеся в файле / etc / skel. / etc / skel содержит набор файлов, изначально используемых для заполнения домашнего каталога нового пользователя.

  • Если удалять группы, удаляются ли пользователи из этих групп?
  • Анализ файлов CSV для добавления пользователей
  • Где и как информация о группе пользователей хранится в Ubuntu?
  • Настройка входа в виртуальную машину вместо локального входа
  • useradd: невозможно создать каталог
  • Как добавить «системный» локальный пользователь, такой как mysql или tomcat?
  • Поиск сценария, который может цитировать ssh в список ips и выполнять useradd, домашний каталог, создание и пользователя в файл sudoers
  • Solaris 10, команда useradd
  • Ошибка при добавлении пользователя
  • удалить пользователя с уникальным идентификатором
  • Должен ли я использовать useradd или adduser?
  • Linux и Unix - лучшая ОС в мире.