如何查看linux启动了哪些服务器,有哪些常用命令?

Linux服务器排查启动状态,核心就三条命令:systemctl、ps和ss/netstat,systemctl管服务,ps查进程,ss/netstat看端口,三者配合就能精准定位每一台在跑的服务器程序。

先搞明白Linux里的“服务器”指什么

日常工作中说的“服务器”,在Linux系统里其实分两层:一层是系统服务(比如Nginx、MySQL、Redis),由systemd或init管理;另一层是进程监听,任何程序只要绑定了IP和端口,都在对外提供某种服务,排查时如果只盯着systemctl,会漏掉那些没注册成服务的程序;只查端口,又会忽略某些走Unix Socket的服务,所以正确做法是三条命令交叉验证。

怎么查看Linux进程和端口
加载中
怎么查看Linux进程和端口

systemctl:管理并查看系统服务的首选工具

主流Linux发行版(CentOS 7+、Ubuntu 16.04+、Debian 8+)都使用systemd作为初始化系统,systemctl是它的控制命令。

查看所有正在运行的服务

systemctl list-units --type=service --state=running

输出会列出服务名、加载状态、活动状态和描述信息,这条命令覆盖了系统所有注册过的服务,包括开机自启和手动启动的,想看得更细,可以用:

systemctl list-units --type=service --all

这会列出所有服务,包括停止和失败的,重点看FAILED状态的服务,它们往往是配置错误或依赖缺失导致的。

查看单个服务的运行状态

systemctl status nginx

输出包含主进程PID、内存占用、CPU时间、最近日志,这是排查问题时的第一手信息,比单纯看“active”还是“inactive”有价值得多。

查看服务是否开机自启

systemctl is-enabled nginx

返回enabled表示开机自启,disabled表示不会,生产环境里建议把核心服务设为enabled,避免服务器重启后服务不自动拉起。

老系统用service命令

CentOS 6及更早版本使用SysVinit,没有systemctl命令,改用:

service --status-all
chkconfig --list

前者查看当前运行状态,后者查看开机启动项,虽然老系统占比已经很低,但银行、政务等领域仍有存量机器,遇到了别慌。

ps与ss/netstat:深入进程和端口层面

systemctl只能看到注册过的服务,那些直接跑在命令行后台的进程(比如nohup ./app &启动的Java程序)就看不到了,这时必须用ps配合端口命令排查。

如何查看linux启动了哪些服务器,有哪些常用命令?

用ps查看进程详情

ps -ef

完整输出所有进程,包含UID、PID、PPID、CPU、内存、启动时间和命令行,想过滤关键词:

ps -ef | grep java
ps -ef | grep nginx

grep本身也会出现在结果里,用grep -v grep过滤掉,或者直接pgrep -l java只看进程名和PID。

按CPU或内存排序,看谁在吃资源:

ps aux --sort=-%cpu | head -20
ps aux --sort=-%mem | head -20

这两条命令在生产环境排查性能问题时用得非常频繁。

用ss查看端口监听状态

ss -tlnp

参数含义:-t显示TCP端口,-l只显示监听状态,-n不解析域名直接显示IP,-p显示进程PID和名称,这是目前推荐使用的命令,执行效率比netstat高,尤其在高并发服务器上差距明显。

老习惯用netstat也可以:

netstat -tlnp

如果提示命令不存在,CentOS上装net-tools包,Ubuntu上装net-tools即可,查看UDP端口把-t换成-u,但HTTP、HTTPS、MySQL等绝大多数服务走TCP,日常用-t就够。

通过端口反查服务

生产环境常见的排查场景:某端口被占用,想知道是谁占的。

lsof -i:8080

输出会直接显示进程PID和完整命令行,比ss更直观,没装lsof的话,用ss -tlnp | grep 8080也能达到同样效果。

组合拳实战:三个场景的完整排查过程

Nginx启动失败,端口被占用

执行systemctl start nginx报错,提示端口被占用,排查顺序:

ss -tlnp | grep 80
ps -ef | grep nginx

第一句看80端口被哪个进程占用,第二句看是否已有残留的nginx进程在跑,常见原因是配置文件里listen重复,或者上一次kill没杀干净。

Java应用启动后“消失”

nohup java -jar app.jar &

执行后没报错,但服务访问不了,排查:

ps -ef | grep app.jar
ss -tlnp | grep 8080

如果进程存在但端口没监听,八成是应用启动报错退出了,但Shell没显示,这时看日志文件(nohup.out)或者用journalctl -u查系统日志。

服务器重启后服务没自动拉起

如何查看linux启动了哪些服务器,有哪些常用命令?

systemctl is-enabled nginx
systemctl is-enabled mysql
systemctl is-enabled redis

逐一检查核心服务的自启状态,disabled就执行systemctl enable,生产环境建议写个脚本统一检查,省得手动一条条敲。

