9 가지 방법을 찾기 위해 프로세스 ID 프로그램의 리눅스에서
경우에는 리눅스 시스템,때때로 당신은 무엇인지 알아낼 필요가 없 프로세스를 실행하는 PID 또는 PPID 묶여 있습니다. 그것은 많은 목적을 위해 사용될 수있다.
기본적으로,우리는 검색에 대한 PID 리눅스에서 죽이기 위하여 응답하지 않 프로그램에 의해 수행 할 수 있습니다 GUI 작업 관리자,하지만 CLI 가장 효율적인 방법을 취급 응답하지 않 프로그램입니다.때로는 GUI 기반 도구가 여전히 실행중인 숨겨진 프로세스를 표시하지 않을 수 있기 때문에 GUI 보다 낫습니다.,
이 튜토리얼에서는 Linux 에서 여러 가지 방법으로 실행되는 프로그램의 프로세스 ID(pid)를 찾는 방법을 보여줍니다.
프로세스 ID 란 무엇입니까(pid)
PID 는 Linux,Unix,MacOS 및 Windows 와 같은 대부분의 운영 체제 커널에서 일반적으로 사용되는 프로세스 ID 를 나타냅니다.
이것은 생성 될 때 각 프로세스에 자동으로 할당되는 고유 ID 입니다. 프로세스는 프로그램의 실행중인 인스턴스입니다.
부모 프로세스 ID 란 무엇입니까(PPID)
부모 프로세스는 하나 이상의 자식 프로세스를 생성 한 프로세스입니다., 각 자식 프로세스에는 부모 프로세스 ID(Ppid)가 주어지며 부모 프로세스는 작업을 완료하면 자식을 죽입니다.
이 주제와 관련되어 있으므로 아래 기사를 읽는 데 관심이있을 수 있습니다.
- 알아내는 방법 포트 번호를 프로세스를 사용하여 리눅스에서
- 3 쉬운 방법을 죽이거나 종료 프로세스에서의 리눅
각 시간 프로세스 ID 를 변경하고 모든 프로세스를 제외한 init. init 는 항상 시스템의 첫 번째 프로세스이며 다른 모든 프로세스의 조상입니다. 그것은 pid1 을 보유하고 있습니다.,
pid 의 기본 최대 값은32,768
입니다. 이 확인될 수 있 다음 명령을 실행하여
cat /proc/sys/kernel/pid_max
에서 귀하의 컴퓨터입니다.
32,768
는 32 비트 시스템에서 최대 값이지만 64 비트 시스템에서 최대 2^22(약 4 백만)의 모든 값으로 설정할 수 있습니다.
당신은 왜 그런 크기의 Pid 가 필요한가요? 이는 pid 를 즉시 재사용 할 수 없으며 잠재적 인 오류를 방지하기 때문입니다.,
당신을 찾을 수 있습니다 PID 의 실행되는 프로세스를 사용하여 시스템에서 아래 구 방법과 같은 pidof 명령,pgrep 명령,ps 명령,pstree 명령,ss 명령,netstat 명령,lsof 명령,퓨저 명령을 systemctl 명령입니다.
이것은 아래의 9 가지 방법을 사용하여 달성 될 수있다.
pidof:
pidof–실행중인 프로그램의 프로세스 ID 를 찾으십시오.pgrep:
pgre–이름 및 기타 특성을 기반으로 한 조회 또는 신호 프로세스.,ps:
ps–현재 프로세스의 스냅 샷을 보고합니다.pstree:
pstree–프로세스 트리를 표시합니다.ss:
ss 는 소켓 통계를 덤프하는 데 사용됩니다.netstat:
netstat 는 열린 소켓 목록을 표시합니다.lsof:
lsof–열려있는 파일을 나열합니다.,fuser:
융합기록 프로세스 Id 모든 프로세스의 하나 이상의 파일 열기systemctl:
systemctl 제어–systemd 시스템 및 서비스 관리자
이를 증명하기 위해,우리는 것을 찾기 위해 아파치 프로세스 ID. 우리 대신 프로세스 이름을 입력해야합니다.
1)Pidof 명령을 사용하여 Linux 에서 프로세스 ID(PID)를 찾는 방법은 무엇입니까?
pidof 명령은 실행중인 프로그램의 프로세스 ID 를 찾는 데 사용됩니다. 그것은 표준 출력으로 그 Id 를 인쇄합니다., 이를 입증하기 위해 시스템에서’Apache2’프로세스 id 를 찾는 것입니다.
# pidof apache2 2594 2365 2364 2363 2362 2361
위에서 출력을 할 수 있습의 어려움을 식별하는 프로세스 ID 표시하기 때문에 모든 Pid 를 포함하여(부모와 자녀)에 대하여 프로세스 이름입니다.
그래서 우리는 우리가 찾고있는 부모 프로세스 PID(PPID)를 찾아야합니다. 이것은 첫 번째 숫자가 될 것입니다. 내 경우에는3754
이며 내림차순으로 정렬됩니다.
2)Pgrep 명령을 사용하여 Linux 에서 프로세스 ID(PID)를 검색하는 방법은 무엇입니까?,
Pgrep 명령은 현재 실행중인 프로세스를 살펴보고 선택 기준과 일치하는 프로세스 Id 를 나열합니다.
# pgrep apache2236123622363236423652594
력과 비슷한’pidof’명령 출력하지만,그것을 정의 결과로 오름차순으로는 명확하게 보여주는 부모 프로세스에 PID 를 서 있습니다.내 경우에 그것은3754
.,
참고:를 식별하는 프로세스는 부모 프로세스 ID 문제가 될 수 있을 사용할 때’pidof’&’pgrep’명령으로,각 프로세스와 함께 제공 단일 PPID 고 여러 Pid 지 않는 차이점을 보여줍니다.
3)Pstree 명령을 사용하여 Linux 에서 프로세스 ID(PID)를 찾는 방법은 무엇입니까?
pstree 명령을 사용하면 프로세스를 실행하는 대로 나무 같은 형식으로 매우 편리한 방법을 표시하는 프로세스를 계층 구조 및 출력을 시각적으로 더 매력적입니다., Pstree 명령에 사용자 이름이 지정되면 해당 사용자가 소유 한 모든 프로세스가 표시됩니다.
pstree 는 시각적으로 동일한 분기를 대괄호에 넣고 반복 횟수로 접두사를 붙임으로써 병합합니다.
# pstree -p | grep "apache2" |--+-apache2(2361) | |-apache2(2362) | |-apache2(2363) | |-apache2(2364) | |-apache2(2365) | `-apache2(2594)
을 얻을만 부모 프로세스를 사용하여 다음과 같은 형식입니다.
# pstree -p | grep "apache2" | head -1 |--+-apache2(2361)
‘pstree’명령보다 훨씬 낫다’pidof’&’pgrep’명령이기 때문에 그것을 분리하는 부모와 자식 프로세스 가능하지 않습니다.,
4)Ps 명령을 사용하여 Linux 에서 프로세스 ID(pid)를 찾는 방법은 무엇입니까?
ps 를 표시하는 명령에 대한 정보의 선택을 활성 프로세스를 포함하는 프로세스 ID(pid=PID),터미널 프로세스와 연결(tname=TTY),누적된 CPU 시간은 hh:mm:ss 형식(시간=시간),그리고 실행 가능 이름(ucmd=CMD). 출력은 기본적으로 정렬되지 않습니다.
상위 프로세스 ID(PPID)는 위의 출력에서 프로세스 시작 날짜를 기반으로 쉽게 식별 할 수 있습니다., 우리의 경우’Apache2’프로세스에 시작December 11th
는 부모 프로세스 및 다른 사람은 자식 프로세스. Apache2 의 PID 는3754
입니다.
5)Ss 명령을 사용하여 Linux 에서 프로세스 ID(pid)를 찾는 방법은 무엇입니까?
ss 명령은 소켓 통계를 덤프하는 데 사용됩니다. Netstat 과 유사한 정보를 표시 할 수 있습니다. 다른 도구보다 더 많은 TCP 및 상태 정보를 표시 할 수 있습니다.
패킷,TCP,UDP,DCCP,RAW,Unix 도메인 등과 같은 모든 종류의 소켓에 대한 통계를 표시 할 수 있습니다.,
# ss -tnlp | grep apache2LISTEN 0 128 :::80 :::* users:(("apache2",pid=3319,fd=4),("apache2",pid=3318,fd=4),("apache2",,fd=4))
6)Netstat 명령을 사용하여 Linux 에서 프로세스 ID(pid)를 찾는 방법은 무엇입니까?
netstat 명령을 사용하여 인쇄 네트워크 연결,라우팅 테이블,인터페이스 통계,가장 무도회는 연결 및 멀티캐스트 회원 가입을 해야합니다. 기본적으로 netstat 는 열린 소켓 목록을 표시합니다.
주소 패밀리를 지정하지 않으면 구성된 모든 주소 패밀리의 활성 소켓이 인쇄됩니다. 이 프로그램은 사용되지 않습니다. Netstat 의 교체는 ss 입니다.
# netstat -tnlp | grep apache2tcp6 0 0 :::80 :::* LISTEN
7)Lsof 명령을 사용하여 Linux 에서 프로세스 ID(pid)를 찾는 방법은 무엇입니까?,
lsof 명령은 열린 파일을 나열하는 데 사용됩니다. Linux lsof 명령은 시스템에서 실행중인 프로세스에 의해 열려있는 파일에 대한 정보를 나열합니다.
8)퓨저 명령을 사용하여 Linux 에서 프로세스 ID(PID)를 찾는 방법은 무엇입니까?
유틸리티 융합기하며 표준출력에 쓸 프로세스 Id 의 프로세스를 실행하는 로컬 시스템에 있는 하나 이상 이라는 파일을 열 수 있습니다.
# fuser -v 80/tcp USER PID ACCESS COMMAND80/tcp: root www-data 3318 F.... apache2 www-data 3319 F.... apache2
9)Systemctl 명령을 사용하여 Linux 에서 프로세스 ID(pid)를 찾는 방법은 무엇입니까?
systemctl 명령은 systemd 서비스 관리자를 제어하는 데 사용됩니다., 이것은 기존의 SysVinit 시스템 관리를 대체하고,현대 리눅스 운영 체제의 대부분은 systemd 로 이동되었습니다.피>