피드로 돌아가기
Dev.toInfrastructure
원문 읽기
ss와 kill을 통한 Linux 포트 점유 프로세스 식별 및 안전한 제거 전략
How to Find and Stop the Process Using a Port on Linux
AI 요약
Context
서비스 기동 시 'address already in use' 에러로 인한 배포 및 실행 지연 발생. 특정 Port를 선점한 프로세스의 정확한 PID 식별과 안전한 종료 절차의 부재로 시스템 불안정성 초래.
Technical Solution
- netstat 대비 성능과 최신 표준을 지원하는 ss 도구를 활용한 Listening Socket 추적
- sudo 권한 확보를 통한 소유권이 다른 프로세스의 PID 및 상세 정보 노출 제어
- ps 명령어를 통한 프로세스 실행 경로와 유저 정보를 대조하여 오동작 방지 및 타겟 검증
- SIGTERM 신호를 우선 송신하여 커넥션 종료 및 상태 플러시를 유도하는 Graceful Shutdown 구현
- TERM 신호 무시 프로세스에 대해 SIGKILL(-9)을 적용하는 단계적 강제 종료 전략 채택
실천 포인트
1. ss -ltnp 명령어를 셸 Alias로 등록하여 포트 점유 확인 시간 단축
2. kill 실행 전 ps 명령어로 대상 프로세스의 정체와 소유 권한 반드시 재확인
3. 데이터 유실 방지를 위해 kill -9 전 SIGTERM으로 충분한 종료 대기 시간 확보