Redefinir a senha no bash do Linux no Windows

119

Instalei o Linux Bash no Windows 10 (que está disponível na atualização recente da Microsoft), mas há muito tempo que esqueci minha senha agora.

Eu verifiquei muitos sites e tudo o que ele diz é passar pela opção de inicialização, onde não funcionará nesse caso, já que este é o sistema Windows.

Como posso redefinir minha senha?

    
por Maheedhar K V 14.05.2016 / 00:19

3 respostas

224

  • Execute bash e anote seu nome de usuário do Linux (isso não precisa corresponder ao seu nome de usuário do Windows), consulte Como posso encontrar o meu nome de usuário?
  • Feche o Bash no Ubuntu, se estiver em execução (ou o próximo comando falhará).
  • No prompt de comando do administrador do Windows ( Super + X , A ) altere o usuário padrão para root:

    ubuntu config --default-user root
    

Se você estiver usando o Ubuntu 18.04 no WSL, o comando foi alterado para ubuntu1804 , então

ubuntu1804 config --default-user root
  • Agora Bash no Ubuntu no Windows registra você como root sem solicitar senha
  • Use o comando passwd no Bash para alterar a senha do usuário (o usuário cuja senha você deseja redefinir):

    passwd your_username
    
  • Altere o usuário padrão de volta para o seu usuário normal no prompt de comando do Windows

    ubuntu config --default-user  your_username
    

Se você estiver usando o Ubuntu 18.04 no WSL, o comando foi alterado para ubuntu1804 , então

ubuntu1804 config --default-user your_username

Assista ao vídeo completo para recuperar sua senha Windows Subsystem Linux link

Nota 1: O subsistema usado no vídeo não é o Ubuntu, mas o Kali Linux. Daí a diferença no comando.

Nota 2: Se você ainda estiver usando o subsistema original do Ubuntu que veio com o Anniversary Update, use o comando lxrun . A atualização para a versão do subsistema distribuída por meio do Microsoft Store é recomendada.

    
por Tmu 05.08.2016 / 12:02
21

Para adicionar à resposta de Tmu, aqui está um script do Powershell ( gist ) que automatiza o processo (incluindo a detecção automática da corrente nome de usuário padrão)

# Resets the password for the default LXSS / WSL bash user
$lxssUsername = (Get-ItemProperty HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Lxss).DefaultUsername
lxrun /setdefaultuser root
bash -c "passwd $lxssUsername"
lxrun /setdefaultuser $lxssUsername
    
por Richard Szalay 07.06.2017 / 01:52
18

O acima não funcionou. Mesmo depois de mudar o usuário padrão, o bash sempre abria com meu usuário. Então, ao invés disso, funcionou:

  1. edita o arquivo (no notepad ou no notepad ++):

    %localappdata%\lxss\rootfs\etc\shadow
    
  2. encontre seu usuário normal, por exemplo:

    user1:$jsdjksadgfhsdf.saflsdf.sadf.safd:17299:0:99999:7:::
    

    e simplesmente remova a parte hash (parte abaixo)

    $jsdjksadgfhsdf.saflsdf.sadf.safd
    

    você verá um hash diferente - espero :), assim deve ser:

    user1::17299:0:99999:7:::
    
  3. Salve o arquivo

  4. começar a bater novamente
  5. sudo bash
  6. senha isso pedirá sua nova senha sem exigir uma prévia.
por Vladimir Jirasek 13.05.2017 / 17:59