Linux 检查占用埠号进程


在 Linux 要检查那一个进程 (process) 占用特定埠号, 可以用 netstat 或 lsof 来做, 例如想列出所有开启的埠号, 可以 netstat 指令:

# netstat -ntlp

假如只想输出占用埠号 80 的进程, 可以加上 grep 过滤:

# netstat -ntlp | grep :80
tcp   0   0 :::80   :::*   LISTEN   779/httpd

上面可以看到是 httpd 占用埠号 80, 进程的 pid 是 779

除了用 netstat 外, 也可以用 lsof (List Open Files), losf 是非常实用的系统监控工具, 它可以列出进程开启的档案资料, 包括 pipe, socket, 目录, 装置等, 所以 lsof 一样可以检查埠号占用进程, 例如检查占用埠号 80 指令是这样:

# lsof -i tcp:80

轮出结果类似这样:

可以看到占用埠号 80 的进程是 httpd, 用户是 root, pid 是 779, 而后面十几行是 apache 的子进程。

Tags:

Leave a Reply