Ubuntu - histórico de comandos não disponível para usuário recém-criado

Ubuntu - histórico de comandos não disponível para usuário recém-criado

Eu criei um novo usuário

useradd -d / -G www-data dsweb
sudo passwd dsweb
usermod -aG sudo dsweb

Efetuei login como este usuário com sucesso, mas quando tentei pressionar a tecla para cima, ele me mostrou algo parecido ^[[Acom os comandos que digitei há poucos momentos. Se fizer login como usuário root, tudo funcionará bem.

Como faço para que isso funcione?

Responder1

Os gitdesenvolvedores falam deencanamento(nível baixo) eporcelanacomandos (alto nível). useraddé encanamento. Você deveria ter usado adduser(=porcelana) em vez disso.

Deuseraddpágina de manual:

adição de usuárioé um utilitário de baixo nível para adicionar usuários. No Debian, os administradores geralmente devem usar adduser(8).

Ao usar useraddvocê precisa especificar literalmente tudo, como um diretório inicial e um shell de login. adduserpor outro lado, tem padrões razoáveis ​​para eles. A experiência que você fez se deve ao fato de ter /como diretório inicial (sem permissões de gravação lá) e/ou um shell erradoadduser sem login, como @steeldriver observou em um comentário. lida com tudo isso. Por isso:

adduser dsweb           # create user with default settings (like $HOME, $SHELL)
adduser dsweb www-data  # add him to group www-data
adduser dsweb sudo      # ... and sudo

E sim, é uma verdadeira bagunça termos dois comandos addusere useradd. eu mesmosempretem que procurar qual é qual.

Para remover seu dswebusuário criado anteriormente, use deluser dsweb. Fazernãoforneça o --remove-homeswitch porque você o criou /como $HOME e não deseja que ele seja removido.

Responder2

Emitir este comando da conta do usuário me ajudou: chsh -s /bin/bash.

Você precisa fazer login novamente após emitir o comando.

Graças a esta respostaaqui.

informação relacionada