查看Linux中有哪些服务器,没有一条命令能包打天下,先确认你要看的是本机服务、监听端口、局域网主机,还是服务器硬件型号;常用组合是 systemctl、ss、ps、nmap 和 dmidecode。 对多数运维场景,先看 systemd 服务,再查监听端口,最后按需扫描网络或读取硬件信息,效率最高,也最不容易把正常进程误判成异常。
先分清“服务器”在Linux里的四层含义
系统服务、端口、主机、硬件分别对应什么
在Linux里说“有哪些服务器”,可能是四件事:
- 系统服务:sshd、nginx、mysql、redis 这类守护进程。
- 监听端口:22、80、443、3306 等端口对应的网络服务。
- 网络主机:局域网里提供SSH、Web、数据库的Linux机器。
- 硬件设备:物理服务器的品牌、型号、CPU、内存、磁盘。
据工信部数据,国内政企服务器中Linux部署量占相当大比例,服务形态也复杂,只盯一个命令,很容易漏掉容器、旧版SysV服务或云厂商托管服务。
查看Linux中有哪些服务器服务时,systemctl是最稳的入口
现代 Linux 发行版大多使用 systemd,先跑:
systemctl list-units --type=service --state=running systemctl list-unit-files --type=service systemctl status sshd
第一条看正在运行的服务,第二条看所有已安装服务,第三条看单个服务状态,CentOS 6、Debian 旧版可能用:
service --status-all chkconfig --list
如果输出里出现 nginx.service、mysqld.service、sshd.service,基本就能判断这台机器承担了哪些服务器角色。
不要忽略服务与端口的对应关系
/etc/services 只是静态端口映射,不等于当前监听状态,真正要看的,是 ss 或 netstat 的输出,80 端口监听,可能来自 nginx,也可能来自 Apache,还可能来自 Docker 端口映射。
Linux怎么查看当前运行的服务器服务
用ss查看TCP和UDP监听
ss 是 net-tools 的现代替代品,推荐优先用:
sudo ss -tulnp sudo ss -tulnp | grep LISTEN
参数含义:
-t看 TCP。
-u看 UDP。-l只看监听。-n不解析域名。-p显示进程。
输出里 Local Address:Port 和 Process 两列最关键,看到 0.0.0:22 加 sshd,说明SSH服务对外开放;看到 0.0.1:3306 加 mysqld,说明MySQL只允许本机访问。
用netstat和lsof交叉验证
老系统或习惯 net-tools 的环境,可以用:
sudo netstat -tulnp sudo lsof -i -P -n | grep LISTEN
部分新系统默认不装 netstat,需要先装 net-tools。lsof 更适合按进程反查端口,
sudo lsof -i :80
能直接看出哪个进程占用了80端口。
用ps和pstree看进程全貌
端口和服务名有时对不上,进程树更直观:
ps aux --sort=-%mem | head -20 pstree -p
表格对比更清楚:
| 命令 | 主要用途 | 适用场景 |
|---|---|---|
| systemctl | 查看服务单元 | 现代 Linux 主流发行版 |
| ss | 查看监听端口 | 排查网络服务 |
| netstat | 查看端口和连接 | 老系统兼容 |
| lsof | 进程与文件/端口关联 | 定位端口占用 |
| ps/pstree | 查看进程树 | 确认实际运行进程 |
Linux查看服务器型号和硬件配置命令
物理服务器:dmidecode、lshw、lspci
要知道这台机器是什么服务器,先看硬件:
sudo dmidecode -t system sudo dmidecode -t bios sudo lshw -short lscpu free -h lsblk df -h ip addr
dmidecode -t system 通常能看到厂商、产品型号、序列号。lshw -short 适合快速盘点磁盘、网卡、内存。lscpu 看CPU架构和核心数。lsblk 看块设备。df -h 看挂载点空间。
云服务器:元数据和控制台一起看
云主机内部看不到宿主机硬件,更多依赖元数据服务:
curl http://169.254.169.254/latest/meta-data/ curl http://169.254.169.254/latest/meta-data/instance-type
不同云厂商的元数据地址和路径可能不同,但多数兼容 169.254.169.254,实例规格、镜像、地域、内网IP,通常以云控制台为准。
查看RAID、网卡和磁盘健康
硬件服务器还要看:
lspci | grep -i raid ethtool eth0 smartctl -a /dev/sda
smartctl 属于 smartmontools,需要单独安装,RAID卡、网卡速率、磁盘SMART信息,能帮助判断服务器是否处于亚健康状态。
北京Linux服务器运维如何查看本机开放了哪些服务
先看本机防火墙
服务监听不等于对外可达,北京地区很多政企网络有边界防火墙和主机防火墙双层策略,先查:
sudo firewall-cmd --list-all sudo ufw status verbose sudo iptables -L -n -v
CentOS/RHEL 常用 firewalld,Ubuntu 常用 ufw,看到端口放行,再结合 ss 判断服务是否真的在监听。
用nmap扫描本机和局域网
本机自检:
sudo nmap -sT -O localhost sudo nmap -sT -p 22,80,443,3306 192.168.1.0/24
业内专家指出,扫描只应对自己拥有或获得授权的网络进行,未经授权扫描可能违反《网络安全法》等法规,局域网发现Linux主机,还可以用:
ip neigh arp -a sudo nmap -sn 192.168.1.0/24 fping -a -g 192.168.1.0/24
nmap -sn 只做主机发现,不扫端口,适合先摸清网段里有哪些设备。
多台服务器批量检查
机器多的时候,Ansible 更省事:
ansible all -m shell -a "systemctl list-units --type=service --state=running"
没有 Ansible,也可以用 SSH 循环:
for ip in 192.168.1.10 192.168.1.11; do ssh $ip "ss -tulnp"; done
把结果重定向到文件,再做差异对比。
免费和付费Linux服务器监控工具有什么区别
行业共识认为,工具选择取决于团队规模和运维预算,查看Linux中有哪些服务器只是第一步,持续监控才是长期工作。
免费方案适合什么场景
- Netdata:安装快,实时指标直观。
- Prometheus + Grafana:指标采集和可视化强,适合自建。
- Zabbix:传统企业监控成熟,告警规则丰富。
- Cockpit:Web 控制台,适合单机管理。
- Glances:命令行快速查看资源。
免费工具部署成本低,但需要自己维护、调优和排障,告警通道、报表、权限体系往往要额外配置。
付费方案贵在哪里
- 云厂商云监控:和云资源联动好,按量或按实例计费。
- Datadog、New Relic:APM、日志、链路追踪集成度高。
- Zabbix企业版:官方支持、模板和合规能力更完整。
- 收费通常按主机数、指标量、日志量计算,规模越大成本越明显。
| 维度 | 免费工具 | 付费工具 |
|---|---|---|
| 初始成本 | 低 | 较高 |
| 维护成本 | 自己承担 | 厂商支持 |
| 告警能力 | 需配置 | 开箱即用 |
| 日志/APM | 部分支持 | 集成度高 |
| 适合规模 | 小到中型 | 中大型、强合规 |
把 systemctl、ss、ps、nmap、dmidecode 这几类命令按目标组合起来,就能覆盖大多数“查看Linux中有哪些服务器”的需求,先服务后端口,再主机和硬件,排查路径最短。
查看Linux中有哪些服务器:常见问题Q&A
查看Linux中有哪些服务器,ss和netstat为什么结果不同?
两者读取的内核接口和安装状态不同,ss 更现代,netstat 属于 net-tools,部分新系统默认未安装,权限也会影响进程名显示,建议用 sudo 执行,结果不一致时,以 ss 和 lsof 交叉验证为准。
查看Linux中有哪些服务器,nmap扫描局域网要注意什么?
只扫描自己拥有或明确授权的网段,生产环境扫描前要避开业务高峰,避免触发入侵检测或影响老旧设备,未经授权扫描他人网络,可能承担法律责任。
查看Linux中有哪些服务器,云服务器能看到宿主机上的其他服务器吗?
不能,云服务器运行在虚拟化隔离环境中,通常只能看到本实例内部的服务、端口和元数据,要查看同一账号下的其他云主机,应登录云控制台或调用云API。
首发原创文章,作者:王坚,如若转载,请注明出处:https://idctop.com/article/749438.html





