728x90
반응형

PID 4

Linux, 프로세스 확인(ps,pstree)

ps명령어란 현재 리눅스시템에서 사용중인 프로세스의 실행상태를 파악하고 점검하는 명령어이다. 간단하게 ps라는 명령어만 사용할시에는 현재 사용자가 실행한 프로세스에 대해서만 출력한다. [root@os1 ~]# ps PID TTY TIME CMD 2427 pts/0 00:00:00 bash 2594 pts/0 00:00:00 ps -. ps명령어의 주요 옵션 -e : 모든프로세스 출력 -f : 좀더 자세하게 출력 -u [계정명] : 해당유저가 실행한 프로세스만 실행 -. ps명령어 사용하기(-ef | grep) ps -ef 명령어를 사용하면 현재 시스템에 동작중인 모든프로레스가 자세히 출력되는데 이때 grep명령어와 함께 사용해서 내가 보고자 하는 서비스에 대해서만 출력할수 있음 >ssh 관련 프로세스만 ..

sh 와 source 차이

sh와 source( 명령어 차이 sh : 새 셸을 여는 스크립트를 실행할 때 새 셸에 명령을 입력하고 출력을 다시 현재 셸로 복사한 다음 새 셸을 닫습니다. 환경에 대한 모든 변경 사항은 새 셸에서만 적용되며 새 셸이 닫히면 손실됩니다. source : 스크립트를 소싱할 때 현재 쉘에 명령을 입력하는 것입니다. 환경에 대한 모든 변경 사항은 적용되고 현재 셸에 유지됩니다. 위에서의 "환경"은 현재 작업 디렉토리, 환경 변수, 쉘 설정(history and completion features) 과 같은 것입니다. 현재 실행 중인 쉘에서 환경을 변경하도록 하려면 source를 사용하고 그렇지 않으면 shell을 사용합니다. 파일이 실행 가능하고 현재 디렉토리에 있는 경우 myscript를 실행합니다. 선행..

[Linux] kill 프로세스를 '안전하게' 종료시켜보자

kill 명령어는 이름 때문에 프로세스를 강제로 종료시키는 명령어로 오해를 사기 쉬운데 실제로는 프로세스에 시그널(signal)을 보내는 명령어입니다. 이름이 kill 인 이유는 어떤 시그널을 보낼 지 지정하지 않으면 기본적으로 SIGTERM 시그널을 보내게 되는데 SIGTERM의 기본 동작이 프로그램 종료이기 때문입니다. 물론 프로세스에 SIGKILL 시그널을 보내 강제로 종료시킬 수도 있습니다. 그렇지만 일반적인 상황에서 SIGKILL 시그널을 보내는 것은 권장되지 않습니다. 본래 프로그램을 설계 할 때 대부분의 경우 종료 시그널을 받았을 때 처리하고 있던 데이터가 안전하게 정리 될 수 있도록 설계합니다. SIGTERM, SIGINT 등의 종료 시그널에 대해 시그널 핸들러(handler)를 등록하여 ..

ps에서 pid 목록만 가져와서 kill하기 [GAWK]

1. 원하는 프로세스 목록만 가져오기 - ps, grep 2. 프로세스 목록에서 pid만 가져오기 - AWK (GAWK) 3. kill 명령어로 한번에 프로세스 종료하기 4. Shell script를 이용하여 한번에 종료하기 작업할게 많아서 R이라는 프로그램을 거의 40개 가량 돌려야 할 때가 있었습니다. 근데 하나 실수한게 있어서 이 40개나 되는 프로세스를 다 죽여야하게 됐는데, nohup 백그라운드로 실행시키는 바람에 kill이라는 명령어로 하나 하나 다 따로 죽여야 하는 상황이 됐네요. Fig.1 ps -elf | grep sosal | grep exec (스압 --;) 1. 원하는 프로세스 목록만 가져오기 - ps, grep 40개를 하나하나 프로세스 아이디(pid)를 다 치기에는 너무 귀찮으니..

728x90
반응형