본문 바로가기
카테고리 없음

시스템 관리자를 위한 w 명령어 (프로세스, 유저, 트렌드)

by techdebt 2025. 3. 29.
반응형

리눅스 서버를 운영하거나 관리하는 시스템 관리자에게 있어 실시간 사용자 상태와 시스템 부하를 한눈에 파악하는 것은 매우 중요합니다. 특히 여러 사용자가 동시에 시스템에 접속해 작업을 수행하는 환경에서는 각 유저의 세션, 실행 중인 프로세스, 시스템 부하 상태 등을 확인하는 기능이 필수적입니다. 이때 유용하게 활용되는 명령어가 바로 w입니다. w 명령어는 로그인한 사용자 정보와 현재 작업 상태, 시스템 부하 상태 등을 종합적으로 보여주는 실시간 모니터링 툴입니다. 이 글에서는 시스템 관리자 입장에서 w 명령어의 기능, 출력 항목, 활용 팁 등을 상세히 안내합니다.

로그인 유저 실시간 확인 - 프로세스 모니터링

w 명령어는 현재 시스템에 로그인한 사용자 정보를 빠르게 확인할 수 있게 해줍니다. 일반적인 who 명령어보다 더 많은 정보를 제공하며, 실시간 모니터링이 필요한 상황에 최적화된 도구입니다. 명령어를 입력하면 다음과 같은 항목이 출력됩니다:

  • USER: 로그인한 사용자 이름
  • TTY: 사용자 터미널 (예: pts/0)
  • FROM: 로그인한 호스트 또는 IP 주소
  • LOGIN@: 로그인한 시간
  • IDLE: 사용자가 입력을 멈춘 시간
  • JCPU: 터미널 전체에서 소비된 CPU 시간
  • PCPU: 현재 실행 중인 프로세스의 CPU 사용 시간
  • WHAT: 현재 실행 중인 명령어

또한, w -h 옵션을 사용하면 헤더 없이 깔끔하게 리스트만 출력되며, 스크립트 자동화에 유리합니다. 시스템 과부하 시 특정 사용자가 리소스를 과도하게 소비하고 있는지 확인할 때도 w 명령어는 첫 번째 점검 툴로 유용합니다.

시스템 부하 상태까지 한눈에 파악

w 명령어는 단순한 사용자 확인 기능을 넘어서 시스템 부하 상태도 같이 보여줍니다. 출력의 상단에는 다음과 같은 정보가 포함됩니다:

  • 시스템 현재 시각
  • 업타임(Uptime): 시스템이 켜져 있는 시간
  • 로그인 사용자 수
  • Load average (1분, 5분, 15분): CPU 부하 지표

예를 들어, load average: 0.75, 0.90, 1.20 과 같이 출력된다면, 시스템의 평균 부하가 점차 증가하고 있는 추세를 확인할 수 있습니다. 이를 통해 서버 증설 또는 부하 분산의 필요성을 판단할 수 있습니다.

활용 트렌드 및 실무 팁

최근에는 DevOps 환경에서도 w 명령어의 활용도가 높아지고 있습니다. 단일 명령어로 사용자와 시스템 상태를 동시에 확인할 수 있다는 점에서, CI/CD 서버나 원격 개발 환경에서도 필수 도구로 자리 잡고 있습니다.

  • 보안 점검: 예상치 못한 사용자의 로그인 여부 확인
  • 리소스 점검: 어떤 유저가 CPU를 집중적으로 사용하는지 확인
  • 서버 부하 조사: 부하 발생 시 실시간 접속자 활동 확인
  • 로그인 기록 자동화: w 명령어를 cron에 등록하여 주기적으로 상태 로그 저장

watch w 명령어를 활용하면 일정 간격으로 w 명령어를 실행해 실시간으로 사용자 상태를 모니터링할 수 있습니다. 보안적으로는 w 명령어 접근 권한을 제한하여 민감한 정보 노출을 막는 것도 중요합니다.

결론적으로, 시스템 관리자라면 w 명령어를 통해 사용자 세션, 실행 프로세스, 시스템 부하를 빠르게 점검하고 적절한 조치를 취할 수 있습니다. 지금 바로 w 명령어를 터미널에 입력해보고, 서버의 현재 상태를 직접 확인해 보세요.