ps 명령
ps 명령은 해당 상황에서 가장 기본적이고 매우 강력한 프로세스 보기 명령입니다. 이 명령을 사용하면 어떤 프로세스가 실행 중인지, 해당 프로세스의 실행 상태, 프로세스 종료 여부 등을 확인할 수 있습니다. 프로세스가 종료되었는지 여부, 프로세스가 너무 많은 리소스를 점유하는지 등 간단히 말해 대부분의 정보는
ps 명령과 해당 매개변수
ps 명령을 실행하여 얻을 수 있습니다. 백그라운드 프로세스의 작동 상태를 모니터링하는 데 가장 일반적으로 사용됩니다. 백그라운드 프로세스는 화면 키보드와 같은 표준 입출력 장치와 통신하지 않으므로 해당 상황을 감지해야 하는 경우 ps 명령을 사용할 수 있습니다.
이 명령의 구문 형식은 다음과 같습니다.
ps [옵션]
-e는 모든 프로세스와 환경 변수를 표시합니다.
-f 전체 형식
-h는 제목을 표시하지 않습니다.
-l 긴 형식
-w 넓은 출력
a
다른 사용자의 프로세스를 포함하여 터미널의 모든 프로세스를 표시합니다.
r
실행 중인 프로세스만 표시
x
프로세스를 표시합니다. 터미널을 제어하지 않는
O [+|-] k1 [,[+|-] k2 [,…]] 단축 키의 단축키로 지정된 다단계 정렬 순서에 따라 프로세스 목록을 표시합니다. k1, k2.
ps에는 다양한 형식이 있습니다. 기본 순서는 사용자 지정에 따라 무시될 수 있으며 "-" 문자는 지정된 키의 방향을 바꿉니다. .
pids는 프로세스 식별자만 나열합니다. 쉼표를 사용하여 구분합니다. 프로세스 목록은 명령줄 매개변수의 마지막 옵션 바로 뒤에 제공되어야 하며 중간에 공백을 삽입할 수 없습니다. 4,5.
다음은 긴 명령줄 옵션을 소개합니다. 이러한 옵션은 모두 "--"로 시작합니다:
--sort X[+|-] key [,[+|-] key [,… ]] SORT KEYS 섹션에서 다중 문자 키를 선택합니다. 기본 방향은 숫자 오름차순 또는 사전 순서이므로 "+" 문자는 선택 사항입니다. 예: ps -jax -sort=uid,-ppid,+ pid.
--help는 도움말 정보를 표시합니다.
-version은 명령 버전 정보를 표시합니다.
정렬 키에 대해서는 이전 옵션 설명에서 언급했습니다. 정렬에 사용되는 값은 ps에서 사용하는 내부 값이며 일부 출력 형식의 더미 값에 사용되는 것은 아닙니다. 정렬 키 목록은
정렬 키 목록 c
cmd
실행 가능한 단순 이름
C
cmdline
전체 명령줄
f
flags
long 모드 플래그
g
pgrp
프로세스 그룹 ID
G
tpgid
control tty 프로세스 그룹 ID
j
cutime
누적 사용자 시간
J
cstime
누적 시스템 시간
k
utime
사용자 시간
K
stime
시스템 시간
m
min_flt
사소한 페이지 오류
좀비 프로세스 찾기
둘째, top 명령을 사용하여 현재 좀비가 있는지 확인할 수 있습니다. process
위 그림에서 좀비 프로세스의 개수를 확인할 수 있습니다. num Zombie, num이 0보다 크면 시스템에 좀비 프로세스가 있다는 뜻입니다
마지막으로 ps 명령을 사용하여 좀비 프로세스를 찾습니다
좀비 프로세스를 종료합니다ps -A -ostat,ppid,pid,cmd | grep -e '^[zZ]'직접 kill -9 Zombiepid가 효과가 없습니다. 이유는 다음과 같습니다. Zombie는 프로세스가 종료되었음을 나타냅니다. . 그러한 프로세스를 정리하려면 해당 상위 프로세스를 지우거나 커널이 이를 지운 후
kill -HUP ppid왜인지 모르겠습니다. 로그아웃했다가 다시 로그인한 후에도 여전히 좀비 프로세스가 발생합니다. LightDM의 버그인지 궁금합니다. 하지만 Ubuntu12.04 데스크탑 디스플레이 관리자는 LightDM이므로 kill -HUP는 적어도 로그아웃 역할을 수행하므로 다시 시작할 필요가 없습니다.
더 보기 Linux 시스템에서 프로세스 보기 및 좀비 프로세스 종료 메소드 관련 글은 PHP 중국어 홈페이지를 주목해주세요!