본문 바로가기
정보

🤯 윈도우 11에서 WSL2 개발환경, 5분 만에 완벽하게 세팅하고 버그 탈출하기!

by 417jsfskfjasasf 2025. 10. 2.
🤯 윈도우 11에서 WSL2 개발환경, 5분 만에 완벽하게 세팅하고 버그 탈출하기!
배너2 당겨주세요!

이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.

🤯 윈도우 11에서 WSL2 개발환경, 5분 만에 완벽하게 세팅하고 버그 탈출하기!

 

목차

  1. WSL2란 무엇이며 왜 필요한가?
  2. 윈도우 11 환경 준비: 필수 조건 확인
  3. WSL2 설치 및 초기 설정
  4. Linux 배포판 선택 및 설치
  5. WSL2 네트워크 및 파일 시스템 최적화
  6. 개발 도구 설치 및 VS Code 연동
  7. 자주 발생하는 문제 해결 팁

1. WSL2란 무엇이며 왜 필요한가?

**WSL2(Windows Subsystem for Linux 2)**는 윈도우 11 환경에서 네이티브 리눅스 바이너리 실행 환경을 제공하는 마이크로소프트의 기술입니다. 단순히 리눅스 명령어를 흉내 내는 WSL1과 달리, WSL2는 **경량화된 가상 머신(VM)**을 사용하여 실제 리눅스 커널을 구동합니다.

왜 WSL2를 사용해야 할까요?

웹 개발, 데이터 분석, 백엔드 개발 등 많은 분야에서 리눅스 기반 환경이 필수적입니다. WSL2를 사용하면 듀얼 부팅이나 무거운 VM웨어 없이도 윈도우와 리눅스를 매끄럽게 오가며 개발할 수 있습니다. 특히, WSL2는 WSL1보다 파일 시스템 성능시스템 호출 호환성이 뛰어나 Docker와 같은 복잡한 도구를 사용할 때 진가를 발휘합니다. 실제 리눅스와 거의 동일한 환경을 제공하여 개발 환경의 이질감을 최소화하고, 윈도우의 편리한 GUI 도구들을 그대로 활용할 수 있다는 것이 가장 큰 장점입니다. 예를 들어, Windows Terminal에서 리눅스 셸을 실행하고, VS Code에서 WSL2 내부의 프로젝트 파일을 직접 편집할 수 있습니다.


2. 윈도우 11 환경 준비: 필수 조건 확인

WSL2를 설치하기 전에 몇 가지 윈도우 설정을 확인하고 활성화해야 합니다. 이 단계를 건너뛰면 설치 과정에서 오류가 발생할 수 있습니다.

필수 구성 요소 활성화

  1. 가상 머신 플랫폼(Virtual Machine Platform) 기능 활성화: WSL2는 가상 머신을 사용하므로, 윈도우 검색창에 'Windows 기능 켜기/끄기'를 검색하여 실행합니다. 목록에서 '가상 머신 플랫폼' 항목을 찾아 체크하고 **'확인'**을 눌러 활성화합니다.
  2. Linux용 Windows 하위 시스템(Windows Subsystem for Linux) 기능 활성화: 같은 'Windows 기능 켜기/끄기' 창에서 **'Linux용 Windows 하위 시스템'**도 체크하여 활성화합니다.
  3. 컴퓨터 재시작: 기능 활성화 후에는 반드시 컴퓨터를 재시작해야 변경 사항이 완전히 적용됩니다.
  4. BIOS/UEFI 설정 확인 (선택): CPU의 **가상화 기술(Intel VT-x 또는 AMD-V)**이 BIOS/UEFI 설정에서 활성화되어 있는지 확인합니다. 대부분 기본적으로 활성화되어 있지만, 비활성화된 경우 WSL2의 성능 저하 또는 오류를 유발할 수 있습니다.

3. WSL2 설치 및 초기 설정

이제 명령어를 사용하여 WSL2를 쉽게 설치하고 기본 버전을 지정할 수 있습니다.

간편 설치 명령어

가장 간단한 방법은 관리자 권한으로 PowerShell 또는 Windows Terminal을 열고 다음 명령어를 실행하는 것입니다.

wsl --install

이 명령어는 필요한 구성 요소 활성화, 리눅스 커널 다운로드, Ubuntu 배포판 설치까지 한 번에 처리합니다. 설치 과정에서 사용자 이름과 비밀번호를 설정하게 됩니다.

WSL 버전 지정

설치 후, WSL2가 기본 버전으로 설정되어 있는지 확인하고 필요하다면 변경합니다.

  1. 현재 설치된 WSL 버전 확인:
    wsl -l -v
  2. WSL2를 기본 버전으로 설정 (만약 자동으로 안 되어 있다면):
    wsl --set-default-version 2

이 설정을 통해 앞으로 설치하는 모든 리눅스 배포판은 WSL2 모드로 작동하게 됩니다.


4. Linux 배포판 선택 및 설치

대부분의 개발자에게 Ubuntu가 가장 널리 사용되고 안정적이지만, 필요에 따라 다른 배포판을 선택할 수 있습니다.

추가 배포판 설치 (선택)

