Windows Subsystem for Linux(WSL)

Windows 상에서 가상 머신 구동없이 Linux를 사용할 수 있게 해주는 Windows 공식 기능이다. Linux를 에뮬레이팅해서 Linux 프로그램을 실행시키는 것이 아니라 Windows 상에서 곧바로1) 실행하기 때문에 VM보다 리소스는 훨씬 적게 소모하면서 더 쾌적하게 사용할 수 있다. 다만 아직까지 완성되지 않은 기능으로 VM보다 불안정한 경우도 종종 있으며, VM에서처럼 실제 기기(Physical Device)를 VM 내에서 사용(Passthrough)하는 기능이 없어 Linux VM을 대체하기에는 아직 제약 사항이 많다. 최근 WSL2라는 새로운 버전의 WSL이 나왔고 이것이 최신버전 Windows 10에서 사용할 수 있도록 되었으나 WSL2는 WSL1과 달리 VirtualBox와 거의 비슷한 기능을 하는 Hyper-V 상에서 작동하기 때문에, WSL2를 설정하여 Hyper-V를 활성화하면 VT-x를 사용할 수 없어 VirtualBox의 사용이 불가능해진다2). 또한 WSL2는 그 자체로 하나의 VM이기 때문에 IP설정, GUI 설정 등에 제약이 매우 많다. 따라서 이 문서에서는 WSL2에 대해서는 다루지 않는다.

Windows 10 1903(빌드 18362) 이상을 구동중인 64비트 PC여야 한다.3) WSL 설치 자체에 PC 사양의 제약조건은 없지만, 아래 2.3.에서 배포판을 설치하기 위해서는 C드라이브(Windows가 부팅되는 파티션)에 최소 15GB이상의 여유공간이 있는 것이 좋다.

  1. Win+x 또는 시작버튼 우클릭하여 보이는 메뉴에서 Windows PowerShell(관리자) 를 실행
  2. dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart 실행
  3. 재부팅
  1. Windows Store에서 Linux 배포판을 검색하여 설치한다.
  1. 시작 메뉴에 생긴 해당 배포판 아이콘을 클릭하여 다음 순서로 초기 설정을 실행한다.
    1. (해당 배포판 내에서 사용할) 사용자명 설정 대소문자 구분 주의, 한글 사용 불가
    2. (해당 배포판 내에서 사용할) 암호 설정
    3. (해당 배포판 내에서 사용할) 암호 확인(다시 입력)

위 과정이 끝났으면 WSL와 배포판 설치가 완료된 것이다.

3.1.1. Xming (무료)

홈페이지
본래 X서버, 즉 Linux에서 GUI 부분을 담당하는 소프트웨어는 Linux 핵심 구동부와 별개로 돌아가는 소프트웨어다. 즉 Linux가 돌아가는 컴퓨터와 네트워크로 연결된 다른 PC에서 화면을 볼 수 있게끔 설계가 되어 있다. 여기서 “다른 PC”가 Windows를 구동할 때 사용하는 소프트웨어가 바로 이 Xming이다. 이런 이유로 Xming은 단지 WSL뿐만 아니라 실제 Linux 서버들에도 사용할 수 있다.

3.1.2. VcXsrv (무료)

다운로드 페이지
Xming과 거의 동일한 기능이나 비교적 최근 버전의 바이너리로 제작되어 최신 OS와 호환성이 Xming보다 조금 더 낫고, Xming보다 화면 구성도 조금 더 편리하다.

3.1.3. X410 (유료)

홈페이지
아예 WSL을 타겟으로 하고 나온 X 프로그램으로, WSL과 연결하기가 매우 쉽고 설정을 거의 하지 않아도 잘 작동한다. WSL2도 IP 설정만 잘 맞춰주면 사용 가능하다.

3.2.1. Windows Terminal

Microsoft에서 개발한 Terminal 전용 앱으로, 한 창에서 서로 다른 종류(ex. PowerShell, 명령 프롬프트, WSL)의 터미널들을 열어 관리할 수 있다. 터미널의 모양과 글꼴 등을 전부 커스터마이징할 수 있어 기존 Powershell, 명령프롬프트의 글씨가 너무 작거나 좁아 읽기가 힘들거나 글꼴 종류가 제한적인 것들을 모두 해결할 수 있다. 설정방법 추가바람

3.3.1. Visual Studio Code (vscode)

Microsoft에서 개발한 에디터, 즉 텍스트 편집기이다. 이름에 Visual Studio가 앞에 있어서 종합개발환경(IDE)이라고 생각하는 사람이 많은데, 어디까지나 편집기일 뿐이다. 다만, 워낙 다양한 Extension이 올라 있고 이것을을 설치하여 다른 소프트웨어와 연결하면 웬만한 개발툴보다 더 강력하게 사용할 수 있는데, 그 연결할 소프트웨어 중 하나가 바로 WSL이다. 설치방법 추가바람

3.3.2. ROS

ROS의 설치방법은 ROS 설치 참조.


1)
엄밀히 말하면 Linux에서 소화해야할 명령어들을 실시간으로 Windows 명령어로 번역하여 실행하는 것
2)
VirtualBox 6.1.12 이상의 최신 버전에서는 이런 Hyper-V를 아예 직접 가상화 방식 중 일부로 제공하여 Hyper-V와 VirtualBox 동시 사용이 가능하나, 성능 손실이 크다
  • activity/public/reference/wsl.txt
  • 마지막으로 수정됨: 4년 전
  • 저자 david