이 서버에는 뭐가 돌아가고있지? 싶을때가있다. ssh로 들어가서.
1. 현재 실행 중인 프로세스 전체 확인
ps -ef --forest
또는
ps aux --sort=-%mem | head -n 20
→ 어떤 프로세스가 많이 돌아가고 있는지 한눈에 볼 수 있음
2. 리눅스 서비스(systemd)로 실행 중인 목록 확인
systemctl list-units --type=service --state=running
→ xxx.service, nginx.service, api.service, redis.service 같은 게 나오면 시스템 서비스로 실행 중
3. 포트 기반으로 어떤 서비스가 열려 있는지 확인
sudo lsof -i -P -n | grep LISTEN
또는
sudo netstat -tulnp
→ 예:
nginx
tcp 0 0 0.0.0.0:3000 0.0.0.0:* LISTEN 1234/node tcp 0 0 0.0.0.0:6379 0.0.0.0:* LISTEN 987/redis-server
→ 포트번호 + 프로세스로 어떤 서비스인지 추정 가능
4. Node.js 앱 추적 (PM2 사용 여부 포함)
ps -ef | grep node
pm2 list
→ 만약 pm2 설치돼 있다면 여러 앱 이름이 나올 수 있음
5. 로그가 저장되는 경로 추적
find /home -type f \( -iname "*.log" -o -iname "*.out" \) 2>/dev/null
또는 /var/log에서 먼저 탐색:
ls -lh /var/log/ ls -lh /var/log/nginx/
→ 유의미한 로그가 있으면 해당 프로세스를 역추적 가능
6. 컨테이너 외부에서 도는 프로세스 확인 요약
명령목적
ps -ef --forest | 전체 프로세스 구조 확인 |
systemctl list-units --type=service | systemd로 실행 중인 서비스 확인 |
`lsof -i -P -n | grep LISTEN` |
find /home -name "*.log" | 로그 파일 탐색 |
pm2 list | PM2로 관리되는 앱 확인 |
'TIL' 카테고리의 다른 글
VI 있어보이게 써보자.. (0) | 2025.07.04 |
---|---|
Console vs Winston (0) | 2025.07.04 |
JS의 동작원리 (0) | 2025.06.29 |
DB 차이점 정리 (0) | 2025.06.29 |
소켓에서 레디스를 왜 쓸까? (0) | 2025.06.29 |