Як додати користувача без дому?


79

Я хочу створити нового користувача для запуску служби в системі, але не хочу мати /homeта інші файли конфігурації для неї. Начебто є користувач для postgres, але у нього немає жодного /homeкаталогу.


Відповіді:


105

За замовчуванням команда useradd не створює домашніх каталогів, але для демона я рекомендую вам скористатись системною опцією та змінити оболонку на неіснуючу, щоб ніхто не міг увійти в обліковий запис (наприклад, в ssh):

sudo useradd -r -s /bin/false USERNAME

Ви можете переглядати всі параметри man useraddі, man groupaddякщо ви хочете створити групу і для користувача.


4
useradd -r створює системного користувача, а не лише користувача без homedir.
fromnaboo

2
зауважте, useradd -r також створює відповідні групи.

9
Я вважаю, що найкращою практикою є використання /sbin/nologinв якості оболонки для входу, хоча використання /bin/falseне призведе до жодних відмінностей.
М'яв

51

Спробуйте adduser --system --no-create-home USERNAMEабо просто погляньте на те, man adduserщо стверджує, що є " дружнішим переднім кінцем до інструментів низького рівня, таких як useradd ... ".


4
Я фактично не помітив, що це adduserпроти useradd, і виконання команди useraddз цими параметрами не призвело до помилок, але створив обліковий запис з оболонкою /bin/bash. "Остерігайтеся покупця".
isapir

14

Мені потрібно було щось подібне - новий користувач без привілеїв для входу та прив’язаний до системної служби. Однак відповідь Клаусі створює користувача з первинною групою як «ніггруп», що було не дуже бажано.

adduser --system --no-create-home --group USERNAMEстворює системну групу з тим самим іменем, що і користувач, і асоціює її з користувачем як первинну групу. Потім це можна перевірити за допомогою команди groups USERNAMEабо id USERNAME.


2

Щоб додати користувача без домашнього каталогу, команди,

useradd -M username

або

useradd --no-create-home username

або

adduser -M username

або

adduser --no-create-home username

1

спробуйте цю команду:

sudo useradd vivek

Це створить користувача, не створюючи домашню папку на /home/vivek


1
Ні, доки ви ввійдете в систему за допомогою цього облікового запису, /home/vivekзаповіт буде створено автоматично.
М'яв
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.