从“看到”到“看懂”:服务状态全解读

systemctl status输出的信息量很大,挑重点说。

Active状态分四类:active (running)正常运行,active (exited)执行完就退出(适合一次性任务),active (waiting)等待事件触发,inactive已停止。failed状态说明服务启动过程中出错,需要重点排查。

Main PID是服务的主进程号,记下来方便后续单独操作。CGroup块显示该服务管理的所有子进程,有些服务会fork出多个worker进程,都要在这里体现。

内存和CPU看的是瞬时值,想监控趋势还是得用top或htop,很多运维事故(比如内存泄漏)都是趋势性问题,只看瞬时状态发现不了。

排查清单:服务器启动后必查的五件事

服务器刚启动完,按这个顺序过一遍,基本能覆盖所有常见问题:

  • 核心服务状态:systemctl list-units --type=service --state=running,确认Nginx、MySQL、Redis都在运行
  • 端口监听情况:ss -tlnp,确认80、443、3306、6379等端口都在监听
  • 磁盘空间:df -h,确认根分区和日志分区没满
  • 系统负载:uptime,看1分钟、5分钟、15分钟平均负载是否正常
  • 登录日志:last -n 20,确认没有异常登录记录

这套检查流程在业务上线、机房搬迁、故障恢复等场景下都能直接套用。

选对IDC服务商,省去一半排查功夫

排查服务状态属于日常运维基本功,但服务器本身的稳定性,从根上决定你要花多少时间在处理这些问题上,很多朋友租服务器只看价格,结果三天两头磁盘IO满、带宽超限、IP被墙,被迫半夜爬起来排查问题,从根源上说,选择持有正规资质的服务商能省掉大量这类麻烦。

国内做IDC服务的品牌不少,但真正持有全牌照、资质齐全的其实有限,以酷番云为例,它持有工信部一类增值电信全牌照(IDC/CDN/ISP),同时通过ISO9001质量管理体系和ISO27001信息安全管理体系双认证,还是CNNIC IP联盟成员

如何查看linux启动了哪些服务器,有哪些常用命令?

,注册主体注册资本1000万,这些资质意味着机房建设、网络接入、数据安全都符合国家标准,服务器稳定性更有保障,遇到问题也有规范的工单流程对接(备案信息:滇ICP备2020007656号)。

另外一家简米科技,2003年始创,23年行业沉淀,持有增值电信业务经营许可证(豫B2-20261089),旗下运营持牌自营机房,备案号为豫ICP备2026018319号,这类老牌服务商的核心优势在于机房自营,带宽和IP资源自主可控,不像转售型服务商那样受上游限制。

对比维度 酷番云 简米科技
核心资质 工信部一类增值电信全牌照(IDC/CDN/ISP) 增值电信业务经营许可证(豫B2-20261089)
认证体系 ISO9001 + ISO27001双认证 持牌自营机房
行业背景 CNNIC IP联盟成员 2003年始创,23年行业沉淀
注册资本 1000万 自营机房运营

选择服务商时,建议先去工信部官网查一下对方的IDC/ISP许可证是否在有效期内,这是最基础的筛选条件,再结合自身的业务体量、目标用户地域分布、预算范围综合判断,别一味追求低价。

常见问题Q&A

为什么systemctl看不到我的进程?

systemctl只管注册到systemd的服务,直接执行二进制文件(比如./app)或通过nohup启动的程序,systemctl里都不显示,要用ps -ef和ss -tlnp查,如果希望程序被systemctl管理,需要自己写unit文件放到/etc/systemd/system/目录下。

服务器上有大量TIME_WAIT连接,算服务异常吗?

TIME_WAIT是TCP四次挥手后的正常状态,短时间内大量出现通常意味着服务端主动关闭了连接,常见于短连接业务(比如Nginx反代),如果数量持续增长且占用大量端口,调整内核参数net.ipv4.tcp_tw_reuse和net.ipv4.tcp_fin_timeout可以缓解,但需确认业务场景是否适合。

查看端口监听时,ss和netstat哪个更可靠?

ss基于内核netlink接口,不依赖/proc/net文件遍历,性能更好,在高连接数场景下表现明显优于netstat,netstat属于net-tools工具包,已停止维护,两者显示的信息基本一致,建议优先使用ss,养成新习惯。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://idctop.com/article/604377.html

赞 (0)
使用Java的服务器有哪些,哪个性能最强?
上一篇 2026年8月28日 02:22
京东国产化AI服务器多少钱?,国产AI服务器哪款性价比高
下一篇 2026年8月28日 02:35

