프로필사진
DevOps 부트캠프 기록일지
DevOps_04_김재환
06_Study(시스템 모니터링(3)_lsof, netstat)
06_Study(시스템 모니터링(3)_lsof, netstat)

2023. 3. 14. 20:51부트캠프/DevOps (TIL)

lsof : 열린 파일 목록 출력

lsof 명령어를 사용하면 시스템에서 현재 열린 파일, 소켓, 디바이스 등을 확인할 수 있습니다. 이는 특정 프로세스가 사용하는 파일과 포트를 찾는 데 유용합니다. lsof는 시스템 관리자와 개발자들이 문제를 해결하는 데 도움이 되는 강력한 도구 중 하나입니다.

lsof 명령어를 실행하면 출력 결과에는 다음과 같은 정보들이 포함됩니다.

  • 파일 디스크립터(File descriptor)
  • 파일 타일(File type)
  • 파일 소유자(File owner)
  • 파일이 사용 중인 프로세스(Process that is using the file)
  • 파일 크기(File size)
  • 파일 경로(File path)

실제로 제 터미널에 lsof 명령어를 사용해본 결과는 아래와 같습니다.

위에 출력된 칼럼별 의미는 다음과 같습니다.

  • COMMAND : 실행 명령어
  • PID : 프로세스 ID
  • USER : 실행한 사용자
  • FD: File Descriptor, 파일의 종류.
    • cwd : current working directory
    • rtd : root directory
    • mem : memory-mapped file
    • txt : program text (code and data)
  • TYPE : 파일 종류
    • DIR : 디렉토리
    • REG : Regular File
    • CHR : Character Special File
    • unix : UNIX domain socket
  • DEVICE : 장치 번호
  • SIZE/OFF: 파일의 크기나 오프셋
  • NODE : 노드 번호
  • NAME : 파일 경로 및 파일 이름

 

netstat : 네트워크 상태 모니터링

netstat 명령어는 리눅스에서 네트워크 연결 및 통계를 보여주는 명령어입니다. netstat 명령어는 다양한 옵션을 사용하여 다음과 같은 정보를 제공할 수 있습니다.

  • 활성 TCP/IP 연결 표시: netstat -a 또는 netstat -an
  • 활성 수신 대기 중인 포트 표시: netstat -l 또는 netstat -ln
  • 각 프로토콜의 네트워크 통계 표시: netstat -s 또는 netstat -s -p tcp
  • 라우팅 테이블 정보 표시: netstat -r 또는 netstat -rn
  • 각 연결에 대한 PID 및 프로세스 이름 표시: netstat -p 또는 netstat -pn

netstat 명령어는 네트워크 문제 해결, 잠재적인 보안 위협 식별 등에 유용한 도구입니다.

 

추가 기능 명령어는 아래 사이트에 자세하게 기술되어 있습니다.

https://www.tecmint.com/command-line-tools-to-monitor-linux-performance/

 

출처

https://ko.wikipedia.org/wiki/Lsof

https://ko.wikipedia.org/wiki/Netstat