Window WSL2 Linux distro 사용법 및 Tip

식빵·2024년 7월 6일
0

Window

목록 보기
1/2

이 글에서는 Window 10 기준으로 작성된 겁니다.
하지만 Window 11 이랑 크게 다르지 않으므로 똑같이 하셔도 됩니다.

이 글은 WSL2 를 이미 설치한 것을 가정하고 작성된 글입니다.
WSL2 설치를 꼭 하시고 나서 진행하시기 바랍니다.
설치법은 간단합니다.

  1. 관리자 모드로 Window Powershell 을 실행합니다.
  2. wsl --install 라고 입력하고 설치합니다.
    (참고: 설치 중 팝업창이 뜰 수 있는데, 그냥 를 클릭)
  3. 설치가 완료된 후에 컴퓨터를 껐다가 키면 끝입니다.



🖥 WSL2 기반 Distro 설치

먼저 WSL 2 기반의 Distro 가 뭐가 설치되어 있는지 확인합니다.
powershell 을 실행시키고 아래와 같이 명령어를 입력하고 확인합니다.

 wsl -l -v

저의 경우에는 위처럼 Ubuntu-22.04 가 설치되어 있습니다.
본인의 환경에서는 설치가 되어 있지 않다면,
CLI 환경에서 곧바로 설치도 할 수 있습니다.


먼저 설치할 수 있는 항목을 확인해보기 위해 아래처럼 명령어를 입력합니다.

wsl -l --online

여러분들도 저와 같이 distro : Ubuntu 22.04 를 설치하고 싶다면
위 목록에 나와 있는 것 중 NameUbuntu-20.04 를 설치하면 됩니다.


설치는 아래 명령어를 입력하면 됩니다.

wsl --install Ubuntu-22.04

이후에 설치가 진행되고, 설치가 완료되고 나면 host name , password
설정을 하게 됩니다. (이 내용은 간단하므로 그림은 생략합니다)




🖥 설치한 Distro 상태 확인법

사실 이미 봤지만 아래 명령어를 입력하면 됩니다.

wsl -l -v

이후에 아래처럼 나옵니다.

  • NAME: 설치된 Distro 명칭
  • STATE: Distro 실행상태
  • VERSION: Distro 가 실행되는 WSL의 버전

참고로 NAME 앞에 * 이 붙은 distro 가 있는데,
이것은 WSLDefault Distro 를 의미합니다.
이를 변경하고 싶다면 wsl --set-default <distro Name> 처럼 할 수 있습니다.



🖥 설치한 Distro 접속법

새로운 cmd(또는 pwsh) 창을 띄웁니다.
이후에 아래처럼 명령어를 입력하면 끝입니다.

wsl -d Ubuntu-22.04
# "Ubuntu-22.04" 는 wsl -l -v 를 통해 알아낸 distro NAME!



🖥 Distro 실행

Stopped 상태인 Distro 를 실행하고 싶다면 한번
접속했다가 exit 으로 빠져나오면 됩니다. 그게 답니다.



🖥 Distro 중지

1. 전체 중지

wsl --shutdown

2. 특정 Distro 중지

wsl --terminate <Distro Name>




🖥 Distro 삭제

wsl unregister <Distro>




🖥 Distro Export/Import

가끔은 여태 한 작업 내용들을 다시 백업해두고 싶죠?
이럴 때 쓰면 좋은게 export 기능입니다.

wsl --export <Distro Name> backup.tar 

이후에 자신의 컴퓨터(또는 다른 wsl2 가 설치된 컴퓨터)에서
아래처럼 백업한 환경을 복구할 수 있습니다.

# 먼저 distro 가 import 되고 나서 사용할 스토리지 생성.
mkdir D:\wslDistroStorage\MyUbuntu

# 그 다음 import 하면 끝!
wsl --import MyUbuntu D:\wslDistroStorage\MyUbuntu .\backup.tar 



🖥 알아두면 좋은 Tip

1. Docker Desktop 연계

여러분들의 Window 에 Docker Desktop 을 깔면 기본적으로
WSL 에서 Default 로 지정한 Linux 와 연계가 되도록 자동으로 세팅됩니다.

이와 관련된 설정은 Docker Desktop 실행 후,
설정 (상단의 톱니바퀴 아이콘) > Resources > WSL integration 에서 확인이 가능합니다.

이렇게 설정되어 있으면, Linux 에서 곧바로 설치한 Docker Desktop 을 통해서
설치된 docker 에 명령어를 보낼 수 있습니다. (아래 그림 참고)



