Как заставить Ubuntu useradd вести себя как Centos useradd?
Я не помню, чтобы менял CentOS useradd, чтобы получить такое поведение.
useradd
в CentOS создает домашний каталог пользователя со всеми обычными файлами (например, .bashrc
).
Я модифицировал /etc/default/useradd
чтобы это выглядело как CentOS (просто нужно раскомментировать), за исключением того, что в Ubuntu SHELL=/bin/sh
вместо SHELL=/bin/bash
Как заставить useradd действовать так же, как в CentOS? Есть ли какая-либо существующая опция для изменения? Или я должен просто добавить псевдоним /etc/bash.bashrc
?
Разница: в Ubuntu useradd не создает домашний каталог.
как корень:
$ useradd test
$ cd ~test
-su: cd: /home/test: No such file or directory
2 ответа
Вам нужно будет добавить строку
CREATE_HOME yes
в /etc/login.defs
Со страницы руководства Ubuntu useradd
-m, --create-home
...
По умолчанию, если эта опция не указана и CREATE_HOME не включен, домашние каталоги не создаются.
Хотя справочная страница CentOS более полезна, как говорится
... useradd создаст домашний каталог, если для CREATE_HOME в /etc/login.defs не установлено значение no.
При создании домашнего каталога useradd фактически копирует каталог /etc/skel. Если вы хотите, чтобы некоторые параметры уже были добавлены в новые домашние папки, это так же просто, как добавить файлы в / etc / skel и в следующий раз, когда вы добавите пользователя, эти файлы будут в домашнем каталоге.
редактировать
Используйте useradd -m username, это работает как для centos, так и для ubuntu.