Cursos

[Noticias][grids]

Como redefinir sua senha esquecida do Linux no WSL




 Esqueça a senha de usuário do subsistema Windows para Linux e você ficará travado em um loop. Para redefinir sua senha … você precisa saber sua senha. Veja como escapar desse ciclo.

Bloqueado em um loop infinito

Um ouroboros é um símbolo antigo que representa uma serpente ou dragão que está comendo sua própria cauda. Se você esquecer a senha de usuário do subsistema do Windows para Linux (WSL), você se verá preso em um loop igualmente desagradável e interminável.

Na primeira vez que você iniciar uma distribuição Linux recém-instalada sob o WSL, será solicitado que você forneça um nome de usuário e uma senha. Esta é a sua senha de usuário. Em uma instalação normal do Linux, sua senha é solicitada sempre que você faz login. No entanto, com o WSL, seu usuário é conectado automaticamente e você é levado diretamente para o prompt de comando do Linux.

Como você não precisa usar sua senha para fazer login, é fácil que ela saia da sua mente. Especialmente se você não usa o WSL com frequência.

Isso pode não parecer um revés porque, afinal, você se conectou automaticamente. O problema se torna aparente quando você tenta acessar arquivos que não estão em seu diretório inicial, instalar software ou executar atividades administrativas, como criar e gerenciar outros usuários.

Publicidade

Para fazer essas coisas, você precisa usar o comando sudo. No Linux, você prova que está autorizado a usar o comando sudo fornecendo sua senha.

A resposta óbvia é redefinir sua senha. Você esqueceu, então defina um novo, certo? Essa é uma ótima ideia. Mas o comando passwd requer sua senha atual para provar que você é você. É uma medida de segurança sensata. O comando passwd requer prova de que você é o proprietário da conta de usuário da qual está alterando a senha antes de permitir que você altere a senha.

Se você usar sudo com o comando passwd, poderá alterar a senha de qualquer usuário, independentemente de saber sua senha ou não. Isso parece uma solução, mas ainda estamos frustrados porque, para usar o comando sudo, você precisa saber sua senha. Isso está começando a parecer um ouroboros e um Catch-22 combinados.

Existem maneiras de escapar desse quebra-cabeça lógico circular, é claro. Aqui estão dois que você pode experimentar.

Reinicializando com o executável do Linux

Mostraremos duas maneiras de fazer isso. Uma forma é um pouco mais envolvente do que a outra, mas funcionou todas as vezes que tentamos. A outra maneira é um método um pouco mais simples, mas tivemos resultados mistos com ele.

Precisamos identificar o arquivo executável para a distribuição Linux que você está usando com o WSL. No Windows 10, ele &’ estará neste diretório:

 c: \ usuário \ < nome de usuário > \ AppData \ Local \ Microsoft \ WindowsApps 

Publicidade

Substitua “ < nome de usuário > ” com o nome de sua conta de usuário do Windows. Em um prompt de comando do Windows, mude o diretório para este local e digite “ dir. ”

 dir 

O executável deve ser fácil de identificar. Nesta máquina de teste, instalamos o Ubuntu 20.04 e o “ ubuntu2004. exe ” arquivo é evidentemente o que estamos procurando.

Iniciaremos uma sessão do Ubuntu, mas diremos a ele para fazer login como o usuário root em vez da conta de usuário que você criou quando instalou a distribuição do Linux.

 configuração do ubuntu2004 - root do usuário padrão 

Uma sessão do Ubuntu é iniciada e o prompt de comando é apresentado em uma janela de terminal. O prompt está em texto branco e o caractere final é um hash “ # ” nem um dólar “ $ ” assinar. Isso nos diz que o usuário é o usuário root e não um usuário normal. O nome de usuário também indica “ root. ”

Se mais provas forem necessárias, podemos usar o comando whoami.

 whoami 

Então, definitivamente estamos logados como root. Podemos prosseguir e redefinir a senha do usuário padrão. O comando passwd solicitará a nova senha e, em seguida, solicitará que você a insira uma segunda vez. Nenhum deles irá ecoar na tela. A senha que estamos alterando pertence ao usuário “ dave. ”

 passwd dave 

Publicidade

Lembre-se de qual é a nova senha. Sairemos da sessão do Ubuntu e retornaremos ao prompt de comando do Windows.

 sair 

Para testar nossa nova senha, precisamos iniciar uma nova sessão do Ubuntu e redefinir a conta do usuário normal como a conta padrão.

 ubuntu2004 config --default-user dave 

A sessão é iniciada e nós estamos novamente logados como usuários normais, com nosso prompt de comando colorido usual.

 

Para provar que nossa senha foi alterada, usaremos o comando sudo em um comando. O comando que usamos não importa, é o fato de que estamos usando o sudo que é importante. Usaremos o comando ps para listar alguns processos.

 sudo ps -e 

Você será solicitado a fornecer a senha que criou ao usar o comando passwd como root. A senha deve ser aceita e o comando deve ser iniciado para você.

Reinicializando com o comando wsl

Podemos realizar a mesma coisa usando o comando WSL. Em nossos testes, obtivemos resultados inconsistentes, mas você pode ter mais sorte do que nós. Este é um método mais curto, então você pode querer tentar primeiro e se não funcionar para você, tente o método mais longo que mostramos acima.

Em um prompt de comando do Windows, digite:

 wsl - root do usuário 

Publicidade

Uma sessão Linux será iniciada. Você estará logado como root. Você pode verificar isso usando o comando whoami.

 whoami 

Para redefinir a senha esquecida do usuário, use o comando passwd e forneça o nome da conta do usuário.

 passwd dave 

Você será solicitado a fornecer a nova senha duas vezes. E deve ser isso.

Se você sair desta sessão e iniciar uma nova sessão, você será conectado novamente como a conta padrão regular e terá uma nova senha.

Pare de roer o rabo

Uma ou ambas as técnicas funcionarão para você, e você ficará livre do ciclo interminável de não ser capaz de redefinir sua senha porque não sabe sua senha.