프로세스 유틸리티

유석현(SeokHyun Yu)·2023년 5월 9일

Linux

목록 보기
6/17
post-thumbnail

1. ps(process status)

  • 실행중인 프로세스 상태를 보여줌

  • 옵션

    • a: 현재 실행중인 모든 프로세스 출력
    • u: 사용자 이름과 프로세스 시작 시간 출력
    • x: 접속된 터미널뿐만 아니라 사용되고 있는 모든 프로세스 출력
    • 명령 'ps aux': 실행 중인 모든 프로세스 정보를 소유자 정보와 함께 출력
  • 상태

    • USER: 프로세스 사용자
    • RSS: 실제 사용되는 메모리량
    • TTY: 프로세스와 연결된 터미널 번호
    • TIME: 총 CPU 사용시간
  • STAT 값

    • S: 특정 이벤트가 끝나기를 기다리는 상태
    • Z: 작업이 종료되었으나 부모 프로세스로부터 회수되지 않아 메모리를 차지하고 있는 상태
    • R: 실행 중 혹은 실행될 수 있는 상태
    • T: 정지된 상태
    • D: 디스크 I/O에 의해 대기하고 있는 상태

2. pstree

  • 실행중인 프로세스들을 트리 구조로 나타냄

  • 옵션

    • -p: 프로세스ID 표시
    • -a: 명령행 인자를 포함한 정보를 트리구조에 표시
    • h: 현재 프로세스와 해당 프로세스의 부모 프로세스를 음영으로 강조해서 출력

3. jobs

  • 작업이 중지된 상태, 프로세스 대기 상태, 백그라운드로 진행중인 상태, 변경되었지만 보고되지 않은 상태 등을 표시
  • 출력된 목록 중에서 기호 ‘-’는 대기 상태 작업을 나타냄

4. bg와 fg

  • 명령어 뒤에 '&'를 붙여주면 백그라운드로 작업

  • <ctrl+c>: 포그라운드 작업 종료

  • 포그라운드에서 백그라운드로 전환: 먼저 실행중인 작업을 일시 중지 <ctrl+z> 시킨 후, bg 명령 수행

  • fg 형식: 'fg %작업번호' 또는 'fg 작업번호'


5. kill

  • 프로세스를 종료시킴

  • 옵션

    • -l: 시그널 종류 나열
    • -1: -HUP(hangup)과 동일, 프로세스 재시작
    • -9: 프로세스 강제종료

6. kill all:

  • 같은 데몬의 여러 프로세서를 한번에 종료

7. nice

  • 프로세스 사이의 우선순위를 확인하고 우선순위를 변경할수 있는 명령

  • NI 범위: -20 ~ 19

  • 옵션

    • -숫자: 사용하지 않으면 디폴트 10
      • 예) nice -10 bash (기존NI:-5): 기존 -5값임으로 '-5+(10)=5' 임

8. renice

  • 이미 실행중인 프로세스의 우선순위를 변경

  • 기존 NI 값에 상관없이 NI값을 설정


9. top

  • 리눅스 시스템의 운영 상태를 실시간으로 모니터링, 프로세스 상태 확인

    • ex) top -d 1 -p 4056: 프로세스 4056의 상태와 시스템 상태정보를 1초 간격으로 화면에 출력
  • 옵션

    • k: kill과 동일
    • n: 표시되는 프로세스 개수지정
    • i: 좀비 프로세스나 idle 프로세스의 정보출력 제어
    • r: NI 값을 조절할 때 사용하는 명령
    • s: 화면 갱신시간 변경
    • q: top 종료
  • 실행상태에서 T키를 입력하면 명령어라인 항목을 on/off 할수 있음


10. nohup

  • 프로세스가 중단되지 않고 백그라운드로 작업을 수행할 수 있게 함

  • 실행중인 프로세스의 터미널이 닫히더라도 계속적으로 작업이 수행

  • 명령행 뒤에 &를 붙여주어야 함


11. tail

  • 마지막 행을 기준으로 지정한 행까지 파일 내용의 일부 출력

  • 백그라운드 상태로 실행하려면 명령행 뒤에 &를 붙임

  • 조작 키

    • <ctrl+d>: 진행중인 작업 정상종료 또는 shell 상태면 로그아웃
    • <ctrl+c>: 진행중인 작업 취소
    • <ctrl+z>: 프로세스를 대기

12. cron

  • 주기적으로 반복되는 일을 자동으로 실행

  • 분/시/날/달/요일 순

    • 예) 0 9 1 1-8/2 * /bin/vipcheck.sh
    • 설명: 매년 1월부터 8월까지 두 달 주기로 1일 오전 9시 정각에 /bin/vipcheck.sh 스크립트를 실행
  • 옵션

    • -e : crontab을 작성하거나 수정
    • -u : 특정 사용자의 일정 수정
profile
Backend Engineer

0개의 댓글