在 Ubuntu 中,可以通过以下几种方法查看指定端口的信息,包括哪些进程正在使用它,以及端口的状态。
ss 命令ss 是查看套接字信息的现代工具,功能强大且速度快。
bash
复制代码
ss -lntp | grep :<端口号>
-l:只显示监听(LISTEN)套接字。-n:以数字格式显示端口号。-t:显示 TCP 套接字。-p:显示进程相关信息。查看监听 8080 端口的进程:
bash
复制代码
ss -lntp | grep :8080
netstat 命令如果系统中安装了 net-tools 包,可以使用 netstat。
net-tools(如未安装)bash复制代码sudo apt update
sudo apt install net-tools
bash
复制代码
netstat -lntp | grep :<端口号>
选项说明
:
-l:只显示监听的端口。-n:以数字格式显示地址和端口号。-t:显示 TCP 端口。-p:显示进程信息。查看监听 80 端口的进程:
bash
复制代码
netstat -lntp | grep :80
lsof 命令lsof 可以列出打开的文件,包括网络端口。
bash
复制代码
sudo lsof -i :<端口号>
选项说明
:
-i :<端口号>:匹配特定端口。查看占用 22 端口的进程:
bash
复制代码
sudo lsof -i :22
fuser 命令fuser 是一个简单的工具,用于显示正在使用文件或套接字的进程。
bash
复制代码
sudo fuser <端口号>/tcp
查看占用 3306 端口的进程:
bash
复制代码
sudo fuser 3306/tcp
nmap 检查端口(远程或本地)nmap 是一个网络扫描工具,可以用来检查端口是否开放。
nmapbash复制代码sudo apt update
sudo apt install nmap
bash
复制代码
nmap -p <端口号> 127.0.0.1
扫描本地 443 端口:
bash
复制代码
nmap -p 443 127.0.0.1
ss 或 lsof。nmap。sudo),以查看系统级进程使用的端口。