Sistemas operacionais semelhantes ao Unix desacoplam o nome de usuário da identidade do usuário, portanto, você pode alterar o nome com segurança sem afetar o ID. Todas as permissões, arquivos, etc. estão vinculados à sua identidade (uid), não ao seu nome de usuário.
Para gerenciar todos os aspectos do banco de dados do usuário, use a ferramenta usermod
.
Para alterar o nome de usuário (provavelmente é melhor fazer isso sem estar logado):
sudo usermod -l newUsername oldUsername
Isso, no entanto, não renomeia a pasta base.
Para alterar a pasta inicial, use
sudo usermod -d /home/newHomeDir -m newUsername
depois que você alterou o nome de usuário.
Por exemplo, você pode fazer logout, acessar um console ( Ctrl + Alt + F1 ) e sudo su -
para se tornar verdadeiro root (em oposição a sudo -s
, em que $ HOME ainda é / home / yourname.) Talvez você também tenha que matar alguns processos ainda em execução desse usuário primeiro. Para fazer isso, digite ps -u username
, procure o PID correspondente e mate-os por kill PID-number
.
Atualização: conforme combinado, alguns arquivos podem fazer referência ao seu antigo diretório inicial. Você pode manter um link simbólico para compatibilidade com versões anteriores, e g ln -s /home/newname /home/oldname
ou você pode alterar o conteúdo do arquivo com sed -i.bak 's/*oldname*/*newname*/g' *list of files*
Ele cria um backup para cada arquivo com uma extensão .bak.
Algumas informações adicionais para usuários não tão experientes como eu:
Como eu só tenho UMA conta de usuário (administrador), ela não me deixa alterar o nome de usuário ("você já está logado" foi a resposta em TTY1 ( Ctrl + Alt + F1 ) Para contornar isto:
-
Faça login com suas credenciais antigas e adicione um novo usuário, por exemplo, "temporário" em TTY1:
sudo adduser temporary
defina a senha.
-
Permite que o usuário temporário execute o sudo adicionando o usuário ao grupo sudo:
sudo adduser temporary sudo
- Efetue logout com o comando
exit
. - Retornar para tty1: faça login com a conta e senha de usuário 'temporária'. Altere seu nome de usuário e pasta conforme mencionado acima.
exit
(até você obter o prompt de login) - Volte para TTY7 ( Ctrl + Alt + F7 ) para fazer o login na tela da GUI / normal e veja se isso funciona.
-
Excluir usuário e pasta temporários:
sudo deluser temporary sudo rm -r /home/temporary