가장 첫번째로 해야할 일은

윈도우에 ubuntu설치

미안한 얘기지만 여기서 첫번째 관문이 있다. 윈도우에 리눅스 버전은 아무나 깔 수 없고 윈도우 11 또는 윈도우 10의 21H2버전 이상이어야만 깔 수 있다.
윈도우에서는 리눅스 가상머신을 돌릴 수 있게 해놓았는데 이걸 WSL 라는 이름으로 부르고있다. window service for linux였던가...

이걸 까는 방법은 또 여러가지가 있지만 공통적으로 해야하는 일이 있다.

1. Linux용 Window 하위 시스템 활성화

제어판 -> 프로그램 및 기능 -> Windows기능 켜기/끄기 -> Linux용 Window하위 시스템 체크!

하고 확인을 누르면 뭔가 설치되면서 컴퓨터 재시작이 필요했었나... 안했었나... 걍 됐었나... 가물가물하긴한데 여튼 당황하지말고 컴퓨터가 하고싶은대로 나두면 된다. 다 필요한 일들이겠지

2. 개발자 모드 활성화

호오오옥시 안되있다면 킨다.
설정 -> 업데이트 및 보안 -> 개발자용 -> 개발자 모드 켬
이거하고 재시작 하라고 안내하는곳도 있긴한데 진행하다가 뭐가 안되면 재시작해보자 또 하면 귀찮으니까...

3. ubuntu 설치

이제 Ubuntu 설치이다. 이 방법은 크게 두가지가 있다.

  • Microsoft Store에서 설치
  • Power shell에서 설치

사실 두가지 다 결과는 같다. 나는 편하게 Microsoft Store에서 설치하겠다. Power shell같은 명령창은 나중에 눈에 쥐나도록 볼것이다.눈에 쥐나면 어떤기분이지

윈도우 키를 누르고 그냥 키보드를 치면 바로 검색을 할 수 있는데 거기에다가 Microsoft store라고 입력하면 store가 뜬다.

...라고 생각해보니... 나는 Power shell로 깔았던것같은데.... 어.... 이렇게 해도되나....?

뭐 이렇게 해보고 안되면 power shell로 설치해보자. power shell로 설치하는 방법도 매우 쉽다.
우선 Power shell을 관리자 권한으로 실행한 후 아래의 명령어를 쳐보자

wsl --install

그럼 여러가지 무슨 설명같은게 많이 나온다. 차차 읽어보면 어떤 명령어를 써야할지 알 수 있겠지만 간단 명료하게 아래 명령어를 한번 더 친다.

wsl --list --online

그럼 아래와 같이 현재 온라인에 배포되는 linux가 표시된다. 아래의 이미지와 다를 수 있다.

저기서 배포판 이름을 볼 수 있는데 그 이름을 입력하면 된다. 우리는 Ubuntu를 설치할것이니

install -d Ubuntu

를 하면 된다. 이렇게 되면 자동으로 wsl 2 로 실행이 된다.

위 행동에 대한 자세한 내용은 Microsoft docs에 있다.
https://docs.microsoft.com/ko-kr/windows/wsl/install

이렇게 설치는 끝났고...

다음엔 ssh를 설치하고 접속이 가능하도록 하는것까지 해보겠다.

추가로 할 얘기는 wsl1과 wsl2인데 이 차이점에서도 ms doc에 명시되어있다.
https://docs.microsoft.com/ko-kr/windows/wsl/compare-versions

뭔말인지 대강은 알겠는데 일단 우리에게 필요한 기능은 외부에서 여기로 접속하는 부분이다.
근데 wsl1과 wsl2버전에서는 결정적으로 이 부분이 다르다.

wsl1에서는 얼핏 듣기로... power shell에서 가상으로 돌리는거였어서 현재 컴퓨터의 ip와 동일한 ip로 wsl이 실행되는데 wsl2는 이와 무관한 완전한 VM에서 돌아간다. 그래서 사용하는 ip도 다르다... 이 방식은 hyper-v가상방식으로 돌아가기때문에 현재 컴퓨터의 상위에 있는 공유기 네트워크에 wsl이 하나 추가되는게 아니라 wsl가 실행되고있는 컴퓨터 아래에 붙는다. 말로는 설명이 조금 힘든데 그림으로 표현하자면...

그런데 빡치는게... 각 구다리마다 방화벽이 다 막고있어서 외부포트를 뚫어주기 위해서는 이 포트를 다 뚫어야한다....
아... 이건 다음 글에서 쓸 글을 약간 먼저말했는데 여튼 이러한 문제해결을 다음 글에서 다뤄보겠다.

profile
개발하다가 나온 여러가지 고민과 그에 대한 해결책들을 간결하지않고 일기처럼 끄적여봅니다.

0개의 댓글