Por exemplo, se eu executasse o comando adduser test
, o .bashrc é criado automaticamente após a criação do diretório inicial do usuário test
? Se não for criado na criação do usuário, em que condições é criado?
Além disso, se eu adicionar um arquivo .bashrc ao diretório inicial de um usuário, ele será substituído pelo sistema operacional?
Desde já, obrigado.
command-line
bash
bashrc
Michael
fonte
fonte
Respostas:
Na maioria dos casos, os arquivos iniciais do usuário (inclusive
.bashrc
) são criados quando o usuário é criado. São cópias dos arquivos armazenados no diretório 'esquelético', com o nome/etc/skel
. Existem dois comandos principais:useradd
é o comando de backend, se você o usar diretamente (sem nenhuma opção), apenas um usuário do sistema (e seu grupo) será criado:useradd
criará um diretório inicial e o preencherá com uma cópia/etc/skel
se a-m
--create-home
opção for fornecida. Obrigado por este comentário para @jwodder.A opção
-s
--shell
alterará o nome do shell de login do novo usuário. Não importa qual seja o shell de login do novo usuário, todo o conteúdo do diretório 'esquelético'/etc/skel
será preenchido no diretório inicial do novo usuário.Um diretório 'esquelético' diferente é definido com a
-k
--create-home
opçãoO arquivo de configuração deste comando é
/etc/default/useradd
.adduser
é um front-end amigável e interativouseradd
. Este comando copiará os arquivos do diretório/etc/skel
do usuário$HOME
por padrão:O arquivo de configuração deste comando é
/etc/adduser.conf
.O valor padrão para shell de login do novo usuário é deteminated pela variável
DSHELL=
. Pode ser especificado também através da opção--shell
. Não importa qual seja o shell de login do novo usuário, todo o conteúdo do diretório 'esquelético'/etc/skel
será preenchido no diretório inicial do novo usuário.A
SKEL=
variável neste arquivo especifica o diretório padrão que contém os arquivos de usuário 'esqueléticos'.A opção
--no-create-home
forçará o comandoadduser
a não criar um diretório inicial do usuário, respectivamente, o conteúdo do diretório 'esquelético' não será copiado.Se chamado com um argumento de não opção e a
--system
opção,adduser
irá adicionar um usuário do sistema ... Um diretório inicial é criado pelas mesmas regras que para usuários normais. O novo usuário do sistema terá o shell/bin/false
(a menos que seja substituído pela--shell
opção) e os logins desabilitados. Arquivos de configuração esquelética não são copiados. ... a partir da página de manual.Além disso, quando o usuário é criado com qualquer ferramenta da GUI como
User Accounts
, o resultado é idêntico ao do comandoadduser
.Referências:
Qual é a diferença entre adduser e useradd?
Qual é a diferença entre "adduser" e "useradd"?
O diretório inicial não está sendo criado
AddUsersHowto - Ubuntu Documentation Community Wiki
Qual é o comando * nix para exibir o shell de login padrão de um usuário?
Comando terminal para listar shells disponíveis
fonte
useradd
também criará um diretório inicial e o preencherá com uma cópia/etc/skel
se a-m
opção for fornecida.useradd
no comando; isso deveria seradduser
?adduser
, não é?