Acabei de criar um novo usuário no meu sistema usando useradd -d /home/users/john -m john
(Usando o Ubuntu 11.04). Isso funcionou bem, mas quando mudei para john
, meu bash não está totalmente funcional. Ou seja, ele não possui preenchimento automático, não posso usá-las com teclas de seta (por exemplo, UP para obter o último comando) e, em vez de mostrar meu diretório atual, ele apenas mostra $
. Carreguei um, .bashrc
mas isso parece ser completamente ignorado. O que poderia causar isso?
PD: esse usuário já está trabalhando no sistema e prefiro não removê-lo e adicioná-lo novamente, se possível.
su
ousu -
?Respostas:
Provavelmente a casca de João não é
/bin/bash
, mas/bin/sh
. No Ubuntu, é um shell destinado a executar scripts rapidamente, sem recursos interativos sofisticados, como a edição de linha de comando. Verifique a última coluna degrep john /etc/passwd
ougetent passwd john
. Você pode querer executarchsh -s /bin/bash john
para alterar o shell do usuário.fonte
/bin/sh
é link simbólico paradash
isto é/bin/dash
, por isso, em última análise shell do usuário é/bin/dash
.você pode pular entre conchas digitando o nome do shell
e na próxima linha você receberá o seguinte prompt
que é o shell bash. Sua tecla de seta para cima e o preenchimento automático funcionarão agora
fonte