O novo usuário não pode criar arquivos em seu diretório pessoal

1

Eu criei um novo usuário golden no Linux executando o comando adduser .

Depois disso, estou tentando gerar chaves ssh para esse novo usuário e toda vez que recebo permissão negada erro:

golden@machineA:~$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/golden/.ssh/id_rsa):
Could not create directory '/home/golden/.ssh': Permission denied

Alguma ideia do que está errado?

Atualização:

golden@machineA:~$ pwd
/home/golden
golden@machineA:~$ ls -l
total 0
golden@machineA:~$ ls -lrth
total 0
golden@machineA:~$ ls -lrtha
total 20K
-rw-r--r-- 1 10001 10001  675 May 10 11:54 .profile
-rw-r--r-- 1 10001 10001 3.5K May 10 11:54 .bashrc
drwxr-xr-x 2 10001 10001 4.0K May 10 11:54 .
-rw-r--r-- 1 10001 10001  220 May 10 11:54 .bash_logout
drwxr-xr-x 8 root  root  4.0K May 10 15:44 ..

Update2:

golden@machineA:~$ ls -ld /home/golden
drwxr-xr-x 2 10001 10001 4096 May 10 11:54 /home/golden
golden@machineA:~$ id golden
uid=1001(golden) gid=1002(golden) groups=1002(golden)
    
por user5447339 11.05.2017 / 01:02

1 resposta

3

O proprietário de /home/golden é usuário 10001, não usuário golden . Normalmente, quando você cria uma conta, isso cria um diretório inicial para o usuário, e esse diretório inicial, é claro, pertenceria ao usuário.

A razão pela qual isso não aconteceu aqui é provavelmente que /home/golden já existia. Dependendo das opções que você passou para adduser , ele pode ou não ter informado sobre isso. O motivo pelo qual /home/golden existia é presumivelmente porque costumava haver uma conta chamada golden com o ID do usuário 10001 e, em seguida, essa conta foi removida sem excluir o diretório inicial. Agora há uma conta de usuário chamada golden novamente, mas com um ID de usuário diferente.

Supondo que isso foi o que aconteceu e o usuário 10001 não existe mais, você pode alterar a propriedade de /home/golden para a nova conta. É claro que isso permite que o novo usuário veja os arquivos que o antigo usuário deixou para trás, mas no seu caso não há arquivos interessantes de qualquer maneira.

sudo chown -R golden:golden /home/golden

Se você excluir uma conta, remova o diretório inicial ( deluser --remove-home ) ou renomeie-o ( mv /home/golden /home/golden.1001.archived ).

    
por 11.05.2017 / 01:31