Я не помню, чтобы изменил 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
Вам нужно будет добавить строку
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 -м имя пользователя это работает как на centos, так и на ubuntu.