主题
系统监控
以下命令适合在维护 Linux 服务器时快速了解主机状态。部分命令需要安装对应工具。
快速查看
日常查看时,可将下面几条命令当作任务管理器或活动监视器的替代。
| 目标 | 命令 | 说明 |
|---|---|---|
| CPU、内存、进程 | htop | 交互式查看,可按 CPU 或内存排序;未安装时使用 top。 |
| NVIDIA GPU | nvidia-smi | 查看 GPU 利用率、显存、温度和占用 GPU 的进程。 |
| 磁盘空间 | df -h | 查看各挂载点的总容量、已用空间和剩余空间。 |
| 当前目录大小 | du -sh . | 查看当前目录占用的磁盘空间。 |
需要持续观察 NVIDIA GPU 时:
bash
watch -n 1 nvidia-smi操作系统与主机
bash
# 发行版和内核版本
cat /etc/os-release
uname -a
# 主机名、运行时间和系统负载
hostnamectl
uptime
# 虚拟机或物理机硬件信息
sudo dmidecode -t systemCPU
bash
# CPU 型号、核心数和架构
lscpu
# 实时查看 CPU、内存和负载
top
# 更易读的交互式视图(需要安装)
htop内存
bash
# 内存和交换分区使用情况
free -h
# 内存详细信息
cat /proc/meminfoGPU
bash
# 查看显卡设备
lspci | grep -Ei 'vga|3d|display'
# NVIDIA GPU 的状态与进程
nvidia-sminvidia-smi 仅适用于已安装 NVIDIA 驱动的主机;没有 NVIDIA GPU 或驱动时,该命令不可用。
磁盘与文件系统
bash
# 挂载点的容量和使用率
df -h
# 目录占用;先定位大目录,再继续深入
du -sh /var/*
# 块设备、分区和挂载关系
lsblk -f
# 磁盘 I/O(需要 sysstat)
iostat -xz 1进程与服务
bash
# 按 CPU 或内存占用排序的进程
ps aux --sort=-%cpu | head
ps aux --sort=-%mem | head
# 查找指定进程
pgrep -af process-name
# 查看指定 PID 的详细信息
ps -fp PID
# 服务状态和失败服务
systemctl status service-name
systemctl --failed结束进程
优先发送 SIGTERM,让进程自行清理并退出;无响应时再使用 SIGKILL。
bash
# 结束指定 PID 的进程
kill PID
# 强制结束无响应的进程
kill -9 PID
# 按进程名结束;先用 pgrep -af 确认匹配结果
pkill process-name
pkill -9 process-name网络
bash
# 网卡地址与状态、路由表
ip addr
ip route
# 所有正在监听的端口和关联进程
sudo ss -lntup
# 查询指定端口,例如 8080
sudo ss -lntp 'sport = :8080'
sudo lsof -nP -iTCP:8080 -sTCP:LISTEN
# 连通性与 DNS 查询
ping -c 4 example.com
dig example.com
# 网络连接和吞吐(需要安装)
ss -s
iftop日志与故障排查
bash
# 本次启动的系统日志;实时跟随日志
journalctl -b
journalctl -f
# 内核日志中的错误或警告
dmesg -T | grep -Ei 'error|warn|fail'
# 最近登录记录
last -a