본문 바로가기
정보

개발자의 든든한 파트너, 윈도우11에서 WSL2로 리눅스 개발 환경 완벽 구축하기!

by 479masmfasm 2025. 9. 30.
개발자의 든든한 파트너, 윈도우11에서 WSL2로 리눅스 개발 환경 완벽 구축하기!
배너2 당겨주세요!

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

개발자의 든든한 파트너, 윈도우11에서 WSL2로 리눅스 개발 환경 완벽 구축하기!

 

목차

  1. WSL2, 왜 사용해야 할까요?
  2. 윈도우11 WSL2 설치 및 초기 설정 방법
  3. WSL2 개발 환경 구축을 위한 필수 설정
  4. WSL2 사용 시 발생 가능한 문제와 해결 방법
  5. WSL2를 활용한 효율적인 개발 워크플로우

WSL2, 왜 사용해야 할까요?

윈도우11을 사용하는 개발자들에게 WSL2(Windows Subsystem for Linux 2)는 이제 선택이 아닌 필수가 되었습니다. 과거 윈도우에서 리눅스 개발 환경을 구축하기 위해서는 복잡한 가상 머신을 설치하거나 듀얼 부팅을 해야만 했죠. 하지만 WSL2는 이런 불편함을 한 번에 해결해 줍니다. 윈도우11에 통합된 WSL2는 놀라운 성능과 호환성을 자랑합니다. 리눅스 네이티브에 가까운 속도로 도커, 쿠버네티스 같은 컨테이너 기술을 활용할 수 있고, GPU 가속을 지원하여 머신러닝이나 딥러닝 작업도 윈도우 환경에서 원활하게 수행할 수 있습니다. 윈도우와 리눅스 파일 시스템 간의 상호 운용성도 뛰어나, 윈도우 탐색기에서 WSL2의 파일을 쉽게 접근하고 수정할 수 있습니다. 윈도우에 익숙한 개발자라면 복잡한 설정 없이도 리눅스 터미널을 사용해 효율적인 개발 환경을 구축할 수 있다는 점이 가장 큰 매력입니다.


윈도우11 WSL2 설치 및 초기 설정 방법

WSL2 설치는 매우 간단합니다. 우선 PowerShell관리자 권한으로 실행합니다. 시작 메뉴에서 'PowerShell'을 검색한 후, 우클릭하여 '관리자 권한으로 실행'을 선택하면 됩니다. PowerShell 창에 다음 명령어를 입력하면 WSL2 설치에 필요한 모든 구성 요소를 한 번에 설치할 수 있습니다. wsl --install 이 명령어는 WSL 기능 활성화, WSL2 커널 업데이트, 그리고 기본 리눅스 배포판인 Ubuntu를 자동으로 설치해 줍니다. 설치가 완료되면 컴퓨터를 재부팅해야 합니다. 재부팅 후, WSL2를 처음 실행하면 사용자 이름과 비밀번호를 설정하는 창이 나타납니다. 이 사용자 이름과 비밀번호는 리눅스 환경에서 사용하게 될 계정 정보이므로 잘 기억해 두는 것이 좋습니다. 이제 기본적인 WSL2 설치가 완료되었습니다. 만약 특정 리눅스 배포판을 설치하고 싶다면, wsl --list --online 명령어를 통해 사용 가능한 배포판 목록을 확인하고, wsl --install -d <배포판이름> 명령어를 사용하여 원하는 배포판을 설치할 수 있습니다. 예를 들어, wsl --install -d Debian 명령어를 사용하면 데비안(Debian)을 설치할 수 있습니다.


WSL2 개발 환경 구축을 위한 필수 설정

WSL2 설치 후에는 개발 환경에 맞게 추가적인 설정을 해주는 것이 중요합니다. 가장 먼저 WSL2 기본 배포판 설정을 변경하는 방법을 알아봅시다. 만약 여러 개의 리눅스 배포판을 설치했다면, wsl --set-default <배포판이름> 명령어를 사용하여 기본으로 실행될 배포판을 지정할 수 있습니다. 다음으로, 통합 개발 환경(IDE)과 WSL2를 연동하는 방법을 살펴보겠습니다. 마이크로소프트의 Visual Studio Code(VS Code)는 WSL2와 최상의 연동을 자랑합니다. VS Code에 Remote - WSL 확장을 설치하면, 윈도우11에서 VS Code를 실행하면서 WSL2 내부에 있는 파일과 애플리케이션에 직접 접근하고 작업할 수 있습니다. 이 확장을 설치하면 VS Code 왼쪽 하단에 초록색 아이콘이 나타나는데, 이 아이콘을 클릭하여 WSL2에 연결하면 됩니다. 이렇게 연결된 VS Code는 WSL2 환경에서 실행되는 것처럼 작동하므로, 리눅스에서만 동작하는 다양한 개발 도구들을 문제없이 사용할 수 있습니다. 또한, WSL2 내부에서 도커(Docker)를 사용하려면 Docker Desktop을 설치해야 합니다. Docker Desktop은 WSL2 통합 기능을 제공하여 윈도우11과 WSL2 환경에서 도커 컨테이너를 효율적으로 관리할 수 있게 해줍니다.


