Como alterar o nome de usuário do administrador?

8

Digitei meu nome acidentalmente quando criei a conta de administrador. Embora eu tenha conseguido alterar o nome de usuário na tela de login, não consigo renomear o nome /home/oldusernamepara /home/newusername. Eu tentei a maioria dos tutoriais online e falhou.

O código que tentei foi o seguinte:

usermod -l newusername -m -d /home/newusername oldusername

Mas a saída é:

cannot lock /etc/passwd; try again later.

Como posso corrigir o problema e alterar a pasta para newusername e esperar que todos os aplicativos funcionem como antes?

Fazlan
fonte
Você está executando esse comando como root?
Seth
não em uma conta de convidado ... o nome que estou tentando alterar é a conta raiz, eu acho.
Fazlan
root e administrador são diferentes? Eu não
sabia know
Ei, eu não entendo você tem acesso à conta de administrador / root?
hingev
1
Você não pode usar a conta de convidado para executar tarefas administrativas.
user68186

Respostas:

8

Entre com o seu currentusername, abra um terminal e digite:

sudo passwd root

Digite uma senha para a conta root e faça logout, pressione Ctrl+ Alt+ F1para abrir um console de texto, faça o login como root (nome de usuário: root, senha: "a que você digitou acima") e execute:

usermod -l newusername -m -d /home/newusername currentusername
exit

Pressione Ctrl+ Alt+ F7para retornar ao console gráfico e faça o login como newusername.

Para alterar o nome de exibição do usuário (aquele que aparece na tela de login), vá para Configurações do sistema -> Contas de usuário e clique no nome de exibição no lado direito da caixa de diálogo.

insira a descrição da imagem aqui

Eric Carvalho
fonte
diz que o usuário oldname está logado no momento
Fazlan
Resposta atualizada.
Eric Carvalho
Eu segui suas instruções e, de fato, o nome do usuário foi alterado. Se eu procurar no Nautilus em Computador -> Página Inicial, vejo apenas o novo nome de usuário. O que ainda é estranho é que, quando eu inicializo de um desligamento, o nome do usuário original ainda aparece no estágio de logon. Onde o nome original ainda está armazenado?
Ilan
@Ilan resposta atualizada.
Eric Carvalho
2

Você precisa fazer isso no modo de recuperação.

Reinicialize, escolha o modo de recuperação e, em seguida, vá para um console raiz e digite o comando lá. Em seguida, reinicie novamente como normal.

RolandiXor
fonte
1

A primeira solução simples que você pode fazer é criar um novo usuário com o nome de usuário correto desejado e adicioná-lo ao grupo de administradores: / etc / sudoers

Por outro lado, você pode fazer isso com seu antigo nome de usuário (eu testei no fedora):

# usermod -l new-username old-unername
Boubakr
fonte
1
Você pode precisar adicionar sudoantes dessa linha sudo usermod -l new-username old-unername, como , no Ubuntu.
user68186
O nome de usuário foi alterado, mas o nome da pasta ainda é o antigo
Fazlan
#: significa que você tem as permissões de root e $: significa que você é apenas um usuário simples.
Boubakr 27/08/13
1

Eu criaria uma nova conta e copiaria todos os seus arquivos. Este é provavelmente o método mais à prova de idiotas.

Aaron
fonte
1

Alterar nomes de usuário causará problemas inevitáveis. Muitos programas tentam ler e gravar dados do diretório antigo que não está mais lá. Criar uma nova conta e copiar todas as pastas antigas parece uma boa ideia. Eu acredito que existem outros problemas.

Mas isso responde à pergunta em que os comentários anteriores não me ajudaram.

Simplesmente efetuar login novamente como root pode não funcionar porque meu nome de usuário antigo tinha processos ativos. Então, como os outros disseram e reiniciei no modo de recuperação. Mas então recebi a mensagem de erro mencionada no pôster original. Como descoberto aqui, isso ocorre porque a unidade é somente leitura no modo de recuperação; portanto, você precisa fazer a leitura / gravação.

Correção de resumo:

sudo passwd root # assign a password
reboot  # into recovery mode and log in as root

Mantenha a tecla Shift pressionada durante a inicialização se o menu grub não estiver definido para exibição. Efetue login como root e acesse o shell.

mount -o remount,rw /  # make the disk writable
usermod -l <newname> -d /home/<newname> -m <oldname>
passwd -l root   #  deactivate the root password
reboot

Seu nome de usuário antigo será o nome de login, mas ainda permitirá a entrada. Para corrigi-lo, edite o arquivo com o comando abaixo e procure a linha que tem seu nome de usuário novo e antigo na mesma linha e altere o antigo para o novo:

sudo nano /etc/passwd

Como outros já disseram em outros lugares, espere problemas ao alterar seu nome de usuário, pois muitos programas tentarão fazer coisas como localizar ou armazenar dados de aplicativos na pasta do nome de usuário antigo, que não existe mais.

Scott Roberts
fonte