설맞이 데스크탑 포맷 대장정

My 44th Post


설맞이 데스크탑 포맷 및 개발 환경 세팅

by Enterprise Kim.T.H

if(wsl):
  if(android_haxm):
    print("use wsl version 1")
  else:
    print("use wsl version 2")
else:
  print("you can use anything")

데스크탑 포맷을 결심한 이유

이 모든 일의 시작은 유튜브를 보다가 니코쌤(Nomadcoders)이 올리신

M1-Pro Max vs Intel 영상에서부터 시작되었다. 생각했던 것 보다 훨씬 성능차이가

크게 나는 것을 Next.js 앱 빌드 시간을 통해서 볼 수 있었다.

생각해보니 최근들어 노트북으로 React.js앱을 빌드하는 것이 데스크탑에 비해서 굉장히 빨랐다는 것을 느꼈다.

그래서 나도 노트북(AMD)과 데스크탑(Intel)의 빌드 속도를 테스트 해보게되었다.

결과는 데스크탑의 참패였고 . . . 이렇게 하여 휴일에 데스크탑 포맷을 결심하게 된 것이다.


포맷

Window 포맷의 경우 너무 많이 해보기도 했고, 누구에게나 어려운 일이 아니었기 때문에

쉽게 진행을 하였다. 밑에서 자세히 설명을 하도록 하겠지만

WSL(Window Subsystem for Linux)1를 이용해야 하기 때문에 Window Pro 버전을 설치하였다.

진행을 하며 BIOS에서 부팅 순서를 USB로 바꿔주며,

이왕 BIOS에 들어간 김에 팬의 회전수도 조절해주었다.

그렇게 포맷은 너무 쉽게(예상대로) 마무리가 되었다.


개발 환경 세팅 - 첫째날(2022.02.02)

Windows가 나쁘다는 것은 아니지만 Windows에서 개발환경을 세팅하는 것은 정말 . . 힘들다.

여기서부터 문제가 발생하기 시작하였다. 저번과 다르게 WSL1를 너무 잘 사용한 나는

이번 개발 환경을 세팅할 때 Windows에서 정식으로 출시한 WSL2를 이용하여 개발환경을 세팅하였다.

Node.js와 Oh-My-Zsh를 깔고 powerlevel10k를 테마로 지정하고,

Windows에서 Flutter와 Python를 설치하며 순조롭게 끝나가는 듯 하였다.

하지만 Android Studio를 설치하는 도중 Intel-HAXM를 설치 중 오류가 발생하였다.

오류 내용 중 문제가 된 부분은 아래와 같았다.

  VMX support - no
  VMX enable - no
  EPT support - no
  Hyper-V disable - no

분명 BIOS에서 확인했을 때는 VMX(Virtual Machine Extensions)과

관련 기능이 enable로 되어있는데 수동으로 설치를 해보아도 해결되지 않았다.

그래서 일단 가끔 에뮬레이터 대신 사용하는 Bluestacks5를 설치하고

실행을 시키는 데 이상한 점을 발견하게 되었다.

32bit OS로 실행을 해야지 원활하게 사용할 수 있는데,

32bit OS를 사용할 수 없다고 나오는 것이었다.

여기서부터 무언가 크게 잘못되었다는 것을 느끼게 되었다.

그렇게 밤이 깊어가고 결국 해결하지 못한체 다음날이 밝게 되었다.


개발 환경 세팅 - 둘째날(2022.02.03)

둘째날 다시 Bluestacks에서 문제가 발생한 것에 집중하여 문제를 해결하고자 하였다.

구글링을 해봐도 이런 사례는 없는 것 같았고 혼자 해결을 해야 했다.

가만히 생각을 해보니 무언가 공통점이 있었다.

포맷을 하기 전에는 Android Studio와 Bluestacks를 정상적으로 이용하였고,

WSL의 버전만 1버전만 이용하였 . . 던 것이 기억났다.

WSL2와 WSL1의 설치 과정 중 유일한 차이점은 Windows기능 중 가상머신 플랫폼을 사용유무이다.

WSL1의 경우에는 사용하지 않지만 WSL2의 경우에는 사용해야만 한다.

문제점으로 예상되는 부분을 찾았으니 WSL버전을 1로 변환하고,

Windows기능 중 가상머신 플랫폼를 끄고 재부팅 후,

Intel-HAXM과 Bluestacks 32bit OS를 재설치 해보니 잘되었다.


문제점

WSL2 공식 문서를 확인하여 보면 VMWare나 Virtual-Box와 같은

가상 머신이 WSL2를 사용할 경우 정상적으로 작동하지

않는 Issue가 있는 것을 확인하였다. 이유는 Windows기능 중 가상머신 플랫폼

사용하게 되면 다른 가상머신을 사용할 수 없게 되기 때문이다.

따라서 만약 WSL2 이외의 가상머신, 즉 다른 에뮬레이터Intel-HAXM를 설치하여

안드로이드 에뮬레이터를 등을 이용해야 한다면 WSL1 버전을 사용해야한다.

그 와중에 Ruby 설치가 왜 이리 어려워


마치며

다음에는 이런일이 다시는 없기를 바라며. . .

그래도 이번에는 2일 밖에 안걸렸..

아래에 개발환경 세팅 명세를 정리하며 마치도록 하겠다.

그럼 안녕 !

Good Bye ~


  • 개발환경

    • Windows10 Pro - (WSL1 사용 시 필수)
    • 설치 순서
      1. WSL : 반드시 버전 1설치

        apt upgrade - 패키지 관리자 업그레이드

      2. JDK(15.0.2)
      3. Python
      4. Android Studio

        4.1 버전 설치 권장 Intel-HAXM 설치

      5. Bluestack