Como faço para alterar meu nome de usuário?

Algum tempo atrás, quando instalei o Ubuntu, escolhi um nome de usuário bastante estúpido para minha conta que não quero mais usar.

Como faço para alterar isso (incluindo o nome do meu diretório inicial e o nome no terminal) sem perder as configurações dos aplicativos?
Como mantenho permissões e minhas chaves para várias autenticações (por exemplo, e-mail, SSH, GPG e muito mais)?
Quais configurações poderiam se perder se eu alterasse meu nome de usuário?

Os sistemas operacionais semelhantes ao Unix dissociam 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, você usa o usermod ferramenta.

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 inicial.

Para alterar a pasta inicial, use

sudo usermod -d /home/newHomeDir -m newUsername

depois de alterar o nome de usuário.

Por exemplo, você pode sair, cair para um console (Ctrl+Alt+F1), e sudo su - para se tornar verdadeira raiz (em oposição a sudo -s, onde $HOME ainda é / home / yourname.) Talvez você também tenha que matar alguns processos ainda em execução deste usuário primeiro. Para fazer isso, digite ps -u username, procure o PID correspondente e mate-os por kill PID-number.

Atualizar: como organizar mencionado, 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, por exemplo 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 um .extensão bak.

Algumas informações adicionais para usuários não tão experientes como eu:
Como eu tenho apenas uma conta de usuário( Administrador), não me deixaria alterar o nome de usuário ("você já está logado" foi a resposta no TTY1 (Ctrl+Alt+F1). Para contornar isso:

  1. Faça Login com suas credenciais antigas e adicione um novo usuário, por exemplo, "temporário" no TTY1:

    sudo adduser temporary

    defina a senha.

  2. Permitir que o usuário temporário execute sudo adicionando o usuário ao grupo sudo:

    sudo adduser temporary sudo
  3. Sair com o comando exit.
  4. Voltar para tty1: Faça o Login com a conta de usuário e senha' temporária'. Altere seu nome de usuário e pasta conforme mencionado acima. exit (até que você obtenha o prompt de login)
  5. Voltar para TTY7 (Ctrl+Alt+F7) para fazer login na GUI / tela normal da área de trabalho e ver se isso funciona.
  6. Excluir usuário temporário e pasta:

    sudo deluser temporarysudo rm -r /home/temporary

Para juntar tudo:

  1. Saia da sessão ou reinicie o computador para voltar à tela inicial.

  2. Na tela inicial, vá para um modo de console tty. Premir Ctrl+Alt+F1 (em algumas revisões do Ubuntu, isso pode ser Ctrl+Alt+F2 Sim)

  3. Faça login usando seu nome de usuário e senha.

  4. Defina uma senha para a conta" root & quot;.

     sudo passwd root
  5. Sair.

     exit
  6. Faça login usando a conta" root & quot; e a senha que você definiu anteriormente.

  7. Altere o nome de usuário e a pasta inicial para o novo nome desejado.

     usermod -l <newname> -d /home/<newname> -m <oldname>
  8. Altere o nome do grupo para o novo nome desejado.

     groupmod -n <newgroup> <oldgroup>
  9. Bloquear a conta" root & quot;.

     passwd -l root
  10. Se você estava usando o ecrytfs (diretório inicial criptografado). Monte seu diretório criptografado usando ecryptfs-recover-private e editar <mountpoint>/.ecryptfs/Private.mnt para refletir seu novo diretório inicial.

  11. Sair.

    exit
  12. Premir Ctrl+Alt+F7 para voltar à tela de login do Ubuntu graphics mode (em algumas revisões do Ubuntu, isso pode ser Ctrl+Alt+F1).

E agora você pode fazer login usando seu novo nome de usuário.

Reinicie no modo de recuperação e vá para o shell do prompt de raiz ("drop to root shell prompt")

Primeiro remonte a raiz

mount -o remount,rw /

Para alterar o nome de usuário e o nome da pasta inicial,

usermod -l <newname> -d /home/<newname> -m <oldname>

Para o nome do grupo,

groupmod -n <newgroup> <oldgroup>

No Ubuntu 13.10, 14.04, 16.04:

  1. Clique no ícone" Configurações do sistema".
  2. Clique em "contas de usuário".
  3. Sua conta de administrador deve ser exibida.
  4. Clique no botão" Desbloquear".
  5. Digite sua senha de usuário conforme solicitado para permitir alterações em sua conta.
  6. Uma vez desbloqueado, você pode clicar no seu nome de usuário antigo que deseja alterar e digitar um novo nome de usuário para substituí-lo.
  7. Depois de digitar o novo nome, clique no botão "Bloquear" para tornar a alteração permanente.
  8. Reinicie O Ubuntu.

Receber usermod: can't change /etc/password basta executar os seguintes comandos:

No console de recuperação raiz, execute:

mount -o remount,rw /

Voltar:

usermod -l <newname> -d /home/<newname> -m <oldname>