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 ^[[A
com 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 git
desenvolvedores falam deencanamento(nível baixo) eporcelanacomandos (alto nível).
useradd
é encanamento. Você deveria ter usado adduser
(=porcelana) em vez disso.
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 useradd
você precisa especificar literalmente tudo, como um diretório inicial e um shell de login. adduser
por 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 adduser
e useradd
. eu mesmosempretem que procurar qual é qual.
Para remover seu dsweb
usuário criado anteriormente, use deluser dsweb
. Fazernãoforneça o --remove-home
switch 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.