必须使用root权限运行ss、netstat或lsof等命令:sudo ss -tulnp可查看所有监听端口及进程,ss为银河麒麟v10默认预装的高效工具;netstat需先安装net-tools,适合兼容旧脚本;lsof支持精准反查端口归属;firewall-cmd仅显示防火墙放行策略,不反映实际监听状态。

如果您在麒麟操作系统中需要确认哪些端口正被本地服务监听,以便排查服务无法访问、端口冲突或安全审计问题,必须使用具备内核 socket 权限的命令工具;普通用户执行时会因权限不足而漏掉大量关键监听项,导致误判服务状态。
用 ss 查看所有监听端口(推荐)
ss 是银河麒麟 V10 默认预装的现代工具,解析速度快、输出干净,比 netstat 更可靠。
执行命令:sudo ss -tuln
这一步直接列出全部 TCP/UDP 监听端口,不含进程名,适合快速扫视。若输出为空,说明当前无服务主动监听任何端口。
加 -p 参数可显示进程信息:sudo ss -tulnp
注意:不加 sudo 时 -p 会失效,且多数监听项将不可见——【必须用 root 权限运行】,否则你会看到大量缺失行,误以为端口未被占用。
用 netstat 查看监听端口(兼容旧脚本)
netstat 功能全面但默认未安装,适用于需复用原有运维脚本或查看连接状态细节的场景。
第一步:安装 net-tools 工具包
sudo apt-get install net-tools
第二步:列出监听端口并关联进程
sudo netstat -tulnp
第三步:单独检查某个端口(如 3306)是否处于 LISTEN 状态
sudo netstat -tulnp | grep ':3306'
一款AI工具,主要用于将编码任务调度到本地 OpenAI Codex CLI,支持后台执行、状态轮询以及可交互式回答的澄清问题。适用于 OpenClaw 需要……,适合需要提升相关任务效率的用户。
若该行 State 列为 LISTEN 且进程列为 mysqld,则 MySQL 正常监听;若无输出,不代表端口空闲,可能只是服务未启动或绑定失败。
用 lsof 精确定位监听进程
方法一:查看所有 TCP 监听套接字
sudo lsof -iTCP -sTCP:LISTEN -n -P
方法二:反查指定端口归属(例如查 8080)
sudo lsof -i :8080
方法三:仅提取 PID 和进程名(便于后续 kill 或调试)
sudo lsof -t -i :22
这个命令返回纯数字 PID,可直接用于 systemctl stop 或 kill 命令,避免手动复制出错。
通过 firewall-cmd 验证端口是否对外放行
firewall-cmd 不反映真实监听状态,只显示 firewalld 策略中允许外部访问的端口。
执行命令:sudo firewall-cmd --list-ports
如果 80 端口在此列表中,说明防火墙已放行;但即使没出现,也不代表服务没监听——它可能只绑定了 127.0.0.1,或根本没启动。
确认 firewalld 是否运行:sudo firewall-cmd --state










