#0 인트로
준비물
- 윈도우 10, 2004 업데이트 필요.
- 소프트웨어 : 크롬 & VSC & 깃
#1 셋업
- VSC 커스터마이징
- 익스텐션 : Python, ESLint, prettier, material theme, material icon theme
- 파이썬은 따로 설치하고 나서 익스텐션 설치 가능. 지금 당장은 보류.
- 익스텐션 : Python, ESLint, prettier, material theme, material icon theme
- 윈도우와 리눅스
- 윈도우에 리눅스 서브시스템(WSL) 설치하면 리눅스 콘솔 사용 가능.
- 윈도우에 파이썬 설치돼있지 않음. 리눅스 없이도 쉽게 프로그램 설치하는 법!
- WSL 사용법 배우는 게 강의 목표.
- chocoatey: 윈도우에 뭔가를 설치하는 게 쉽게 도와줌.
- 설치 : https://chocolatey.org/install 에서 설치 명령 복사
- powershell을 관리자 권한으로 실행해서 붙여넣기 + 엔터
- 창 닫고 다시 powershell 열어서 choco 쓰면 작동함.
- 사용법 : 사이트 메인 화면에서 find packages
- adobe acrobat reader, flash player, chrome, java, firefox 등을 각 사이트에 들어가지 않고 콘솔로 설치 가능.
- powershell에서 choco 열고 설치하고 싶은 소프트웨어의 명령어 복사해서 붙여넣기
- WinRAR 설치 : "choco install winrar" 붙여넣고 엔터.
- 파이썬도 이렇게 설치. "choco install python3"
- 동의하냐고 물어보면 대답해줘야 함. 전체 동의는 A 입력.
- 장점 : 설치 후 프로그램이 작동하는지 콘솔창에서 바로 확인 가능.
- 예) powershell에 "python" 입력
- 초코로 설치하지 않으면 가끔 콘솔에서 뜨지 않는 경우 있음.
- 설치 : https://chocolatey.org/install 에서 설치 명령 복사
- 윈도우에 리눅스 서브시스템(WSL) 설치하면 리눅스 콘솔 사용 가능.
- powershell 대신 윈도우 터미널
- 터미널 화면을 커스텀할 수 있음.
- 설치 : ms store뿐 아니라 choco에서도 가능.
- powershell처럼 커맨드 사용 가능.
- vsc에 파일 열기
- 데스크탑으로 이동 : cd desktop
- hello.js 파일 열기 : code hello.js
- WSL
- 터미널 종류 : 탭 보면 powershell, 기본 명령 프롬프트 등 있음.
- WSL 추가하기
- enable wsl2 검색해서 설치하는 명령어 복사
- ubuntu 설치
- ms store에서 검색 후 다운
- wsl은 리눅스 계열 os 설치하게 해줌. ubuntu 편함.
- 설치 후 재부팅하기
- [에러] WslRegisterDistribution failed with error: 0x80370102
- 터미널에 msinfo32.exe -> hyper v 확인 https://stackoverflow.com/questions/62340566/error-when-running-an-installed-wsl-platform-wslregisterdistribution-failed-wit
- 펌웨어에 가상화 사용이 안 돼있음.
- 펌웨어에 가상화 사용 바꾸기 https://deepcell.co.kr/110
- #1.4 WSL2 (05:12) 코멘트
- 0x80370102 오류 나시는 분들 제어판 -> 프로그램제거 -> windows 기능 켜기/끄기 -> 가상 머신 플랫폼 체크 되어있는지 확인해주세요
- 체크 돼있음ㅠㅠ
- 우분투 설치한거 열었는데 에러 생길 때 해결 방법: "Windows 기능 켜기/끄기" 의 "Linux용 Windows 하위 시스템" 체크박스를 체크하고 재부팅 한다.
- 체크 돼있음...ㅠㅠ
- 그런데 Hyper-V가 체크 안돼있음! 하려고 해도 안됨. https://bbdata.tistory.com/6
- 결국 펌웨어 가상화 때문? 위 블로그 설명대로 bios로 들어가서 enabled로 바꿨다. 마침 내 컴도 asus라서 bios 들어가는 방식은 같았음. 부팅 시 asus 뜰 때 보니, 하단에 bios 모드로 가려면 del이나 f2키를 누르라고 써있었음.
- 펌웨어 가상화 했다!!
- 드디어 해결함ㅠㅠㅠ
- 0x80370102 오류 나시는 분들 제어판 -> 프로그램제거 -> windows 기능 켜기/끄기 -> 가상 머신 플랫폼 체크 되어있는지 확인해주세요
ubuntu를 지우고 chocolatey로 깔아봄.Error - hashes do not match. Actual value was '0B1ABE8D5DC3FF416A06C9524E4F61A1FDF6CED583CB9B297EE72DF1732FF403'.ERROR: Checksum for 'C:\Users\㉮㉮㉮\AppData\Local\Temp\chocolatey\wsl-ubuntu-1804\18.04.1.020181923\Ubuntu_1804.2019.522.0_x64.appx' did not meet '96E4E3E336F08DDE1DF81FA9C266C5C7750BA92729857E92BDE36BF84A1DB002' for checksum type 'sha256'. Consider passing the actual checksums through with --checksum --checksum64 once you validate the checksums are appropriate. A less secure option is to pass --ignore-checksums if necessary.The install of wsl-ubuntu-1804 was NOT successful.Error while running 'C:\ProgramData\chocolatey\lib\wsl-ubuntu-1804\tools\ChocolateyInstall.ps1'.See log for details.Chocolatey installed 2/3 packages. 1 packages failed.See the log for details (C:\ProgramData\chocolatey\logs\chocolatey.log).Failures- wsl-ubuntu-1804 (exited -1) - Error while running 'C:\ProgramData\chocolatey\lib\wsl-ubuntu-1804\tools\ChocolateyInstall.ps1'.See log for details.https://community.chocolatey.org/packages/wsl-ubuntu-1804 해결책?https://www.gep13.co.uk/blog/chocolatey-error-hashes-do-not-match 원인?
nico와 같은 명령으로 wsl 깔고 ubuntu 깔아봄.여전히 해결 못 함.
- 터미널에 msinfo32.exe -> hyper v 확인 https://stackoverflow.com/questions/62340566/error-when-running-an-installed-wsl-platform-wslregisterdistribution-failed-wit
- 리눅스 계정 만듦. 새로운 컴퓨터라 생각하고.
- username에 대문자 이니셜 적었더니
- adduser: Please enter a username matching the regular expression configured
via the NAME_REGEX[_SYSTEM] configuration variable. Use the `--force-badname'
option to relax this check or reconfigure NAME_REGEX.
- adduser: Please enter a username matching the regular expression configured
- 비밀번호는 입력해도 화면에 안 뜸.
- username에 대문자 이니셜 적었더니
- WSL2 업데이트
- dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
- 재부팅
- wsl --set-default-version 2
- WSL 2와의 주요 차이점에 대한 자세한 내용은 https://aka.ms/wsl2를 참조하세요
작업을 완료했습니다. - 커널 구성 요소 업데이트 하라고 안 나오고 이렇게 뜨면 된 것.
- WSL 2와의 주요 차이점에 대한 자세한 내용은 https://aka.ms/wsl2를 참조하세요
- wsl에, 우분투에 wsl2 사용할 거라고 알려줘야 함.
- 우분투 이름 확인 커맨드 : wsl --list --verbose
- Ubuntu-18.04
- NAME STATE VERSION
* Ubuntu-18.04 Stopped 2- 근데 나는 이미 버전이 2인데...??
- wsl2 사용 커맨드 : wsl --set-version Ubuntu-18.04 2
- "배포가 이미 요청된 버전입니다." 라고 나옴.
- bios : 컴퓨터의 기초가 되는 펌웨어. os는 bios 위에서 동작.
- 가상화 가능하게 하려면 구글링해서 내가 어제 했던 짓 해야 하는 듯.
- 이게 안되면 wsl 버전2 못 씀.
- 우분투 이름 확인 커맨드 : wsl --list --verbose
- dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
#2 터미널 커스텀
- 커스터마이징 : 리눅스 쉘을 보기 좋게 만듦.
- 탭의 아래 방향 화살표 설정 누르면 VSC 뜸.
- 난 그냥 윈도우 설정 화면 뜸. 왼쪽 메뉴바 하단의 JSON 파일 열기 클릭.
- Remote - WSL 익스텐션 설치하라고 뜨면 설치.
- 난 안뜸. 검색해서 설치.
- wsl을 vsc 내에서 사용할 수 있게 해줌. 리눅스 환경과 상호작용. 리눅스 기능 사용해서 코딩 가능.
- "profiles" 보면, list에 네 가지 항목 있는데 이게 탭의 화살표 누르면 나오는 것들.
- 이름을 바꿀 수도 있음.
- defaultProfile
- 새 탭 열었을 때 뜨는 기본값을 바꿀 수 있음.
- 각 profile의 고유 아이디가 있는데 원하는대로 바꾸면 됨.
- 탭의 아래 방향 화살표 설정 누르면 VSC 뜸.
- 새로운 터미널 설치
- 지금 있는 것 위에 딴 거 또 설치
- oh my zsh
- zsh 먼저 다운 받아야 함.
- https://github.com/ohmyzsh/ohmyzsh/wiki/Installing-ZSH#ubuntu-debian--derivatives-windows-10-wsl--native-linux-kernel-with-windows-10-build-1903
- 우분투에서 설치하는 법 : apt install zsh
- E: Could not open lock file /var/lib/dpkg/lock-frontend - open (13: Permission denied)
E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), are you root?- admin 유저가 아니어서 lock 파일 열 수 없다고 에러 남.
- 일반 유저와 admin 유저 있음. 후자를 root라고 함. 파일 시스템 바꾸는 등 위험한 작업하는 권한.
- 기본값으로 root 대신 일반 유저 사용. 이럴 땐 root 써야 함.
- 커맨드 앞에 sudo 씀. 그리고 비밀번호 치면 됨.
- 설치하겠냐고 묻는데 y 하면 됨.
- https://github.com/ohmyzsh/ohmyzsh/wiki/Installing-ZSH#ubuntu-debian--derivatives-windows-10-wsl--native-linux-kernel-with-windows-10-build-1903
- oh my zsh 설치
- https://github.com/ohmyzsh/ohmyzsh 깃헙 들어감
- Basic Installation에서 curl Command 복붙
- 파워쉘에서는 안되고 우분투로 해야 됨.
- 디폴트 쉘을 zsh로 바꾸겠냐고 물으면 y하고 비밀번호 입력.
- https://github.com/ohmyzsh/ohmyzsh 깃헙 들어감
- 이제 새 탭 열면 콘솔창이 바뀜.
- cd desktop
ls => 데스크탑의 파일들 보여줌.
code => 코드를 vsc에서 엶? - cd documents
code - cd desktop
code hello.js => hello.js라는 파일을 vsc로 만들어서 엶.
- cd desktop
- cd, clear, ls 등의 커맨드는 나중에 다룸.
- zsh 먼저 다운 받아야 함.
- 예쁘게 만들기
- 윈도우 터미널 색깔 바꾸는 법
- setting.json에서 "schemes" 위의 링크 클릭, Windows 터미널 색 구성표 | Microsoft Docs로 이동.
- 원하는 profile에 가서 원하는 색 scheme을 적으면 됨.
- 예) "colorScheme": "One Half Dark"
- terminal splash : 위 scheme이 마음에 안들면 https://terminalsplash.com/
- 원하는 테마의 코드 클릭해서 복사.
- "schemes": [] 안에 붙여넣기.
- colorScheme 이름도 바꿔줌.
- 모든 창에 color scheme 고정하기
- default 안에 "colorScheme": "Monokai Night"
- 그래도 아직 별로. 터미널 색깔과 다른 도구들 환경설정 옵션 제한됨.
- powerlevel10k 설치 : zsh 위한 테마
- oh my zsh로 설치.
- https://github.com/romkatv/powerlevel10k에서 커맨드 복사.
- git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k
- sudo 붙여야 함.
- 작동시키기 위해 '.zshrc' 파일 수정.
- root 경로에 생성돼있음. 우분투 최상위 디렉토리.
- code ~/.zshrc => "~"는 루트, ".zshrc"는 파일명
- [문제] 나는 왜 zshrc 파일을 새로 만들지?...
- ~/ .zshrc 라고 띄어쓰기 해서 그럼.
- [문제] 나는 왜 zshrc 파일을 새로 만들지?...
- vsc로 연 zshrc 파일의 내용은 터미널을 위한 환경설정 옵션.
- ZSH_THEME="powerlevel10k/powerlevel10k"
- 터미널 다시 켜면 다이아몬드처럼 보이냐고 물어봄.
- 네모 두개 있음. 폰트 때문.
- settings.json에 사용할 폰트 적어줘야 함.
- defaults 안에 "fontFace": "MesloLGS NF" 추가.
- [참고] 강의 영상 위 링크에서 다운 받아서 설치.
- VSC 설정에서 Terminal>Integrated: Font Family 찾아서 폰트 이름 붙여넣음.
- settings.json에 사용할 폰트 적어줘야 함.
- 이제 다이아몬드, 자물쇠, 나선형, 아이콘 사이 X표 뜨는지 확인.
- 프롬프트 스타일 고름.
- 니꼬 픽 : rainbow - unicode - 24hour format - ......
- 마지막 instant prompt mode는 뭔지 잘 모르니 3번.
- 네모 두개 있음. 폰트 때문.
- powerlevel10k 환경설정 새로 하고 싶으면 "p10k configure" 입력.
- vsc에서도 terminal 들어가보면 적용돼있음.
- 파워쉘로 뜨면, WSL로 바꾸는 법
- settings에서 "terminal > integrated > shell: windows" 찾기
- edit in settings.json 클릭
- "terminal.integrated.shell.windows": 에 WSL 추가
- "C:\\Windows\\System32\\wsl.exe"라고 쓰면 됨.
- 파워쉘로 뜨면, WSL로 바꾸는 법
- ls colors 바꾸기
- 형광 초록색 나오고 있는데 바꾸자.
- 터미널의 설정파일 수정해야 함.
- ".zshrc" 파일 열기
- 맨 아래에 코드 붙여넣기.
- 윈도우 터미널 색깔 바꾸는 법
'TIL' 카테고리의 다른 글
[TIL-55] 노마드코더 유튜브 클론코딩 #2.1~#2.3 (0) | 2021.11.04 |
---|---|
[TIL-53] 노마드코더 유튜브 클론코딩 #2.0~#2.0 (0) | 2021.11.02 |
[TIL-52] 노마드코더 유튜브 클론코딩 #1.0~#1.4 (0) | 2021.11.01 |
[TIL-51] 노마드코더 크롬앱(JS) 클론코딩 - 챌린지 최종 과제 (0) | 2021.10.31 |
[TIL-50] 노마드코더 크롬앱(JS) 클론코딩 #8.0~#8.2 (완강) (0) | 2021.10.30 |