Например, если я должен был выполнить команду adduser test
, .bashrc, созданный автоматически после создания корневого каталога для пользователя test
? Если это не создается после пользовательского создания, при каких условиях это создается?
Кроме того, если я добавлю .bashrc файл к корневому каталогу пользователя, то он будет перезаписан ОС?
Заранее спасибо.
В большинстве случаев, файлы исходного пользователя (включая .bashrc
) создаются, когда пользователь создается. Они - копии файлов, хранивших в 'скелетный' каталог, названный /etc/skel
. Существует две основных команды:
useradd
команда бэкенда, если Вы использующий ее непосредственно (без каких-либо опций) просто пользователь системы (и ее группа) будете созданы:
$ sudo useradd new-user
$ ls -la /home/new-user/
ls: cannot access '/home/new-user/': No such file or directory
useradd
создаст корневой каталог и заполнит его с копией /etc/skel
если -m
--create-home
опция предоставляется. Спасибо за этот комментарий к @jwodder.
Опция -s
--shell
изменит имя оболочки входа в систему нового пользователя. Какова оболочка входа в систему нового пользователя, все содержание 'скелетного' каталога /etc/skel
будет заполнен в корневой каталог нового пользователя.
Другой 'скелетный' холод каталога быть определенным с -k
--create-home
опция.
Конфигурационный файл этой команды /etc/default/useradd
.
adduser
удобный для пользователя и интерактивный фронтенд useradd
. Эта команда скопирует файлы с /etc/skel
пользователю $HOME
каталог по умолчанию:
$ sudo adduser new-user
Adding user `new-user' ...
Adding new group `new-user' (1002) ...
Adding new user `new-user' (1002) with group `new-user' ...
Creating home directory `/home/new-user' ...
Copying files from `/etc/skel' ...
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
Changing the user information for new-user
Enter the new value, or press ENTER for the default
Full Name []: New User
Room Number []:
Work Phone []:
Home Phone []:
Other []:
Is the information correct? [Y/n]
$ ls -a /home/new-user/
. .. .bash_logout .bashrc .config examples.desktop .profile .Xdefaults
Конфигурационный файл этой команды /etc/adduser.conf
.
Значение по умолчанию для оболочки входа в систему нового пользователя является deteminated переменной DSHELL=
. Это могло быть указано также через опцию --shell
. Какова оболочка входа в систему нового пользователя, все содержание 'скелетного' каталога /etc/skel
будет заполнен в корневой каталог нового пользователя.
SKEL=
переменная в этом файле указывает каталог по умолчанию, содержащий 'скелетные' пользовательские файлы.
Опция --no-create-home
вызовет команду adduser
чтобы не сделать создают пользовательский корневой каталог, соответственно содержание 'скелетного' каталога не будет скопировано.
Если названо с одним аргументом неопции и --system
опция, adduser
добавит пользователь системы... Корневой каталог создается теми же правилами что касается обычных пользователей. У нового пользователя системы будет оболочка /bin/false
(если не переопределено с --shell
опция), и имеют отключенные логины. Скелетные конфигурационные файлы не копируются.... со страницы руководства.
Кроме того, когда пользователь создается с любым инструментом GUI как User Accounts
, результат идентичен результату команды adduser
.
Ссылки: