Skip to content

WSL 배포판 유지(Keep-Alive) ​

WSL2를 처음 접하는 많은 사용자가 한 가지 "의문"을 겪습니다. Linux를 설치했는데 왜 터미널을 닫으면 잠시 후 "자동으로 꺼지는" 것일까요? 왜 계속 실행 상태를 유지하지 못할까요?

이 글에서는 먼저 이 현상을 설명하고, 다음으로 Microsoft가 WSL을 이렇게 설계한 이유를 설명하며, 마지막으로 WSL Dashboard를 사용해 유지(keep-alive) 되는 Linux 배포판을 시작하는 방법을 소개합니다.

1. 현황: 터미널을 닫으면 Linux가 곧 자동으로 종료됩니다 ​

다음과 같은 상황을 겪어 보셨나요?

  1. Linux 배포판의 터미널을 열면 Linux가 자동으로 시작되며 아무 명령도 실행할 필요가 없습니다.
  2. 터미널 창을 닫아도 Linux는 계속 실행되지 않습니다. 약 60초 후 자동으로 종료됩니다.
  3. 터미널을 다시 열면 Linux가 다시 자동으로 시작되며, 이런 식으로 반복됩니다.

NOTE

WSL2의 기본 "유휴 제한 시간"은 약 60초입니다. 배포판에서 실행 중인 프로세스가 없으면(예: 모든 터미널을 닫은 경우) WSL 가상 머신은 메모리 등 시스템 리소스를 해제하기 위해 자동으로 종료됩니다.

이 동작은 WSL2의 기본 설계이며, 고장도 오류도 아닙니다.

2. Microsoft는 왜 WSL을 이렇게 설계했을까요? ​

2.1 WSL2는 본질적으로 경량 가상 머신입니다 ​

WSL2는 Hyper-V 경량 가상 머신(유틸리티 VM)을 통해 완전한 Linux 커널을 실행합니다. 실행 중인 각 배포판은 실제로 메모리 리소스를 점유합니다. 모든 배포판이 백그라운드에 상주하면, 한 대의 머신에서 여러 배포판을 동시에 실행할 때 수백 MB에서 수 GB에 달하는 메모리가 낭비되어 전체 시스템 성능이 느려질 수 있습니다.

2.2 필요에 따라 리소스를 할당하는 설계 철학 ​

Windows의 설계 철학은 "필요에 따라 리소스를 할당하고, 사용하지 않으면 해제"하는 것입니다.

  • 대부분의 사용자에게: 터미널을 여는 것 = Linux가 필요함; 터미널을 닫는 것 = 당분간 필요하지 않음;
  • 소수의 사용자만 Linux가 7×24시간 중단 없이 실행되기를 원합니다.

따라서 WSL은 "필요할 때 시작하고, 유휴 상태가 되면 중지"하는 전략을 채택하여 메모리 등 리소스가 필요하지 않을 때 자동으로 시스템에 반환되도록 합니다.

2.3 비유: 방을 나갈 때 불을 끄는 것 ​

WSL의 "유휴 자동 종료"는 방을 나갈 때 불을 끄는 것과 같습니다. 전력을 절약하고 더 효율적입니다. 하지만 "방이 항상 밝게 유지되어야 하는" 사람에게는 매우 번거롭습니다. 이것이 바로 유지(keep-alive) 요구의 유래입니다.

TIP

Linux를 상시 실행해야 하는 경우(예: 서비스 배포, 예약 작업 실행, 개발 서버 구축 등) 다음 장을 읽고 WSL Dashboard를 사용하여 배포판을 유지(keep-alive)하세요.

3. WSL Dashboard를 사용하여 유지되는 Linux 시작하기 ​

WSL Dashboard는 Linux 배포판을 계속 실행 상태로 유지하는 두 가지 간단한 방법을 제공합니다.

방법 1: "시작" 버튼 클릭 ​

WSL Dashboard의 "설치된 Linux 배포판" 목록에서:

  1. 유지(keep-alive)하려는 배포판을 찾습니다.
  2. 해당 배포판 행의 "시작" 버튼을 클릭합니다.

클릭하면 배포판이 즉시 깨어나 계속 실행되며, 직접 중지하지 않는 한 유휴 상태로 인해 자동으로 종료되지 않습니다. 이 방법은 "지금" Linux가 계속 실행되기를 원하는 임시 유지(keep-alive) 시나리오에 적합합니다.

방법 2: "Windows가 시작될 때 이 배포판을 자동으로 시작합니다." 체크 ​

WSL Dashboard의 "설치된 Linux 배포판" 목록에서:

  1. 대상 배포판 행의 "설정" 버튼을 클릭하여 설정 창을 엽니다.
  2. 창에서 **"Windows가 시작될 때 이 배포판을 자동으로 시작합니다."**를 체크합니다.
  3. 설정을 저장합니다.

체크 후에는 Windows가 시작/로그인될 때마다 해당 배포판이 자동으로 시작되며, 수동 조작이 필요 없어 "시작과 동시에 유지"가 실현됩니다. 이 방법은 Linux가 장기간 온라인 상태여야 하는(개발 서버, 상주 서비스 등) 시나리오에 적합합니다.

TIP

  • 임시로만 필요 → 방법 1 사용("시작" 클릭);
  • 장기간 온라인 필요 → 방법 2 사용("Windows가 시작될 때 이 배포판을 자동으로 시작합니다." 체크).