2. Distro 의 Linux 명령어를 Window 에서 사용하기

Window 환경에서 cmd(또는 pwsh) 를 실행합니다.
그리고 아래와 같은 패턴으로 입력하면 끝입니다.

wsl <Linux 명령어>
# 예시 1) wsl vim some.txt
# 예시 2) wsl touch some.txt

이 명령어를 받아주는 Linux Distro 는 저희가 default 로 지정한 distro 입니다.
wsl -l -v 를 입력했을 때 NAME 앞에 * 이 붙은 겁니다.
만약 다른 걸 지정하고 싶다면 wsl --set-default <distro Name> !


추가적으로 distro 내에서도 window 명령어를 약간이지만 사용할 수 있습니다.
notepad.exe <파일명> 같은 명령어를 distro 에서 직접 실행해보시기 바랍니다!



3. Linux Distro 가 사용하는 실제 Window 상 경로 찾아내기

Distro 에 접속하고 아래처럼 입력합니다.

explorer.exe .

이러면 파일 탐색기 창이 뜨면서 Distro 가 실제로 사용하는 Window 운영체제 상의
경로를 보여줍니다.

아마 \\wsl.localhost\<Distro-Name> 같은 형태의 경로가 보일 겁니다.
참고로 위의 경로는 \\wsl$\<Distro-Name> 로도 접근 가능합니다.



4. localhost 공유

WSL Linux 에서 실행한 어떤 서버를 Window 의 APP 에서 접속하고 싶으면
곧바로 127.0.0.1(또는 localhost) 를 통해서 접근이 가능합니다.

단, WSL Linux 에서 Window 에 켜져있는 서버에는 localhost 로 접근이 안됩니다.
관련해서 방법은 아래 링크를 참고해주세요.

참고 링크:
https://learn.microsoft.com/en-us/windows/wsl/networking#default-networking-mode-nat



5. Window Terminal 사용하기

이건 극히 저의 개인적인 취향이지만, Window Terminal 을 사용해서
WSL Linux Distro 에 접속/사용하는 게 좋습니다.

window 11 은 default 로 Window Terminal 을 사용한다고 하더군요!
window 11 사용자분들은 따로 설치하지 않으셔도 됩니다.

Window Terminal 은 깔고 실행만 해도,
이미 설치된 Linux 를 감지해서 바로 사용할 수 있는 환경을 제공합니다.
아래 그림은 Window Terminal 을 설치하고 신규 탭을 생성할 때 제가
설치한 Ubuntu 에 바로 접근할 수 있는 선택란이 표출되는 것을 확인할 수 있습니다.


이외에도 콘솔 화면 및 로그인 경로도 쉽게 지정이 가능합니다.

로그인 시 처음 경로를 세팅할 수 있습니다! 필수적인 건 아닙니다.
하지만 설정 안하면 기본으로 C:/Users/<사용자_계정>/ 경로가 잡히다 보니,
매번 번거롭게 cd ~ 를 입력해서 linux home directory 로 수동으로 이동해야 합니다.


여기서 개인적으로 구분할 수 없는 텍스트의 밝기 자동 조정
색 구성표의 색에만 해당 을 지정하는 걸 추천합니다.
만약 설정을 안하면 ls -alF 같은 명령어 칠 때 종종 아래처럼 뭐라고
써져있는지 확인하기가 어려운 경우가 많습니다.

반대로 구분할 수 없는 텍스트의 밝기 자동 조정 을 설정하면 아래처럼 나오게 됩니다.


추가적으로 window terminal 에서는 하나의 화면을 분할해서 사용하는 기능을
제공하는데, 이 기능의 단축키는 alt + shift + 더하기버튼(+)/빼기버튼(-) 입니다.
다만 이게 현재 버그가 있어서 정상적으로 동작시키려면 아래 빨간 박스 친 부분을 클릭하고

그 다음에 아래와 같이 2줄을 넣어줍니다.
actions: [] 안쪽에 기재하셔야 합니다!

{ "command": { "action": "splitPane", "split": "down", "splitMode": "duplicate"}, "keys": "alt+shift+minus" },
{ "command": { "action": "splitPane", "split": "right", "splitMode": "duplicate"}, "keys": "alt+shift+plus" }

이걸 안 하면 화면 분할 기능 시, 분명 현재 사용 중인 건 리눅스인데,
분할창을 열면 Powershell 이 켜지는 현상이 발생합니다.

관련 이슈 : https://github.com/microsoft/terminal/issues/7657

profile
백엔드를 계속 배우고 있는 개발자입니다 😊

0개의 댓글