Lendo o planet do Ubuntu, me deparei com um post do Christer Edwards sobre como usar um shell root corretamente. Existem situações onde um simples sudo não resolve, como em:
sudo echo “modulo” > /etc/modules
Nesse caso, embora o comando echo rode como root, quem tenta escrever o arquivo é o bash, que continua rodando como usuário normal. Em um caso desses é possível usar o tee para contornar o problema, mas nessas situações eu prefiro logar como root.
Para isso eu estava usando sudo su, ou sudo su -, o que, realmente, não é muito elegante. No post citado, sugere-se o seguinte:
sudo -i
Essa opção (simulate initial login) irá invocar o shell especificado no passwd para a conta root, inicializando o ambiente como em um login inicial (você vai para a pasta ~). Não sei exatamente como isso difere do sudo su -. Se alguém souber, por favor me diga.
Outra opção, equivalente a um sudo su, que não faz o login completo é essa:
sudo -s
Que irá simplesmente rodar, como root, o shell especificado pela variável de ambiente SHELL, preservando o ambiente atual.
Assinar:
Postar comentários (Atom)
Nenhum comentário:
Postar um comentário