웹사이트 검색

Linux에서 실행 중인 프로세스를 보는 방법


이 페이지에서

  1. ps 명령으로 프로세스 나열\n
  2. pgrep으로 프로세스 찾기\n
  3. 최상위로 실행 중인 프로세스 보기\n
  4. htop으로 실행 중인 프로세스 보기\n
  5. 결론

사용자 애플리케이션에서 시스템 서비스에 이르기까지 Linux 시스템에서 실행되는 모든 것은 자체적으로 별도의 프로세스입니다. 컴퓨터가 빈 터미널 화면에 있더라도 의심할 여지없이 백그라운드에서 실행 중인 수많은 프로세스가 있습니다. 시스템의 모든 프로세스를 식별하는 데 사용할 수 있는 몇 가지 Linux 도구가 있으며 이 가이드에서 다루는 내용입니다.

실행 중인 프로세스를 확인하는 방법을 알면 어떤 것이 실행 중인지 확인하고, 필요한 경우 종료하고, 시스템 리소스(CPU 및 RAM)에 미치는 영향을 모니터링할 수 있습니다.

ps 명령으로 프로세스 나열

ps 명령은 -e 옵션을 사용하여 Linux 시스템에서 실행 중인 모든 프로세스를 나열할 수 있습니다.

ps -e

시스템이 특정 시간에 많은 수의 프로세스를 실행하는 것은 정상적인 일이므로 명령을 더 많은 프로세스로 파이핑하여 이 목록을 더 쉽게 걸러낼 수 있습니다. 예를 들어 한 번에 15줄을 보려면 다음과 같이 하십시오.

ps -e | more -15

ps의 출력은 실행 중인 모든 프로세스, 해당 프로세스 ID(PID로 약칭) 및 TTY(프로세스가 실행 중인 터미널 인터페이스)를 보여줍니다. TTY 열의 물음표는 프로세스가 터미널 인터페이스에 연결되어 있지 않고 백그라운드에서 실행 중임을 의미합니다.

프로세스를 종료하려면 프로세스의 PID를 알아야 하고 올바른 터미널 창에 다시 연결하여 열려 있는 프로세스로 돌아갈 수 있도록 TTY를 알아야 할 수도 있습니다.

ps의 또 다른 유용한 옵션은 -aux 옵션입니다.

ps -aux

이전 옵션과 마찬가지로 시스템에서 실행 중인 모든 프로세스를 나열합니다. 그러나 각 프로세스의 현재 CPU 및 RAM 사용량과 각 프로세스를 생성한 명령도 나열됩니다.

pgrep으로 프로세스 찾기

pgrep commad는 일종의 ps와 grep을 결합합니다. 검색 중인 프로세스의 이름 또는 이름의 일부를 지정할 수 있으며 pgrep은 해당 프로세스 ID를 반환합니다.

예를 들어 시스템에서 SSH 관련 프로세스를 검색하려면 다음을 입력합니다.

pgrep ssh

위의 스크린샷에서 볼 수 있듯이 pgrep은 PID가 1143인 SSH 프로세스를 찾았습니다. 추가 확인을 위해 ps 명령으로 확인하겠습니다.

ps -e | grep 1143

top으로 실행 중인 프로세스 보기

물론 최상위 유틸리티는 명령줄 도구이지만 현재 실행 중인 모든 프로세스의 대화형 출력을 제공하여 그래픽 인터페이스에서 볼 수 있는 정보를 표시합니다. 시작하기 쉽습니다. top을 입력하기만 하면 됩니다.

top

상단의 출력은 시스템의 전체 CPU 및 RAM 사용량을 포함하여 많은 정보를 제공합니다. 그러나 바로 아래에서 찾을 수 있는 프로세스 목록을 위해 여기에 있었습니다.

터미널 창은 실행 중인 프로세스 모든을 top에서 나열할 수 있을 만큼 충분히 크지 않으므로 top은 가능한 한 많은 프로세스를 표시하고 시스템 리소스 사용량별로 정렬합니다. 즉, 가장 많은 CPU와 RAM을 사용하는 프로세스가 맨 위에 나열됩니다. 덜 까다로운 프로세스는 목록의 아래쪽에 표시되며 터미널 창에서 잘릴 수 있습니다.