Microsoft Store에서 Debian, Kali Linux, SUSE 등 원하는 배포판을 검색하여 설치할 수 있습니다. 명령어로도 설치 가능합니다.

wsl --install -d Debian

설치가 완료되면 해당 배포판을 실행하고 사용자 계정 및 비밀번호를 설정합니다. 이 계정은 윈도우 계정과 별개입니다.


5. WSL2 네트워크 및 파일 시스템 최적화

개발 환경의 성능과 안정성을 위해 몇 가지 설정을 최적화해야 합니다.

네트워크 설정 유의사항

WSL2는 자체적인 IP 주소를 사용하며, 이는 윈도우의 IP와 다릅니다.

  • 외부 서비스 접속: WSL2 내부에서 실행되는 웹 서버(예: localhost:3000)에 윈도우 브라우저로 접속할 때는 WSL2의 IP 주소가 아닌 **localhost**를 사용해야 합니다. 윈도우 11이 자동으로 포트 포워딩을 처리해 줍니다.
  • 방화벽 예외 설정: 만약 윈도우 방화벽 때문에 접속이 안 된다면, 해당 포트에 대한 인바운드 규칙을 허용해 줘야 할 수 있습니다.

파일 시스템 성능 향상: 프로젝트 위치

가장 중요한 성능 팁 중 하나는 프로젝트 파일의 위치입니다.

  • WSL2 내부 (권장): 프로젝트 파일을 리눅스 파일 시스템 내부(/home/user/project)에 두어야 최적의 I/O 성능을 얻을 수 있습니다. 윈도우의 파일을 WSL2에서 접근하는 것보다 훨씬 빠릅니다.
  • 윈도우 파일 접근: 윈도우 파일 시스템(C:\)은 WSL2에서 /mnt/c/ 경로로 접근할 수 있지만, 이곳에서 대규모 작업을 하면 성능이 크게 저하됩니다.

6. 개발 도구 설치 및 VS Code 연동

WSL2 환경에 필요한 개발 도구를 설치하고 VS Code와 연동하여 편리하게 작업합니다.

기본 개발 환경 설치

설치한 배포판(예: Ubuntu) 셸을 열고 apt 명령어를 이용해 필요한 도구를 설치합니다.

  1. 패키지 목록 업데이트:
    sudo apt update
  2. 필요한 도구 설치:
    sudo apt install build-essential git
    # Node.js 개발 환경
    sudo apt install nodejs npm
    # Python 개발 환경
    sudo apt install python3 python3-pip

VS Code 원격 개발 연동

Visual Studio Code는 WSL2 개발을 위해 최적화된 Remote - WSL 확장을 제공합니다.

  1. VS Code 설치: 윈도우에 VS Code를 설치합니다.
  2. Remote - WSL 확장 설치: VS Code를 열고 확장 마켓플레이스에서 'Remote - WSL' 확장을 검색하여 설치합니다.
  3. WSL2에서 VS Code 실행: WSL2 셸 내부에서 프로젝트 폴더로 이동한 후, 다음 명령어를 입력하면 VS Code가 WSL2 환경에 연결된 상태로 실행됩니다.
    code .
    VS Code 하단 왼쪽 상태 표시줄에 **'WSL: Ubuntu'**와 같이 현재 연결된 환경이 표시되는 것을 확인할 수 있습니다. 이제 윈도우에서 VS Code의 편리한 GUI를 사용하면서, 실제 코드는 리눅스 환경에서 실행되는 놀라운 개발 환경이 완성됩니다.

7. 자주 발생하는 문제 해결 팁

WSL2를 사용하다가 마주칠 수 있는 일반적인 문제들과 그 해결책입니다.

1. 네트워크 접속 문제

외부 네트워크 접속이 갑자기 안 되는 경우, 윈도우의 네트워크 설정이 변경되었을 가능성이 있습니다.

  • 해결책: PowerShell에서 다음 명령어로 WSL 서비스를 재시작합니다.
    wsl --shutdown
    wsl

2. 메모리 및 CPU 사용량 과다

WSL2는 동적으로 메모리를 할당하지만, 가끔 해제되지 않고 남아 시스템을 느리게 만들 수 있습니다.

  • 해결책: $HOME 경로에 .wslconfig 파일을 생성하여 WSL2의 메모리 사용량을 제한할 수 있습니다.
    # C:\Users\사용자이름\.wslconfig 파일 내용 예시
    [wsl2]
    memory=4GB  # 사용할 메모리 상한선 설정
    processors=4 # 사용할 CPU 코어 개수 설정

3. 윈도우와 시간 동기화 문제

WSL2 환경의 시간이 윈도우 시간과 동기화되지 않아 발생하는 오류(주로 인증서 관련)가 있습니다.

  • 해결책: WSL2 셸에서 sudo hwclock -s를 실행하여 하드웨어 클럭과 동기화하거나, WSL2를 재시작합니다.

이러한 단계들을 통해 윈도우 11 환경에서 WSL2를 기반으로 하는 효율적이고 안정적인 개발 환경을 구축할 수 있습니다. 이제 리눅스 서버 환경의 이점을 그대로 누리면서 윈도우의 편리함까지 만끽하며 개발에 집중할 수 있습니다.