Powershell을 실행시키면, 아래 스크린 샷에서 wsl 치기 전엔 PS C:\Users\leeyj 에 위치해 있었다.
즉, 아직 리눅스(우분투)가 아닌 윈도우의 C드라이브\사용자\leeyj(내계정) 에 위치 중이다.
이 때 wsl을 입력하면,
welcome to Ubuntu 가 뜨면서 초록색 글씨로 leeyj라는 리눅스(우분투) 계정에 접속해있음을 알 수 있다.
leeyj@DESKTOP-K4UC22N:/mnt/c/Users/leeyj$
: (colon) => 이 콜론표시가 구분값 역할을 해주는데,
그 뒤로 나오는 /(slash) 부터가 directory 쉽게 말하면 폴더의 위치, 경로를 알려준다.
즉, 지금 나는 mnt 안에 있는 c 드라이브 안에 있는 Users(사용자) 안의 leeyj 라는 directory 안에 있는 것이다.
#2. Node.js를 설치해볼까?
Node.js란 ?
html, css를 거쳐 javascript에 대해서 배웠었는데,
본질로 돌아가서 이 html,css를 움직이게 도와주는 js 해석을 누가 해줄까에 대한 생각을 해보자..
그것은 바로, 브라우저 자체에 내장된 JS 해석엔진들이다.
Chrome, Edge, Firefox 등 각 브라우저들은 자신들만의 js 해석엔진들을 가지고 있다.
그 중에서도대표적으로 chrome의 V8 엔진이 있는데, 크롬이 빠른 이유가 js 해석하는데 성능이 좋아서라고 한다.
이렇게 성능좋은 V8 엔진을 기반으로 만들어진 게 node.js 고, 브라우저 외의 공간에서도 JS를 실행할 수 있게 해준다.
그래서, Node.js 홈페이지에 들어가보면, 아래와 같은 문구가 쓰여져 있다.
** 런타임이란 뭘까?
어떤 프로그래밍언어가 돌아가는 상태, 실행환경이라고 보면 된다.
따라서, JS 런타임이란?! JS가 구동되는 환경이라고 생각하자. JS 가 실행되는 환경 (런타임)에는 브라우저도 있고, 브라우저 외의 Node.js도 있는 것이다.
결론 : 이 Node.js에서 Javascript를 사용하여 브라우저 바깥에서 서버만들기가 가능해졌다고 생각하자.
다시 본론으로 돌아와서, 리눅스 명령어로 node를 쓰면 nodejs를 실행하게끔 만들어보자.
#1. node.js가 안 깔린 상태에서 node를 쳐보자.
(나는 cd ~ 명령어로 home의 내 계정에 들어와서 node를 쳤다)
#2. 커맨드창에 알아서 추천 멘트를 써준다. sudo apt install nodejs 가 뜰 것이다.
sudo apt install nodejs 를 쳐보자.
** SUDO가 뭐지?
SUbstitute DO의 약자 일반 사용자가 루트 권한을 임시적으로 획득하여 특정 명령을 할 수 있도록 해준다. 관리자 권한으로 실행하기같은 뜻인듯 ㅋ (원랜 super user do 였는데 프로그램 기능이 확장되서 substitute user do로 의미가 확장된거라고 한다. 몇몇 글을 보니 옛날엔 컴퓨터 한대로 여러 명이 같이 썼기 때문에 super user 외에 다른 사용자들이 있었을텐데 이젠 1인 1pc 이다보니 super user do에서 substitute user do로 의미가 확장된게 아닐까싶다 ㅋ )
super user do 라는건 가장 최상위 사용자, root가 실행시키는 거고, substitute user는 다른 사용자를 의미하는데, super user(root user)가 root 권한을 준 것을 의미하는 것 같다.
생각해보니 어제 ubuntu를 처음 설치할 때 계정명/비번을 설정하지 않아서 root 계정으로 접속되었는데, 그게 그 이유인가보다. sudo와 관련된 밈 귀여워서 가져와봤다 ㅋ
#3. 그러면 계정 설정할 때 썼던 비번을 입력하라고 뜬다.
비번을 치면 또 sudo apt update 라는 줄이 뜨고 뭔가 업데이트 하란 뜻 같아서 커맨드창에 저걸 쳤다.