Windows 10의 Bash는 아무 작업도 수행하지 않고 명령 프롬프트로 돌아갑니다.

Windows 10의 Bash는 아무 작업도 수행하지 않고 명령 프롬프트로 돌아갑니다.

바로 오늘 bash내 Windows 10 컴퓨터의 작동이 완전히 중지되었습니다. 명령 프롬프트에서 실행하면 bash약 1초 동안 일시 중지된 후 즉시 명령 프롬프트로 돌아갑니다.

여기에 이미지 설명을 입력하세요

이미 제거하고 다시 설치해 보았습니다."Linux용 Windows 하위 시스템" 에서Windows 기능 켜기 또는 끄기(여러 번) 재부팅과 함께(아래 참조):

여기에 이미지 설명을 입력하세요

다시 일 하기 위해 또 무엇을 할 수 있을까요 bash?

--- 추가 정보로 편집 ---

wsl.exe -l -v내 로컬 컴퓨터에 설치된 배포판 및 버전 표시 결과 :

여기에 이미지 설명을 입력하세요

추가 컨텍스트를 위해 UbuntuDebian이미지가 설치되었습니다.~ 후에bash오늘 이전에 명령 에 문제가 발생하기 시작했습니다 .

답변1

일부 삭제된 댓글이 있는 것 같지만 명확성을 위해 Microsoft는 bash.exe귀하가 링크한 해당 페이지에서 "역사적 명령"을 호출합니다. 나는 그것이 "더 이상 사용되지 않는다"고 생각하지 않습니다 (당신이 지적했듯이 더 이상 사용되지 않는 명령을 명시 적으로 나열하기 때문입니다). 그러나 "역사적"이란 IMHO는 "더 이상 사용되지 않음"보다 한 단계 앞선 것입니다. 또한,WSL/Windows Interop 설명서, " bash.exe되었습니다 "라고 말합니다로 대체 wsl.exe"(강조 추가).

어쨌든,추천실행 방법은 wsl.exe더 많은 옵션을 제공하고 더 강력하기 때문에 (현재) 확실히 명령을 통해서입니다. Alpine과 같은 배포판에는 bash셸도 포함되지 않을 수도 있으므로 어쨌든 약간 잘못된 이름입니다.

그 자체가 귀하의 문제일 가능성은 없습니다 bash.exe. wsl.exe복구하려면 의 기능이 필요할 것입니다 .

Ubuntu와 Debian을 설치했음을 확인합니다.~ 후에이 문제가 발생하기 시작했습니다. 이 말은 당신이 그랬다는 뜻인가요?오직그 전에 Docker Desktop을 실행 중이신가요? WSL의 일반적인 설치는 다음과 같습니다.

  • WSL 기능 자체 설치(WSL2 커널과 함께)
  • 배포판 설치
  • 그런 다음 Docker Desktop을 설치하십시오.

그러나 두 개의 인스턴스만 있는 경우에는 docker-desktop*다른 배포판을 설치한 적이 없는 것처럼 보입니다. 이는 별로 권장되지 않습니다. 인스턴스docker-desktop~이다실행 가능하지만 실제로는 Docker Desktop의 내부 사용(예: Docker 소켓 설정)을 위해 설계되었다고 생각합니다. 내가 틀렸을 수도 있습니다 ...

bash.exe더 이상 기본 컨테이너를 시작하지 않는 이유는 docker-desktop확실하지 않지만 bash 시작 구성과 관련이 있을 수 있습니다. 오류 메시지 없이 WSL이 종료되는 경우는 일반적으로 문제로 인한 것입니다.내부에인스턴스. WSL은 stderr을 다시 호스트로 리디렉션하지 않는 것 같습니다. 또는 아직 살펴보지 않은 리디렉션이 필요할 수도 있습니다.

무엇이 잘못되었는지 알아보려고내부에, 다음 중 하나로 시작해 보세요.

wsl -e bash --noprofile --norc # Launches without any startup profile
wsl -u root # Launches as root instead of the default user
wsl -e sh # Launches the dash shell instead of bash
wsl -u root -e sh # Same as above, but as root

이들 중 하나 이상이 작동하면 거기에서 시작 구성 문제 해결을 시작할 수 있습니다. 루트로 시작할 수 있으면 su yourusername사용자로 전환할 수 있습니다. 다음에서 시작하므로내부에WSL 인스턴스를 사용하면 Windows 명령 프롬프트에서 실행할 때 표시되지 않을 수 있는 모든 오류 메시지를 볼 수 있어야 합니다.

그러나 궁극적으로 다음을 통해 다른 배포판을 기본값으로 설정하는 것이 좋습니다.

wsl --set-default Ubuntu

여전히 다시 돌아갈 수 있습니다."도커 데스크탑"배포를 통해 필요한 파일을 복사합니다 wsl -d docker-desktop(오류 없이 실행하는 데 도움이 되는 경우 이전에 논의한 옵션을 추가하세요).

관련 정보