WSL2 사용 시 발생 가능한 문제와 해결 방법

WSL2는 매우 안정적이지만, 때때로 몇 가지 문제가 발생할 수 있습니다. 가장 흔한 문제는 네트워크 관련 문제입니다. 예를 들어, WSL2 내부에서 외부 인터넷 연결이 되지 않거나, 특정 포트로의 접속이 안 되는 경우가 있습니다. 이는 주로 방화벽 설정이나 네트워크 설정 문제로 인해 발생합니다. Windows Defender 방화벽 또는 다른 보안 소프트웨어에서 WSL2 네트워크 통신을 차단하지 않도록 예외 설정을 추가해야 합니다. 또한, WSL2 내부에서 DNS 관련 문제가 발생한다면 /etc/resolv.conf 파일을 수정하여 DNS 서버를 직접 지정해 주는 방법도 유용합니다. 다음으로, WSL2 디스크 용량 문제가 있습니다. WSL2는 기본적으로 윈도우11 드라이브에 가상 디스크 파일을 생성하여 사용합니다. 이 가상 디스크 파일(ext4.vhdx)의 크기는 시간이 지남에 따라 계속 커지므로, 윈도우 디스크 용량이 부족해지는 문제가 발생할 수 있습니다. 이를 해결하려면 wsl --shutdown 명령어로 WSL2를 종료한 후, diskpart 유틸리티를 사용하여 가상 디스크의 크기를 최적화하거나 축소할 수 있습니다. 마지막으로, WSL2 성능 저하 문제도 종종 발생합니다. 이는 보통 윈도우와 리눅스 파일 시스템 간의 I/O 작업이 빈번할 때 발생합니다. 따라서 개발 작업은 WSL2 파일 시스템 내부에서 진행하는 것이 성능상 유리합니다. 윈도우의 C:\ 드라이브에 있는 파일을 WSL2 내부에서 직접 작업하기보다는, ~ 디렉토리와 같은 WSL2의 홈 디렉토리에 파일을 옮겨 작업하는 것을 권장합니다.


WSL2를 활용한 효율적인 개발 워크플로우

WSL2를 활용하면 윈도우11 환경에서 놀랍도록 효율적인 개발 워크플로우를 구축할 수 있습니다. git을 사용하여 소스 코드를 관리할 때, WSL2 터미널에서 git 명령어를 사용하면 리눅스 환경의 강력한 기능을 활용할 수 있습니다. Node.js, Python, Go와 같은 다양한 프로그래밍 언어의 개발 환경을 WSL2에 구축하면, 리눅스 서버 환경과 유사한 조건에서 애플리케이션을 개발하고 테스트할 수 있어 배포 시 발생할 수 있는 호환성 문제를 미리 방지할 수 있습니다. 또한, 도커(Docker)를 사용하여 애플리케이션을 컨테이너화하면, 개발 환경과 배포 환경의 일관성을 유지할 수 있어 매우 편리합니다. WSL2와 Docker Desktop의 완벽한 통합 덕분에 윈도우에서 도커 컨테이너를 손쉽게 관리할 수 있습니다. 예를 들어, 웹 개발자는 WSL2에 Node.js와 MySQL을 설치하고, 이들을 도커 컨테이너로 실행하여 독립적인 개발 환경을 구축할 수 있습니다. 이 워크플로우는 윈도우11의 편리함과 리눅스의 강력함을 동시에 누리게 해줍니다. 윈도우에서는 VS CodeChrome 같은 GUI 애플리케이션을 사용하고, 백엔드 개발 및 서버 관련 작업은 WSL2 터미널에서 수행하는 것이 가장 이상적인 조합입니다. 이처럼 WSL2는 윈도우11 개발자들에게 새로운 차원의 자유와 효율성을 제공합니다.