.bashrc и .bash_profile созданы не с помощью adduser, а с помощью useradd [duplicate]

Я добавляю пользователя с именем 'test' на свой сервер Ubuntu 18.04. Когда я добавляю пользователя с помощью adduser , например:

sudo adduser --system --group test --shell /bin/bash

все идет хорошо, я могу войти в систему нормально, но .bashrc, .bash_logout и .bash_profile по умолчанию не помещаются в домашний каталог. Тогда как, когда я добавил пользователя с помощью useradd следующим образом:

sudo useradd -m test -s /bin/bash

пользователь добавляется так же, как adduser , и у меня есть предварительно настроенные .bash_profile, .bashrc и .bash_logout в домашний реж.

Может кто-нибудь объяснить, почему есть разница? Мне не хватает какого-либо флага при использовании adduser ?

1
задан 17 December 2018 в 22:40

1 ответ

Это поведение adduser происходит из-за опции --system. При использовании этой опции Вы, создают пользователя системы, с UID под 1 000. От man adduser:

Если названо с одним аргументом неопции и --system опция, adduser добавит пользователь системы... Корневой каталог создается теми же правилами что касается обычных пользователей. У нового пользователя системы будет оболочка /bin/false (если не переопределено с --shell опция), и имеют отключенные логины. Скелетные конфигурационные файлы не копируются.

Скелетные конфигурационные файлы являются этими файлами, расположенными в /etc/skel, это копируется, делают корневой каталог пользователя, когда новый обычный пользователь добавляется к системе.

Если Вы хотите добавить обычного пользователя, по умолчанию, действительно необходимо добавить любые опции к adduser, просто использование:

sudo adduser username

С другой стороны, если Вы хотите создать полностью определенного обычного пользователя adduser необходимо добавить немного дополнительных опций, например -m создать корневой каталог пользователя и скопировать содержание /etc/skel.

1
ответ дан 7 December 2019 в 15:09

Другие вопросы по тегам:

Похожие вопросы: