[OS/Linux] WSL2 Ubuntu 20.04 LTS 구성 (Window 10)
1. WSL 설치
WLS (Windows Subsystem for Linux)
- 윈도우에서 ELF64 바이너리를 실행할 수 있도록 하는 기술
- 쉽게 설명하면 윈도우에서 사용가능한 리눅스 환경
- 여러 리눅스 배포판을 지원 (Ubuntu, Debian, Alpine, Fedora, …)
WSL 사용 설정: Windows 기능 활성화
DISM (Deployment Image Servicing and Management)
: 윈도우 이미지와 관련된 조작을 위한 커맨드라인 명령어
PowerShell 관리자 권한으로 실행
-
윈도우즈 서버시스템 리눅스 기능 활성화
PS C:\WINDOWS\system32> dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
-
가상머신 플랫폼 기능 활성화 : WSL2에 필요한 기능
PS C:\WINDOWS\system32> dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
-
실행이 안돼서 다시 설치
PS C:\WINDOWS\system32> wsl --install 설치 중: 가상 머신 플랫폼 가상 머신 플랫폼이(가) 설치되었습니다. 설치 중: Linux용 Windows 하위 시스템 Linux용 Windows 하위 시스템이(가) 설치되었습니다. 다운로드 중: WSL 커널 설치 중: WSL 커널 WSL 커널이(가) 설치되었습니다. 다운로드 중: Ubuntu 요청한 작업이 잘 실행되었습니다. 시스템을 다시 시작하면 변경 사항이 적용됩니다.
-
Status 확인
PS C:\WINDOWS\system32> Get-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux FeatureName : Microsoft-Windows-Subsystem-Linux DisplayName : Linux용 Windows 하위 시스템 Description : Windows에서 네이티브 사용자 모드 Linux 셸 및 도구를 실행하기 위한 서비스와 환경을 제공합니다. RestartRequired : Possible State : Enabled CustomProperties : mum2:ServerComponent\Description : Windows에서 네이티브 사용자 모 드 Linux 셸 및 도구를 실행하기 위한 서비스와 환경을 제공합니다. mum2:ServerComponent\DisplayName : Linux용 Windows 하위 시스템 mum2:ServerComponent\Id : 1033 mum2:ServerComponent\Type : Feature mum2:ServerComponent\UniqueName : Microsoft-Windows-Subsystem-Linu x mum2:ServerComponent\mum2:Deploys\mum2:Update\Name : Microsoft-Win dows-Subsystem-Linux
-
설치 버전 확인
PS C:\Users\User> wsl --list -v NAME STATE VERSION * Ubuntu-20.04 Running 1
WSL2 Linux 커널 업데이트
-
x64 머신용 최신 WSL2 Linux 커널 업데이트 패키지
wsl_update_x64.msi 파일을 다운로드 받아 설치 진행
-
powershell에서 진행
PS C:\Windows\system32> wsl --set-default-version 2 WSL 2와의 주요 차이점에 대한 자세한 내용은 https://aka.ms/wsl2를 참조하세요 작업을 완료했습니다.
PS C:\Windows\system32> wsl --status 기본 배포: Ubuntu-20.04 기본 버전: 2 Linux용 Windows 하위 시스템이 마지막으로 2022-06-21 에 업데이트되었습니다.Linux용 Windows 하위 시스템 커널을 'wsl --update'로 수동으로 업데이트할 수 있지만, 시스템 설정으로 인해 자동 업데이트를 수행할 수 없습니다. 자동 커널 업데이트를 받으려면 Windows 업데이트 설정: ‘Windows를 업데이트할 때 다른 Microsoft 제품에 대한 업데이트 받기 ’를 사용하도록 설정하세요. 자세한 내용을 보려면 https://aka.ms/wsl2kernel을 방문하세요. 커널 버전: 5.10.16 PS C:\Windows\system32> wsl --update 업데이트 확인 중... 업데이트 다운로드 중... 업데이트 설치 중... 이 변경 사항은 다음 WSL 전체 다시 시작에 적용됩니다. 강제로 다시 시작하려면 'wsl --shutdown'을 실행하세요. 커널 버전: 5.10.102.1
Ubuntu 20.04.4 LTS
- Microsoft Store에서
Ubuntu 20.04.4 LTS
설치 후 실행- username 및 password 설정
Installing, this may take a few minutes... Please create a default UNIX user account. The username does not need to match your Windows username. For more information visit: https://aka.ms/wslusers Enter new UNIX username: gain New password: Retype new password: passwd: password updated successfully Installation successful! To run a command as administrator (user "root"), use "sudo <command>". See "man sudo_root" for details. Welcome to Ubuntu 20.04.4 LTS (GNU/Linux 5.10.16.3-microsoft-standard-WSL2 x86_64) * Documentation: https://help.ubuntu.com * Management: https://landscape.canonical.com * Support: https://ubuntu.com/advantage System information as of Sun Apr 24 13:36:45 KST 2022 System load: 0.0 Processes: 11 Usage of /: 0.5% of 250.98GB Users logged in: 0 Memory usage: 1% IPv4 address for eth0: 172.24.176.228 Swap usage: 0% 1 update can be applied immediately. To see these additional updates run: apt list --upgradable The list of available updates is more than a week old. To check for new updates run: sudo apt update This message is shown once a day. To disable it please create the /home/gain/.hushlogin file.
-
root 패스워드 변경
gain@LAPTOP-NGE5O25S:/mnt/c/WINDOWS/system32$ sudo passwd root [sudo] password for gain: New password: Retype new password: passwd: password updated successfully gain@LAPTOP-NGE5O25S:/mnt/c/WINDOWS/system32$ su - Password: root@LAPTOP-NGE5O25S:~#
+) 시행착오
처음 설치가 안돼서 몇날 며칠을 허비했다.
근데 알고 보니 용량 부족 에러 ㅋㅋ…
우연히 외장SSD를 연결한 채로 진행하던 중에 알게 되었다.
외장에 다른 파티션 연결되면 System mem space 에도 파티션 충원된다는….
C:\Windows\Logs\CBS\CBS.log
확인해 보니 아래와 같은 로그 발견0x800F0922
로그 내용 :[HRESULT = 0x800f0922 - CBS_E_INSTALLERS_FAILED]
- The Windows Update error
0x800F0922
can occur due to one of the following reasons.- App Readiness service is disabled.
- Performance counters are damaged.
- The System Reserved partition’s free space is less than 15 MB.
- Microsoft Windows Update 서버 연결 실패
- Windows 10 업그레이드의 .Net 프레임 워크 설치 부분 실패
- 참고로
C:\WINDOWS\System32\Winevt\Logs\Application.evtx
여기서 시스템 로그 확인 가능
2. WSL & VSCode 연동
참고 링크 ) WSL & WSL2 설치와 VSCode 연동하기
- VSCode에서
Remote - WSL
Extension Install -
wsl > 원하는 폴더로 이동 >
code .
실행gain@LAPTOP-NGE5O25S:~$ code . Installing VS Code Server for x64 (dfd34e8260c270da74b5c2d86d61aee4b6d56977) Downloading: 100% Unpacking: 100% Unpacked 2341 files and folders to /home/gain/.vscode-server/bin/dfd34e8260c270da74b5c2d86d61aee4b6d56977.
- VSCode > Terminal > New Terminal
- VSCode > 좌측 메뉴 > Remote Explorer
Leave a comment