티스토리 뷰

1. nohup 이란?


no-hang-up signaling..즉 신호가 끊기지 않는다 는 뜻.





2. background process 와는 무엇이 다른가?



자 먼저 일반적인 프로세스 실행과 Background Process 실행을 비교해보자


1) 일반 실행

[root@localhost myWebRtc]# node server.js

Socket IO server has been started


- 내 ssh 프로세스가 node server.js 프로세스에 묶여버려 다른작업을 아무것도 하지 못한다.


2) Background 실행

[root@localhost myWebRtc]# node server.js &

[1] 31498


- Background Process로 실행되어 

내가 실행하려고 했던 node.js 웹서버가 돌아가는 도중에도 동시에 다른 리눅스 명령어를 칠 수 있다.




그럼 여기서 nohup 을 한번 보자.


3) nohup 실행

[root@localhost myWebRtc]# nohup node server.js &

[1] 31537

[root@localhost myWebRtc]# nohup: ignoring input and appending output to `nohup.out'


- Background 처럼 PID 가 나오는데.. 문구가 하나 더 추가된다.

로그가 실행한 폴더 nohup.out 으로 찍힌다는 것이다..

예전에는 & 로 실행하는 백그라운드 프로세스는 해당 터미널이 종료되면, 프로세서도 종속되어 같이 종료된다고는 하지만, 최근들어 굳이 nohup으로 돌리지 않아도, 잘 살아있다는 글들이 많다.


그럼, 동일한 임무를 수행하는데 왜 nohup으로 돌려야 하나???

nohup 으로 돌린 백그라운드 프로세스는, 차후에 로그를 확인 할 수 있다.

이 점 하나만으로도 백그라운드에서 어떤 동작을 하는지 궁금한 개발자는 nohup으로 돌릴만한 이유가 충분한 듯 하다.









공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함