在Linux shell中,有许多命令可用于监控系统状态和资源使用情况,以下是一些常用命令:
系统整体状态查看:
top或htop:实时显示系统整体的CPU、内存、磁盘IO使用情况,以及各个进程的资源占用。uptime:展示系统的运行时间、当前登录用户数以及系统负载(1分钟、5分钟、15分钟内的平均负载)。
CPU使用率监控:
mpstat:显示多核CPU的使用统计信息。vmstat:报告虚拟内存、进程、CPU活动的信息。pidstat:针对特定进程的CPU、内存、I/O等资源使用统计。
内存使用情况:
free或free -h(带人性化单位显示):显示内存总量、已用、可用、缓存、交换分区等使用情况。vmstat也能显示内存统计信息。sar(sysstat工具集的一部分)可收集更详尽的历史内存统计数据。
磁盘空间检查:
df或df -h:报告文件系统磁盘空间使用状况,包括总容量、已使用、剩余和使用百分比。du或du -sh *:查看文件或目录占用的磁盘空间。
网络流量监控:
netstat:显示网络连接、路由表、网络接口统计等信息。iftop或nethogs:实时监测网络流量。iptraf或vnstat:提供网络接口流量统计。
进程管理与监控:
ps:报告当前终端下运行的进程状态。pgrep或pkill:根据名称或PID查找或终止进程。top和htop已经提到过,它们同样可以用来查看和管理进程。
系统日志查看:
dmesg:查看内核环形缓冲区的消息,用于了解硬件事件和驱动程序信息。journalctl:在Systemd系统中查看系统日志。/var/log/下的各种日志文件,如/var/log/messages或/var/log/syslog。
系统健康检查:
smartmontools:用于硬盘健康状态检查。sensors(lm_sensors套件的一部分):检测计算机温度、电压等硬件状态。
以上命令有助于从不同维度对Linux系统进行实时监控和故障排查。记得结合实际情况灵活运用,并配合相关选项以获取更多详细信息。