WSL에서 Ubuntu 버전 업그레이드

전제 조건



루트가 아닌 사용자 이름을 사용하는 경우 whoami 명령(WSL 측)을 실행하여 사용자 이름을 알아야 합니다.



또한 PowerShell(Windows 측)에서 wsl --list --verbose 명령을 실행하여 배포판 이름과 WSL 버전을 알아야 합니다.



사용자 이름: equiman , Linux 배포: Ubuntu 를 알고 있고 WSL 2 버전을 사용하고 있음을 확인하면...

지원



All next steps need to be done on PowerShell (Windows side).



먼저 WSL을 사용하는 모든 터미널을 닫은 다음 wsl --shutdown 명령을 실행하여 데이터 손상을 방지하기 위해 종료해야 합니다.

다음으로 Ubuntu Linux 배포판에서 백업을 생성하겠습니다.

mkdir D:\backup
wsl --export Ubuntu D:\backup\ubuntu.tar


진행률 표시기가 보이지 않더라도 걱정하지 마십시오. 가지고 있는 데이터의 양에 따라 시간이 걸릴 수 있습니다. 휴식을 취하는 것이 좋을 수도 있습니다.



다시 시작



백업이 완료되면 명령wsl을 실행하고 다음 명령을 실행하여 WSL을 다시 시작합니다.

All next step need to be done on WSL (Linux side).



패키지 소스를 업데이트하고 오래된 설치된 애플리케이션을 업데이트합니다.

sudo apt update
sudo apt list --upgradable
sudo apt upgrade -y


이 업데이트 관리자 핵심 패키지를 설치하는 것이 중요합니다. 이렇게 하면 시스템이 사용 가능한 새 LTS가 있다고 생각하고 전체 업그레이드를 수행할 수 있습니다.

sudo apt install update-manager-core


다음을 사용하여 새 버전을 설치하십시오.

sudo do-release-upgrade



LTS 버전(권장)을 사용 중이고 사용 가능한 새 LTS 버전이 없는 경우 이 메시지가 표시됩니다.

Checking for a new Ubuntu release
There is no development version of an LTS available.
To upgrade to the latest non-LTS development release 
set Prompt=normal in /etc/update-manager/release-upgrades.


⚠ LTS 버전을 사용하지 않는 것과 관련이 없는 경우 Prompt 파일에서 normal/etc/update-manager/release-upgrades로 변경하고 이전 명령을 다시 실행할 수 있습니다.


또 다른 대안은 명령과 함께 추가된 -d 플래그를 사용하는 것입니다.

sudo do-release-upgrade -d


이는 최신 LTS로의 업그레이드가 LTS 릴리스 연도의 7월까지 직접 사용할 수 없기 때문에 수행됩니다. 그러나 -d 플래그는 명령을 강제로 최신 개발 릴리스로 업그레이드하고 LTS 릴리스를 개발 릴리스로 간주하기도 합니다.


그런 다음 다운로드해야 하는 모든 패키지를 수락하면 대부분 네트워크 및 디스크 속도에 따라 시간이 걸립니다.

마지막으로 명령을 실행합니다sudo reboot.

다시 덮다



프로세스에서 문제가 발생하더라도 걱정하지 마십시오. 백업에서 이전 WSL 디스크를 복원할 수 있습니다.

Didn't You skip the backup step? right?





All next steps need to be done on PowerShell (Windows side).



먼저 Linux 배포판 등록을 취소해야 합니다.

⚠️ Beware that everything that was stored on the WSL drive will be lost, and the command won't ask for a confirmation, so make sure you backup everything you need first!



wsl --unregister Ubuntu


그런 다음 원하는 경로에서 다시 가져옵니다. 예를 들어 D: 디스크를 사용하겠습니다.

mkdir D:\WSL
wsl --import Ubuntu D:\WSL\ D:\backup\ubuntu.tar


기본적으로 Ubuntu는 루트를 기본 사용자로 사용하며 사용자로 전환하려면 이러한 명령을 실행해야 합니다.

cd $env:USERPROFILE\AppData\Local\Microsoft\WindowsApps
ubuntu config --default-user equiman


Ensure replacing equiman with yours.



WSL 실행wsl 명령을 다시 시작하면 완료됩니다.


자주하는 질문



답변: 터미널을 다시 시작하면 다음 오류 메시지가 나타납니다.

grep: /proc/sys/fs/binfmt_misc/WSLInterop: No such file or directory


솔루션: Ubuntu를 업데이트한 후 명령sudo reboot 실행이 누락되었습니다. 그래도 작동하지 않으면 wsl --shutdown를 실행한 다음 wsl를 실행하여 WSL을 다시 시작합니다.


그게 다야!
행복한 코딩 🖖

좋은 웹페이지 즐겨찾기