Windows의 Ubuntu / Linux Bash에서 비밀번호 재설정 Bash를 설치했지만 암호를 잊었습니다. 해결책을

Windows 10 (Microsoft에서 사용 가능)에 Linux Bash를 설치했지만 암호를 잊었습니다.

해결책을 찾았지만 복구 모드에 액세스하는 것과 같이 시스템 부팅 전에 무언가를 수행하는 제안 만 찾을 수 있지만이 우분투는 Windows 시스템 내의 응용 프로그램이기 때문에이 경우에는 작동하지 않습니다. 자체 부팅 프로세스

비밀번호를 어떻게 재설정합니까?



답변

  • bashLinux 사용자 이름을 실행 하고 메모 해 두십시오 (Windows 사용자 이름과 일치하지 않아도 됨). 사용자 이름을 어떻게 찾을 수 있습니까?를 참조하십시오 .
  • Ubuntu가 실행 중이면 Bash를 닫거나 다음 명령이 실패합니다.
  • Windows 관리자 명령 프롬프트 ( Super+ X, A)에서 기본 사용자를 root로 변경하십시오.

    ubuntu config --default-user root
    

WSL에서 Ubuntu 18.04를 사용하는 경우 명령이로 변경되었습니다 ubuntu1804.

ubuntu1804 config --default-user root
  • 이제 Windows의 Ubuntu에서 Bash는 암호를 묻지 않고 루트로 로그인합니다.
  • passwdBash에서 command를 사용 하여 사용자 비밀번호 (비밀번호를 재설정하려는 사용자)를 변경하십시오.

    passwd your_username
    
  • Windows 명령 프롬프트에서 기본 사용자를 다시 일반 사용자로 변경하십시오.

    ubuntu config --default-user  your_username
    

WSL에서 Ubuntu 18.04를 사용하는 경우 명령이로 변경되었습니다 ubuntu1804.

ubuntu1804 config --default-user your_username

전체 비디오를 시청하여 암호를 복구하십시오 Windows Subsystem Linux
https://youtu.be/dTR232yvDCE

참고 1 : 비디오에 사용 된 서브 시스템은 Ubuntu가 아니라 Kali Linux입니다. 따라서 명령의 차이입니다.

참고 2 : Anniversary Update와 함께 제공된 원래 Ubuntu 하위 시스템을 계속 사용중인 경우 lxrun 명령을 사용하십시오 . Microsoft Store를 통해 배포 된 하위 시스템 버전으로 업그레이드하는 것이 좋습니다.)


답변

위의 작동하지 않았습니다. 기본 사용자를 변경 한 후에도 Bash는 항상 내 사용자와 함께 열립니다.

대신에 나는 이것을했다.

  1. 이 파일을 편집하십시오 (메모장 또는 메모장 ++에서).

    %localappdata%\lxss\rootfs\etc\shadow
    
  2. 예를 들어 일반 사용자를 찾으십시오.

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

    해시 부분을 제거하십시오 (부분 아래).

    $jsdjksadgfhsdf.saflsdf.sadf.safd
    

    당신은 다른 해시를 보게 될 것입니다-희망합니다 🙂 그래서 다음과 같이 보일 것입니다 :

    user1::17299:0:99999:7:::
    
  3. 파일을 저장하십시오

  4. 루트 권한으로 Bash를 다시 시작하고 비밀번호를 설정하십시오.

     sudo bash
     passwd <your-user-name>
    

    이제 이전 비밀번호를 입력하지 않고도 새 비밀번호를 설정할 수 있습니다.


답변

편집 상점 설치 WSL 배포가있는 경우 더 이상 작동하지 않습니다.

Tmu의 답변에 추가하기 위해 프로세스를 자동화 하는 Powershell 스크립트 ( gist )가 있습니다 (현재 기본 사용자 이름 자동 감지 포함).

# 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


답변

2019-09-05 현재 기존 답변보다 훨씬 간단한 프로세스가 있습니다 (대부분 너무 오래되어 전혀 작동하지 않습니다).

Windows 관리자 명령 프롬프트 ( Super+ X, A)에서 다음을 사용하여 Ubuntu 루트 계정에 로그인 할 수 있습니다

wsl --user root

그런 다음 평소와 같이 비밀번호를 변경하십시오.

passwd

대화식으로 새 비밀번호를 요청합니다 (두 번).


답변

루트 암호를 잃어버린 분들을 위해 저에게 효과적 인 것은 Windows Store를 통해 Ubuntu 18.04 LTS로 업데이트하는 것입니다. Windows 스토어에는 두 가지 옵션이 있습니다.

  1. 우분투
  2. 우분투 18.04 LTS ( 이 중 하나를 선택하십시오 )

현재 버전을 확인하려면 사용자로 다음을 실행하십시오.

명령 프롬프트에서 다음을 입력하십시오.

cat /etc/*release

출력에 다음과 같은 줄이 나타납니다.

DISTRIB_RELEASE=16.01

이 메시지가 표시되면 반드시 18.04로 업데이트하면 새 UNIX 자격 증명을 만들라는 메시지가 나타납니다.


답변