른록노트

[CentOS7] ps와 signal(설명), kill 명령어 본문

Server,OS/[Linux]

[CentOS7] ps와 signal(설명), kill 명령어

른록 2018. 4. 24. 12:22

@ ps : 프로세스를 보는 명령어


ps --help all (아래에 첨부)


자주 사용하는 옵션

ps -ef | grep ???


주요옵션
-f  : 리스트로 모든 형식을 나타냄
-l : -f 보다 더 많은 정보를 출력
-a : 최근에 많이 실행된 제어 터미널을 가진 프로세스의 정보를 출력
-A, -e : 현재 시스템에서 실행 중인 모든 프로세스 정보를 출력


컬럼 설명

UID : 프로세스의 소유자

PID : 프로세스 ID, 실행된 프로세스에 부여된 숫자

PPID : 프로세스를 생성한 부모 프로세서의 PID

C : 프로세스 스케줄링을 위한 CPU 사용량, 현재는 사용되지 않는 필드

STIME : 프로세스가 시작된 시간을 '월:일' 혹은 '시:분:초'로 나타냄

TTY : Teletype의 약자, 프로세스가 연결된 제어 터미널을 표시, '?'은 제어 터미널에 연결되어 있지 않음을 나타냄

TIME : 프로세스에 의해 사용된 CPU 사용 시간을 '시:분' 형태로 나타냄

CMD : 실행된 프로세스 명을 나타냄


@ Signal 


Signal이란 : UNIX 시스템에서 지원하는 소프트웨어 인터럽트, 프로세스는 시그널을 이용하여 다른 프로세스에게 이벤트를 전달 할 수 있음, 전달된 이벤트를 프로세스 간 통신 수단으로 사용 가능


시그널이 발생하는 경우

- 외부에 의해서

- 에러에 의해서

- 이벤트에 의해서

- 인위적인 시그널 발생



@ kill : 프로세스에 시그널을 보내는 명령어


주요옵션

-l : 지원 가능한 시그널 목록을 출력


-1 (-SIGHUP) HANG UP, 터미널 연결이 끊어지는 경우에 프로세스에게 전달되는 시그널

-2 (-SIGINT) INTERRUPT, CTRL+C 조합키를 누르면 포그라운드 프로세스 그룹 내 모든 프로세스에게 전달되는 시그널, 이 시그널을 받은 프로세스는 디폴트로 종료됨

-3 (-SIGQUIT) CTRL+W 조합키를 누르면 전위 프로세스 그룹 내에 모든 프로세스에게 전달되는 시그널, 이 시그널을 받은 프로세스는 디폴트로 종료되며 CORE파일을 생성함

-8 (-SIGFPE) 커널에 의해 발생, 산술 연산 에러를 내는 프로세스에게 시그널이 전달

-9 (-SIGKILL,-KILL) 시그널 9(=kill)을 받은 프로세스는 중료됨 (강제종료)

-11 (-SIGSEGV) 커널에 의해 발생, 잘못된 메모리를 참조하는 프로세스에게 전달되는 시그널

-14 (-SIGALRM) ALARM() 함수가 설정된 타이머에 의해 발생됨

-15 (-SIGTERM) TERMINATE, KILL 명령어가 보내지는 기본 시그널, 이 시그널을 받은 프로세스는 디폴트로 종료됨

-17 (-SIGCHLD) 프로세스의 종료나 정지의 경우에 부모 프로세스에게 전달되는 시그널

-18 (-SIGCONT) CONTINUE, STOP 시그널로 정지된 프로세스를 복원함

-19 (-SIGSTOP) STOP, 프로세스를 정지시키는 프로세스 제어 시그널, 무시하거나 임의로 처리할 수 없음




9는 강제종료

15는 정상종료


참고사이트

http://eunguru.tistory.com/96




ps --help all


Usage:

 ps [options]


Basic options:

 -A, -e               all processes

 -a                   all with tty, except session leaders

  a                   all with tty, including other users

 -d                   all except session leaders

 -N, --deselect       negate selection

  r                   only running processes

  T                   all processes on this terminal

  x                   processes without controlling ttys


Selection by list:

 -C <command>         command name

 -G, --Group <GID>    real group id or name

 -g, --group <group>  session or effective group name

 -p, p, --pid <PID>   process id

        --ppid <PID>  parent process id

 -q, q, --quick-pid <PID>

                      process id (quick mode)

 -s, --sid <session>  session id

 -t, t, --tty <tty>   terminal

 -u, U, --user <UID>  effective user id or name

 -U, --User <UID>     real user id or name


  The selection options take as their argument either:

    a comma-separated list e.g. '-u root,nobody' or

    a blank-separated list e.g. '-p 123 4567'


Output formats:

 -F                   extra full

 -f                   full-format, including command lines

  f, --forest         ascii art process tree

 -H                   show process hierarchy

 -j                   jobs format

  j                   BSD job control format

 -l                   long format

  l                   BSD long format

 -M, Z                add security data (for SELinux)

 -O <format>          preloaded with default columns

  O <format>          as -O, with BSD personality

 -o, o, --format <format>

                      user-defined format

  s                   signal format

  u                   user-oriented format

  v                   virtual memory format

  X                   register format

 -y                   do not show flags, show rss vs. addr (used with -l)

     --context        display security context (for SELinux)

     --headers        repeat header lines, one per page

     --no-headers     do not print header at all

     --cols, --columns, --width <num>

                      set screen width

     --rows, --lines <num>

                      set screen height


Show threads:

  H                   as if they were processes

 -L                   possibly with LWP and NLWP columns

 -m, m                after processes

 -T                   possibly with SPID column


Miscellaneous options:

 -c                   show scheduling class with -l option

  c                   show true command name

  e                   show the environment after command

  k,    --sort        specify sort order as: [+|-]key[,[+|-]key[,...]]

  L                   show format specifiers

  n                   display numeric uid and wchan

  S,    --cumulative  include some dead child process data

 -y                   do not show flags, show rss (only with -l)

 -V, V, --version     display version information and exit

 -w, w                unlimited output width


        --help <simple|list|output|threads|misc|all>

                      display help and exit



반응형
Comments