Eu adicionei um novo usuário linux fazendo um
useradd -d /var/www/mywebsite.com -m newuser
passwd newuser
Testei a conta efetuando login no servidor com o seguinte comando
ssh [email protected]
Após o login, o shell não me permite preencher automaticamente a guia. Por exemplo, eu digitaria / var / www / myweb {tab}, mas o botão tab digita apenas um espaço no shell. Além disso, pressionar as teclas de seta para cima e para baixo não fornece os comandos shell mais recentes inseridos.
Tudo funciona perfeitamente quando eu ssh login como root. Mas isso não funciona quando eu ssh login como newuser.
Perdi alguma coisa?
obrigado
Na guia sistema, o preenchimento automático é adicionado por:
em .bashrc. O Bashrc não foi criado para novos usuários, pois não existe no / etc / skel. Crie .bashrc em / etc / skel com o código acima e ele funcionará para novos usuários. Em seguida, copie o arquivo para o novo usuário que você acabou de criar, para que funcione também para eles.
fonte
você verificou que seu novo usuário tem o mesmo shell que seu usuário root? Parece que seu usuário root bateu com algo parecido e seu novo usuário possui um ksh ou algo semelhante. Dê uma olhada no arquivo / etc / passwd ou na variável de ambiente SHELL.
fonte
Quando você adiciona um usuário,
useradd
não há shell especial adicionado.Você pode ver isso com o comando:
cat /etc/passwd
Você pode ver que o usuário
test1
possui um shell,/bin/bash
mas eletest3
não possui um shell adicionado.Para corrigir isso, você pode alterar o shell do usuário
test3
com este comando:Ou, quando você cria um novo usuário, pode usar a opção s:
fonte
A pasta /var/www/mywebsite.com existia antes de você criar a conta?
Você pode verificar se o conteúdo do / etc / skel é copiado para o diretório inicial /var/www/mywebsite.com?
A nova conta recebeu um shell diferente que não suporta o preenchimento automático?
fonte