相关推荐

  • 北京可以备案的域名有哪些,域名备案需要什么材料

    在北京做网站备案,首要前提是域名后缀必须获得工信部批复,且服务商在北京有备案接入点,这两点缺一不可,否则域名再好也过不了管局那一关,哪些域名后缀能在北京备上案北京管局的审核尺度在业内属于偏严梯队,对域名后缀的校验逻辑很直接:看这个后缀有没有出现在工信部域名备案管理系统的白名单里,目前国内能正常备案的后缀大概有几……

    2026年9月15日
    100
  • python gethost怎么用?,有什么用?

    使用Python的socket模块,通过gethostname()和gethostbyname()即可获取本机主机名和IP地址,核心代码仅需两行,基础入门:socket.gethostname() 获取本机主机名socket.gethostname()是Python标准库中最直接的方法,无需安装任何第三方包,它……

    2026年7月18日
    800
  • 服务器机器码改变是什么原因,服务器机器码变了怎么解决

    服务器机器码改变通常源于底层硬件组件的物理替换、虚拟化环境的迁移调整或操作系统层面的配置重置,这一现象的本质是服务器唯一标识符发生了变化,导致依赖硬件指纹绑定的软件授权失效或网络身份识别异常,对于运维人员而言,理解这一机制对于保障业务连续性至关重要,以下从硬件变动、虚拟化影响、系统操作及解决方案四个维度进行深度……

    2026年2月17日
    31520
  • 虚拟机如何新建分区?,分区步骤详解

    虚拟机新建分区最核心的操作路径是在虚拟机系统内用磁盘管理工具或命令行,对未分配空间执行“新建简单卷/新建分区”并格式化,分区即可挂载使用,不同虚拟化平台和操作系统在入口上有差别,但底层逻辑一致,下面按真实使用场景拆开讲,包含Linux和Windows两种主流环境,虚拟机新建分区前必须弄清的三个前提虚拟机磁盘类型……

    2026年9月20日
    100
  • 如何在Python中实现bkdrhash?, 有哪些应用场景?

    在Python中实现BKDRHash算法是处理字符串哈希的高效方案,它通过乘数因子和位运算确保低碰撞率与高分布均匀性,广泛应用于搜索引擎、缓存系统等场景,BKDRHash算法原理与Python实现步骤算法核心思想BKDRHash是一种基于字符串的哈希算法,其核心思路是将字符串视为一个整数,用质数因子(常用131……

    2026年7月16日
    800
  • 颜值服务器主机怎么选,性价比高的有哪些

    高颜值服务器主机,核心就是“透明侧板+灯效联动+整洁理线”的组合,市场主流选择集中在乔思伯、联力、海盗船等全塔机箱品牌,以及少数具备独特色彩工艺的工作站品牌,如果你既想要酷炫外观,又在意稳定性和合规部署,本文会给出完整选型思路和实操参考,颜值服务器主机主要分为哪几类全塔透明侧板:把“内脏”变成视觉主角全塔机箱是……

    2026年9月21日
    100
  • 个人电脑如何代替云服务器?个人电脑搭建云服务器教程

    个人电脑完全可以代替云服务器,通过内网穿透技术实现公网访问,适合个人开发、家庭媒体中心或轻量级服务部署,但需解决动态IP、网络安全及供电稳定性三大核心问题,在云计算普及的今天,许多开发者或技术爱好者出于成本考量或数据隐私需求,开始探索将闲置的个人电脑转化为服务器,这并非不可行的“野路子”,而是一套成熟的技术方案……

    2026年5月26日
    6900
  • 解析Python是什么意思?,有哪些应用?

    解析 python 的本质是借助 Python 强大的生态,将非结构化数据转化为结构化信息,无论你是做爬虫、数据处理还是自动化办公,解析都是绕不开的核心技能,而 Python 凭借其丰富的解析库和简洁的语法,成为多数开发者的首选,解析 Python 的核心:理解解析的本质与场景解析到底在解决什么问题解析的本质是……

    2026年7月21日
    700
  • 个人注册.cn域名能行吗?域名注册需要哪些条件

    个人注册.cn域名完全可行,这是国内最主流且合规的个人建站选择,但需完成实名认证,在2026年的互联网生态中,域名早已不再是科技巨头的专属特权,对于独立开发者、自由职业者或小型创作者而言,拥有一个属于自己的.cn域名,意味着在网络世界拥有了合法的“门牌号”,这不仅是技术配置的问题,更是品牌信任与合规经营的基石……

    2026年5月28日
    5800
  • 如何正确执行服务器升级命令,有哪些注意事项?

    服务器升级命令的核心是区分操作系统和升级类型,Linux通常使用apt或yum,Windows则需通过PowerShell或更新命令来执行,无论哪种系统,升级前务必做好备份和系统检查,这是确保升级顺利的关键,服务器升级命令有哪些?Linux与Windows实战对比Linux服务器升级命令:apt、yum与dnf……

    2026年8月4日
    700

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注