dukDukz
0825 Linux 본문
what is OS ??
- 우리가 접할 수 있는 운영체제는 WINDOW or IOS
OS
- Window
- Linux
- Unix
- Mac
Linux 의 장점
- 무료!
유닉스 : 리눅스랑 거의 흡사함
맥 : 유닉스 기반...
그래서 명령어같은게 비슷함..
리눅스를 왜쓰냐..?
CLI 보드로 실행할 수 있기 때문
CLI (커맨드 라인 인터페이스 - cmd 같은거)
<-> GUI (그래픽 유저 인터페이스 - 마우스로 클릭하면서 유저가 직접 사용)
GUI 를 쓰면 CLI 에 비해 컴퓨터 성능이 떨어진다.
- 그래서 터미널에서 쓰는 방법이 좋다는 것이다..!
비트코인 빌드를 할 때 리눅스에서 빌드할거임
# 빌드를 위해서,
- 명령어 배울거임..
- 환경세팅
- 언어 : 쉘 스크립트 도 배울것이다.
쉘 스크립트 -> 일정 시간에 똑같은 작업을 하겠다라고 코딩하고 얘가 해당시간이 되면 실행하는것
예 ) 카카오 점검시간 매일 12:00-12:11 이런식으로 이때 서버 점검시간 - 서버 잠깐 끄는..
리눅스 펭귄
wsl 검색하면 들어갈 수 있음
그리고 들어가서 cd ~ 로 가보자
명령어 중 ls -help 하면 설명이 쭉 나옴
- 파이프 라인 | : or 임
ps -ef | grep node : 현재 돌아가고 있는 시스템 확인
앞에 쓴 내용의 결과물을 바꿔주는것
$ ls -al | grep text.txt // ls -al 중 text.txt 만 보고싶다
$ ls --help grep print // print 에 관한 내용을 찾고싶다면 이렇게 (검색이라고 생각하면됨)
$ cat test.txt | grep error // error 부분 검색
여기 안에서 더 세부적으로 보고 싶다면
$ ls --help grep print
# vi 안하고 바로 볼수 있게
$ cat test.txt
# 디렉토리 생성
$ mkdir sample
# 파일 이동 (앞에 . 붙는거는 현재 디렉토리 기준으로)
$ mv ./test.txt ./sample/test.txt
text.txt 를 sample 폴더 안으로 옮기기
# 파일명 수정은
mv 명령어로 해야됨
$ mv ./test.txt ./test2.txt
파일명을 이동시킨다는 개념으로
파일 복사
파일 삭제
# io redirection
cat test.txt 하면 내용이 나오는데
출력된 내용을 그대로 다른 파일로 이동시키겠다
$ cat ./test2.txt > ./test.txt
> 로 이동시킴
: 로그 남길 때 많이 사용한다.
# 설치 (mysql, node js, ... 특정 파일 설치)
apt 는 리눅스의 패키지 매니저다
$ apt-get install [설치할것]
$ sudo su 해서 들어가서 비번 치고 들어가서
$ apt-get install htop
$ htop 이라고 치면 실행이 된다. - ps -ef 내용을 그래픽으로 보여주는것 F10 누르면 나감
# 리눅스에서는 인터넷에 접속 못하나요? sudo su 안에서.
보여줄 수 없을 뿐 가능하기는 하다.
$ curl [url]
$ crul http://google.com
$ crul http://naver.com
$ curl -O http://ingoos.co.kr/index.html
O : 알파벳 O : 내용을 가져오겠다는 옵션
포트를 열어주기.. 80번 열어주는.. 아마존에서 했었던거
그거를 여기서 할 수도 있다.
컴퓨터를 하나의 웹서버로 만들어보기..
node js 설치
일단 sudo su 에서 exit 로 나와서 cd ~ 로 간다.
$ sudo apt-get update 하면 비번 치고 하면 된다.
$ sudo apt-get install -y build-essential // 옵션 -y 는 모두 yes 하겠다.
$ sudo apt-get install curl
$ curl -sL http://deb.nodesource.com/setup_14.x | sudo -E bash --
$ sudo apt-get install -y node.js
확인 방법
$ node -v
$ npm -v
디렉토리 생성
$ mkdir server
$ cd server
$ npm init
$ npm install express
윈도우에서 node js 설치했는데 왜 여기서 또하냐?
OS 가 달라졌기 때문 윈도우 -> 리눅스
컴퓨터 두대를 쓰고 있다고 생각하면 된다 : 가상 머신
ㄴ정정 : NO, 윈도우에서 3000번 포트 사용하고 있으면 리눅스에서 사용불가 - 윈도우 위에 리눅스를 깔았기 때문에
server 디렉토리 안에서 server.js 를 만들어준다
~/server$ vi server.js
const express = require('express')
const app = express()
app.get('/',(req,res)=>{
res.send('hello world!!')
})
app.listen(3000,()=>{
console.log('server open 3000')
})
~/server$ node server
하고
크롬에서 http://localhost:3000/
들어가보면 열린다.
방화벽 풀기
서버 잠깐 끄고
~/server$ netstat -na
Command 'netstat' not found, but can be installed with:
sudo apt install net-tools
이런 오류가 뜸
~/server$ sudo apt-get install net-tools
이걸 깔아주면 된다.
그런 다음 다시 $ netstat -na
- 가 붙었다는 것은 옵션이 붙었다는것!
다시 $ node server 할건데 백그라운드로 할거니까 $ node server.js &
하고 다시 $ netstat -na
$ sudo iptables -| INPUT 1 -p tcp --dport 3000 -j ACCEPT
'웹 개발 > Linux' 카테고리의 다른 글
[Linux] 셸 스크립트 / zsh로 변경 / 셸 커스터마이징 / alias (0) | 2021.08.30 |
---|---|
[Linux] 리눅스 환경설정 (0) | 2021.08.30 |
[Linux] 명령어 (cd / ls / | 파이프라인 / cat / mkdir [디렉토리 생성] / mv[파일이동/ 파일명 수정] , > [출력값 이동]) (0) | 2021.08.30 |
[Linux] 왜 리눅스(Linux)를 배워야 할까? (0) | 2021.08.30 |
0825 방화벽 풀기 (0) | 2021.08.25 |