키보드의 화살표 키를 사용하여 프로세스 목록을 위아래로 스크롤합니다.

실행 중인 각 프로세스에 대해 꽤 많은 정보가 나열되어 있습니다. 다음은 이러한 다양한 열의 의미에 대한 간략한 설명입니다.

  • PID: 각 작업의 프로세스 ID입니다.\n
  • PR: 작업의 일정 우선순위입니다.
  • NI: 작업의 좋은 가치. 음수는 더 높은 우선 순위를 나타냅니다.
  • VIRT: 사용 중인 가상 메모리의 양입니다.
  • RES: 사용 중인 상주 메모리의 양입니다.
  • SHR: 사용 중인 공유 메모리의 양입니다.
  • S: 작업의 상태(R=실행 중, S=잠자기).\n
  • %CPU: 작업에서 사용 중인 현재 CPU 비율입니다.\n
  • %MEM: 작업에서 사용 중인 현재 RAM 비율입니다.\n
  • TIME+: 작업의 CPU 시간입니다.
  • COMMAND: 작업을 생성하는 데 사용되는 명령입니다.\n

언급한 바와 같이 top은 대화형이므로 몇 가지 키보드 단축키를 사용하여 깔끔한 작업을 수행할 수 있습니다. 아래에서 더 편리한 몇 가지를 살펴보십시오.

z 키를 눌러 실행 중인 프로세스의 색상 코드를 지정합니다. 이렇게 하면 실행 중인 작업을 휴면 또는 좀비 프로세스와 더 쉽게 구분할 수 있습니다.

c 키를 눌러 각 작업에 사용되는 전체 명령어를 가져옵니다. 사용된 옵션과 함께 절대 경로가 표시됩니다.

상단 유틸리티에서 바로 실행 중인 프로세스를 종료하려면 k 키를 누르세요. 이렇게 하면 유틸리티를 종료하고 별도의 kill 명령을 실행해야 하는 시간이 약간 절약됩니다. 종료하려는 프로세스의 PID를 입력하기만 하면 됩니다.

renice로 프로세스의 우선순위를 변경하려면 r 키를 누르세요. 갱신하려는 프로세스의 PID를 입력하십시오.

더 많은 옵션을 보려면 h (도움말) 키를 눌러 상단에서 할 수 있는 다른 모든 항목을 확인하세요.

상단 유틸리티 사용을 마치면 q를 눌러 도구를 종료하고 터미널로 돌아갈 수 있습니다.

htop으로 실행 중인 프로세스 보기

htop 유틸리티는 top에서 빌드되었으며 보기에 좀 더 사용자 친화적이고 즐겁습니다. 유일한 단점은 기본적으로 모든 Linux 배포판에 설치되지 않으므로 먼저 설치해야 할 수도 있다는 것입니다. 운영 체제 리포지토리에 있어야 하므로 패키지 관리자를 사용하여 설치하는 방법은 다음과 같습니다.

데비안과 우분투:

sudo apt-get install htop

CentOS 및 페도라:

dnf install htop

빨간 모자:

yum install htop

설치가 완료되면 htop을 입력하여 유틸리티를 실행하십시오.

htop

마우스를 사용하여 htop과 상호 작용할 수 있으며 다양한 키보드 명령이 터미널 창 하단에 나열됩니다. 대부분 top과 동일하게 작동하지만 이해하기 쉬운 깔끔한 인터페이스가 있습니다.

결론

이 가이드에서는 Linux 시스템에서 실행 중인 프로세스를 보는 몇 가지 방법을 보여 주었습니다. 사용하는 방법은 당면한 상황과 개인 취향에 따라 다르지만 각 방법에는 고유한 이점이 있습니다.

이 가이드에서 배운 내용을 사용하면 시스템에서 실행 중인 모든 프로세스, 시스템 리소스에 미치는 영향을 식별하고 적합하다고 판단되는 작업을 종료하거나 우선 순위를 다시 지정할 수 있습니다.