Яка різниця між командами adduserта useraddUbuntu?
Яка різниця між командами adduserта useraddUbuntu?
Відповіді:
useraddє нативним двійковим файлом, складеним із системою. Але,adduserце сценарій perl, який використовуєuseraddбінарний в бек-енді.
adduserє більш зручним для користувача та інтерактивним, ніж його бек-ендuseradd. Немає різниці в наданих функціях.
-mопцією створить домашній каталог.
adduser(8)є більш зручним і створює та налаштовує користувача за замовчуванням так, як ви очікуєте. І useradd(8)виконайте лише те, що ви просите, так що ви хочете створити домашній каталог, ви повинні сказати йому, щоб створити його для вас.
Завжди використовуйтеadduser (і deluserпри видаленні користувачів) під час створення нових користувачів з командного рядка. (Якщо ви пишете сценарій, особливо якщо ви прагнете переносимості, можливо, замість цього скористаєтесь утилітами низького рівня - і adduser/ deluserможе бути недоступним у всіх дистрибутивах, наприклад, на SuSE.)
В useradd, userdelі usermodкоманди низькорівневих утиліт , які існують з історичних причин, в той час як adduser/deluserDo The Right Thing ™. (Я пам’ятаю, що використовувати, думаючи, що user*йде за adduser/deluserалфавітом, і тому «гірше».)
Відповідно до відповідних посібників (на Ubuntu 12.04 Precision Pangolin, тобто похідна система Debian).
adduserкаже:(Наголос додано.)
adduserіaddgroupдодавати користувачів та групи до системи відповідно до параметрів командного рядка та інформації про конфігурацію в/etc/adduser.conf. Вони більш дружелюбним передні кінці з інструментами низького рівня , якuseradd,groupaddіusermodпрограмою , за замовчуванням вибирає політику Debian UID і сумісний значення GID, створюючи домашній каталог з скелетної конфігурацією, запуск користувацького сценарію, і інші можливості.adduserіaddgroupможе працювати в одному з п’яти режимів:
useraddкаже:
useradd- це утиліта низького рівня для додавання користувачів. У Debian зазвичайadduser(8)замість цього використовуються адміністратори .
Дивіться також: Яка різниця між "adduser" і "useradd"? (на SuperUser)
adduser ": Для автоматизованих сценаріїв я вважаю за краще, useraddоскільки він завжди є, неінтерактивний та не дистрофічний .
adduserна openSUSE, і його там немає. (13.2)
locate adduserсистему SuSE 11 на роботі, я виявив, що там розміщено adduserвкладку, але немає бінарних файлів (і ні deluserманпаж, ні команда).
/usr/sbin/adduser -> useradd
adduser: додайте користувача з повним профілем та інформацією (пропуск, квота, дозвіл тощо)
useradd: додайте користувача лише з його іменем (якщо ви хочете додати тимчасового користувача лише з іменем, інша інформація не потрібна)
Ще одна різниця, яка призводить до конкретних сценаріїв, де Useradd може бути кращим.
У деяких нових дистрибутивах, включаючи Ubuntu 14.4, adduser запропонує інформацію, наприклад, пароль та "gecos" (дані для пальцевої команди). Це означає, що він може бути менш придатним для дзвінка зі сценарію (кредит: вже згадувалося в коментарі Wernight).
Підказки можна придушити, передаючи нульові аргументи:
adduser --disabled-password --gecos "" USER
useraddдозволяє передавати кілька додаткових груп, щоб додати користувача за допомогою -Gопції. adduserСхоже, потрібно вимагати виклику команди один раз для кожної групи, яку потрібно додати.
adduserдружніше тим, що він налаштовує домашні папки облікового запису та інші налаштування (наприклад, автоматично завантажує статистику системи та повідомлення при вході в систему), тоді як useraddпросто створює користувача.
Основна відмінність полягає в тому, що "adduser" створить домашній каталог і додасть файли скелетів до тієї директорії, де "useradd" не створить будь-якого домашнього каталогу та файлів скелета!
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
# 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#
Я також зазначу, що adduserне завжди є така -Mможливість, а також не поважає --systemпрапор, який конкретно говорить :
Зауважте, що useradd не створить домашній каталог для такого користувача, незалежно від налаштування за замовчуванням у /etc/login.defs (CREATE_HOME). Ви повинні вказати параметри -m, якщо ви хочете створити домашній каталог для створення облікового запису системи.
Якщо ви намагаєтесь створити користувача системи без домашнього каталогу, тоді використовуйте useradd --system -M.