WSL2 Ubuntu20.04를 WSL1로 되돌릴 수있는 엄청난 방법이있었습니다.

4560 단어 WSL2WSL

개요



WSL1의 Ubuntu 20.04를 마이그레이션해 보았지만, 다음과 같은 문제가 있었던 것으로 돌아왔다.
  • VS-Code의 Paste Image를 사용할 수 없음
    WSL의 README.md에 이미지를 붙여 넣을 수 없습니다. Windows 클립보드의 이미지를 Linux의 클립보드로 변환할 수 없습니다.

  • 결과



    꾸준한 방법밖에 없었다.
    그래서 WSL2로 마이그레이션할 때는 export하고 신규 작성한 환경에서 시험해 보는 것이 좋다고 생각합니다.
  • 실패 ... WSL2 이미지를 export하여 WSL1로 가져오기
    → 가져 오기가 성공했지만 시작할 수 없습니다
  • 성공 ... WSL2의 파일을 백업하고 WSL2 이미지를 지우고 WSL1 이미지를 다시 만들고 파일 및 패키지를 복원합니다.

    절차: WSL2로 마이그레이션할 때 내보내지 않은 경우



    참고 정도입니다.
    실패한 절차에서 복구했기 때문에 실제로 시도하지 않았습니다.
  • WSL을 열고있는 Terminal, VS-Code 등의 편집기, Explorer 등을 닫는다
  • wsl --export Ubuntu-20.04 ./Ubuntu.tar 한다
  • wsl --import Ubuntu-20.04-WSL2 .\Ubuntu-20.04-WSL2 Ubuntu.tar --version 2
  • WSL1에서 Ubuntu-20.04 다시 넣기
  • Ubuntu-20.04-WSL2 에서 파일을 tar로 굳게 하고 마이그레이션

  • 참고: 실패한 단계



  • 상태 확인
    PS C:\wsl_migration> wsl -l --verbose
      NAME            STATE           VERSION
    * Ubuntu-20.04    Running         2
    PS C:\wsl_migration> 
    

  • 터미널 및 VS-Code 닫기
    닫은 후 Stopped가 되어 있는지 확인
    PS C:\wsl_migration> wsl -l --verbose
      NAME            STATE           VERSION
    * Ubuntu-20.04    Stopped         2
    PS C:\wsl_migration>
    

  • 내보내기
    PS C:\wsl_migration> wsl --export Ubuntu-20.04 ./Ubuntu.tar
      NAME            STATE           VERSION
    * Ubuntu-20.04    Stopped         2
    PS C:\wsl_migration>
    

  • Distribution 등록 취소
    PS C:\wsl_migration> wsl --unregister Ubuntu-20.04
    登録を解除しています...
    PS C:\wsl_migration> wsl -l --verbose
    Linux 用 Windows サブシステムには、ディストリビューションがインストールされていません。
    ディストリビューションは Microsoft Store にアクセスしてインストー 
    ルすることができます:
    https://aka.ms/wslstore
    PS C:\wsl_migration>
    

  • 관리자가 PowerShell을 시작하고 WSL의 기본 버전 지정을 1로 설정
    PS C:\WINDOWS\system32> wsl --set-default-version 1
    PS C:\WINDOWS\system32>
    

  • Ubuntu-20.04 다시 배포
    Windows 메뉴에 링크가 있으면 그것을 클릭해도 되고, Store로부터 도입해도 좋다.


    도입 중
    PS C:\wsl_migration> wsl -l --verbose
      NAME            STATE           VERSION
      Ubuntu-20.04    Installing      1
    PS C:\wsl_migration>
    

    도입 완료
    PS C:\wsl_migration> wsl -l --verbose
      NAME            STATE           VERSION
    * Ubuntu-20.04    Running         1
    PS C:\wsl_migration>
    

  • 가져오기wsl --import <被らないNAME> <LocalState(rootfsとか)の展開先> <exportしたtarファイルのパス> --version 1 같은 형식.
    PS C:\wsl_migration> wsl --import Ubuntu-20.04-WSL1 C:\Users\RoboDev\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu20.04onWindows Ubuntu.tar --version 1
    PS C:\wsl_migration> wsl -l --verbose
      NAME                 STATE           VERSION
    * Ubuntu-20.04-WSL1    Stopped         1
    PS C:\wsl_migration>
    

  • 부팅
    다음 명령이나 Windows Terminal 등으로 시작합니다. 실패했습니다. 실패했습니다. 실패했습니다.
    PS C:\wsl_migration> wsl -d Ubuntu-20.04-WSL1
    サーバーの実行に失敗しました
    PS C:\wsl_migration>
    

  • 관리자로 PowerShell을 시작하고 복구wsl -l --verbose 명령이 굳어지고 unregister도 오류가 종료되므로 복구합니다.
    PS C:\WINDOWS\system32> Disable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
    

    재부팅이 요청되었으므로 재부팅 후 다음 명령을 실행합니다.
    PS C:\WINDOWS\system32> dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
    

    앱과 기능으로 우분투가 남아 있다면 지워 둡니다.
    PS C:\WINDOWS\system32> Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
    
    wsl --unregister Ubuntu-20.04-WSL1 어딘가에 지워 둔다.

  • 참고


  • Easily move WSL distributions between Windows 10 machines with import and export! - Scott Hanselman
  • WSL에서 동일한 배포 환경을 여러 개 설치 및 관리 - Qiita
  • 좋은 웹페이지 즐겨찾기