alterar o diretório inicial do usuário não tem efeito

4

Quando eu alterno do usuário raiz para um usuário (criado automaticamente ao instalar o git-auto-deploy ) com

sudo -u git-auto-deploy /bin/bash eu sempre recebo este erro:

bash: /root/.bashrc: Permission denied

Eu criei um diretório inicial do usuário e coloquei um .profile nele com o seguinte (também executei source ):

export HOME=/srv/users/git-auto-deploy

O comando finger git-auto-deploy fornece a seguinte saída:

Login: git-auto-deploy                  Name:
Directory: /srv/users/git-auto-deploy   Shell: /bin/bash
Never logged in.

Quando conectado como este usuário, o comando env ainda lista o diretório incorreto:

HOME=/root

O que estou fazendo de errado?

    
por montrealist 29.12.2016 / 16:41

1 resposta

16

Use sudo -s -H -u git-auto-deploy .

sudo por si só não altera o valor de HOME , mas o faz quando -H é usado. É por isso que você está recebendo o erro "Permissão negada". O usuário não pode acessar o diretório pessoal do root (e não deve poder fazer isso).

A opção -s torna sudo iniciar qualquer shell configurado como o shell de login para o usuário especificado (ou seja, não é necessário executar explicitamente /bin/bash ).

    
por 29.12.2016 / 16:47