服务器查看是运维和管理工作的核心环节,通过系统化监控和分析,可及时发现潜在问题、优化性能、保障服务稳定运行,以下从多个维度详细说明服务器查看的方法及常用工具。

基本信息查看
服务器基本信息包括系统版本、硬件配置、网络参数等,是运维的基础。
Linux系统
- 系统版本:通过
cat /etc/os-release查看发行版信息(如Ubuntu、CentOS),uname -a显示内核版本及系统架构。 - 硬件配置:
lscpu查看CPU型号、核心数;free -h查看内存总量及使用情况;df -h查看磁盘分区及剩余空间;lspci查看PCI设备(如网卡、显卡)。 - 网络参数:
ip addr或ifconfig查看网卡IP、子网掩码;route -n查看路由表;cat /etc/resolv.conf查看DNS配置。
Windows系统
- 系统版本:
systeminfo | findstr /B /C:"OS Name"或通过“控制面板→系统”查看。 - 硬件配置:
wmic cpu get name查看CPU型号;wmic OS get TotalVisibleMemorySize,FreePhysicalMemory查看内存(单位为MB);wmic logicaldisk get size,freespace查看磁盘容量。 - 网络参数:
ipconfig /all查看详细网络配置(IP、MAC、DNS);route print查看路由表;nslookup 域名测试DNS解析。
系统资源监控
实时监控CPU、内存、磁盘I/O、网络等资源使用率,是性能优化的关键。
Linux工具
- CPU/内存监控:
top动态显示进程资源占用,按P按CPU排序、M按内存排序;htop(需安装)以彩色界面展示,更直观;vmstat 1每秒输出一次内存、CPU、I/O统计。 - 磁盘I/O监控:
iostat -dx 1显示磁盘每秒读写次数(iops)、等待时间等;iotop(需安装)实时显示各进程I/O占用。 - 网络流量监控:
nload实时显示网卡进出带宽;iftop(需安装)按连接查看流量占用;sar -n DEV 1统计网络设备吞吐量。
Windows工具
- 任务管理器:
Ctrl+Shift+Esc打开,可查看CPU、内存、磁盘、网络的实时及历史占用,支持按进程排序。 - 性能监视器:
perfmon打开,通过“计数器”添加CPU(%Processor Time)、内存(Available MBytes)、磁盘(Disk Queue Length)等指标,生成性能报告。 - 资源监视器:
resmon打开,可查看进程级别的CPU、内存、磁盘、网络详细占用。
服务与进程管理
检查服务运行状态、异常进程,是保障业务可用性的核心。

Linux系统
- 服务状态:
systemctl status 服务名(如nginx、mysql)查看服务是否运行;systemctl --failed查看失败的服务。 - 进程监控:
ps aux查看所有进程,结合grep过滤(如ps aux | grep nginx);pgrep 服务名查看进程ID(PID);kill -9 PID强制终止异常进程。
Windows系统
- 服务状态:
sc query 服务名(如“MySQL80”)查看服务状态;services.msc打开服务管理器,可视化启停服务。 - 进程监控:
tasklist查看所有进程;tasklist /svc查看进程关联的服务;taskkill /F /PID 进程ID强制终止进程。
日志分析
日志是排查故障的重要依据,需重点关注系统日志、应用日志、安全日志。
Linux系统
- 系统日志:
/var/log/syslog(Ubuntu)或/var/log/messages(CentOS)记录系统运行信息;journalctl -u 服务名 --since today查看指定服务当日日志。 - 日志过滤:通过
grep、awk提取关键信息,如grep "ERROR" /var/log/nginx/error.log查看错误日志。
Windows系统
- 事件查看器:
eventvwr.msc打开,分类查看“应用程序”“系统”“安全”日志,支持按事件类型(错误、警告)筛选。 - PowerShell日志:
Get-EventLog -LogName Application -After (Get-Date).AddDays(-1)获取最近1天的应用日志。
网络状态检查
通过端口监听、连接状态、路由跟踪等,排查网络问题。
Linux/Windows通用
- 端口监听:Linux用
netstat -tuln或ss -tuln查看监听端口;Windows用netstat -anob查看端口及关联进程。 - 连接状态:
netstat -an | grep ESTABLISHED查看已建立的TCP连接;ss -s(Linux)统计连接总数。 - 路由跟踪:Linux用
traceroute 目标IP;Windows用tracert 目标IP,查看数据包传输路径及延迟。
常用命令对比表
| 功能类别 | Linux命令/工具 | Windows命令/工具 |
|---|---|---|
| 系统版本 | cat /etc/os-release |
systeminfo |
| CPU使用率 | top/htop |
任务管理器/perfmon |
| 内存使用情况 | free -h |
wmic OS get FreePhysicalMemory |
| 磁盘空间 | df -h |
wmic logicaldisk get freespace |
| 网络IP配置 | ip addr |
ipconfig |
| 服务状态 | systemctl status 服务名 |
sc query 服务名 |
| 端口监听 | netstat -tuln |
netstat -anob |
| 日志查看 | journalctl/grep |
事件查看器/eventvwr.msc |
FAQs
Q1:如何查看服务器上某个端口被哪个进程占用?

- Linux:使用
lsof -i:端口号(如lsof -i:8080),或netstat -tuln | grep 端口号结合ps aux | grep PID定位进程。 - Windows:通过
netstat -anob | grep 端口号,或打开任务管理器→“性能”→“打开资源监视器”→“网络”查看端口占用进程。
Q2:服务器CPU使用率持续100%如何排查?
- 定位高CPU进程:Linux用
top按P排序,Windows用任务管理器按CPU占用排序,找到异常进程PID。 - 分析进程行为:Linux用
strace -p PID跟踪系统调用,Windows用“性能监视器”分析线程CPU占用。 - 检查业务逻辑:若为业务进程,检查是否有死循环、SQL慢查询、大流量请求等,结合日志(如Nginx访问日志、应用日志)定位具体问题。
- 终止或优化:若为异常进程(如挖矿程序),立即终止;若为正常业务,考虑优化代码或扩容。
通过以上方法,可全面掌握服务器运行状态,及时发现问题并处理,确保服务器稳定高效运行。
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/37695.html