Linux系统硬件信息查看命令大全
发布时间:2026/10/27 3:06:21 锦皓数字建站

1. Linux系统与硬件信息查看命令全景指南作为Linux系统管理员或开发者掌握系统状态和硬件信息的查看方法是基本功。不同于图形界面系统Linux的高效管理高度依赖命令行工具。这些命令不仅能帮助快速诊断问题也是性能调优和资源规划的基础。我整理了20个最实用的系统信息查看命令涵盖CPU、内存、磁盘、网络等核心硬件组件以及系统版本、运行状态等关键信息。这些命令在CentOS、Ubuntu等主流发行版中通用部分工具可能需要通过yum install或apt-get install预先安装。2. 系统级信息查看2.1 系统版本与内核信息uname -a是最全面的系统内核信息查看命令输出包含内核名称Linux主机名内核发行版本内核版本硬件架构处理器类型操作系统类型典型输出示例Linux myserver 5.4.0-135-generic #152-Ubuntu SMP Wed Nov 23 20:19:22 UTC 2022 x86_64 x86_64 x86_64 GNU/Linuxlsb_release -a则专门显示发行版信息包括Distributor ID如Ubuntu、CentOSDescription完整发行版名称Release版本号Codename开发代号提示在最小化安装的服务器上lsb_release可能未预装可通过yum install redhat-lsb-core或apt install lsb-release安装。2.2 系统运行时间与负载uptime命令一行显示三个关键指标系统已运行时间当前登录用户数系统平均负载1分钟、5分钟、15分钟示例输出14:30:45 up 62 days, 8:22, 3 users, load average: 0.08, 0.03, 0.05平均负载值解读单核CPU1.00表示100%利用率四核CPU4.00表示全部核心满载持续高于70%需关注性能瓶颈w命令是uptime的增强版额外显示每个登录用户的终端来源IP登录时长当前进程3. 硬件详细信息获取3.1 CPU信息深度解析lscpu是最专业的CPU信息工具输出包括架构x86_64/ARM核心数线程数型号名称缓存大小频率范围虚拟化支持关键指标查看技巧# 物理核心数 lscpu | grep -E ^Core|^Socket # 是否支持硬件虚拟化 lscpu | grep Virtualizationcat /proc/cpuinfo提供更底层的信息适合脚本处理# 统计逻辑CPU数量 grep -c ^processor /proc/cpuinfo # 获取型号名称去重 cat /proc/cpuinfo | grep model name | uniq3.2 内存使用情况分析free -h以人类可读格式显示内存状态total物理内存总量used已使用内存含buffers/cachefree完全空闲内存shared共享内存buff/cache缓存占用available实际可用内存重要提示Linux会利用空闲内存做磁盘缓存因此不要看到used很高就紧张应关注available值。vmstat 2 5动态监控内存和系统状态每2秒采样一次共5次procsr运行队列长度b阻塞进程数memoryswpd虚拟内存使用free空闲内存swapsi每秒从磁盘读入so每秒写入磁盘iobi块设备接收bo块设备发送systemin中断数cs上下文切换cpuus用户态sy内核态id空闲waIO等待3.3 磁盘与文件系统信息df -hT显示所有挂载点的空间使用-hGB/MB单位-T显示文件系统类型ext4/xfs等重点关注Use%列超过80%需清理lsblk以树状图显示块设备关系NAME设备名sda、vdb等MAJ:MIN主次设备号RM是否可移动SIZE容量RO只读标志TYPEdisk/part/lvmMOUNTPOINT挂载点smartctl需安装smartmontools获取磁盘健康状态# 查看SSD剩余寿命 smartctl -A /dev/nvme0n1 | grep Percentage_Used # 机械硬盘坏道检查 smartctl -H /dev/sda4. 网络与设备信息4.1 网络接口与连接ip addr替代传统的ifconfig显示接口名称eth0、ens33等MAC地址IPv4/IPv6地址状态UP/DOWNss -tulnp替代netstat查看所有监听端口-tTCP-uUDP-l监听状态-n数字格式不解析服务名-p显示进程信息示例输出解读tcp LISTEN 0 128 0.0.0.0:22 0.0.0.0:* users:((sshd,pid1234,fd3))表示sshd进程正在监听所有IP的22端口4.2 USB与PCI设备lsusb列出所有USB设备Bus号USB控制器编号Device号设备在总线上的地址ID厂商:产品ID设备描述lspci显示PCI设备详情常用选项lspci -tv # 树状视图 lspci -nn # 显示设备ID lspci -k # 显示内核驱动5. 高级监控与日志工具5.1 实时系统监控htop需安装是top的增强版功能包括彩色显示CPU/内存使用率树状视图展示进程关系鼠标操作选择进程快捷杀死进程F9按不同指标排序nmon是专业的性能监控工具可记录CPU使用率用户/系统/等待磁盘I/O读写速度网络吞吐量内存和交换分区内核统计信息5.2 日志与事件查看dmesg显示内核环形缓冲区消息常用参数dmesg -T # 带时间戳 dmesg -l err # 仅错误信息 dmesg | grep -i eth # 过滤网卡相关journalctlsystemd系统查询系统日志# 查看最近20条错误 journalctl -p err -n 20 # 跟踪sshd服务日志 journalctl -u sshd -f6. 命令速查与组合技巧6.1 常用命令组合示例查看系统概况echo -e \n System Info uname -a echo -e \n CPU Info lscpu | grep -E Model name|Socket|Core|Thread echo -e \n Memory free -h echo -e \n Disk Space df -hT | grep -v tmpfs监控关键指标每2秒刷新watch -n 2 echo -e CPU:\n$(top -bn1 | head -5)\n\nMEM:\n$(free -h)\n\nDISK:\n$(df -hT | grep -v tmpfs)6.2 信息保存与对比保存当前系统状态mkdir system_info_$(date %F) uname -a system_info_$(date %F)/uname.txt lscpu system_info_$(date %F)/cpu.txt free -h system_info_$(date %F)/mem.txt df -hT system_info_$(date %F)/disk.txt对比两次硬件信息变化diff -u system_info_2023-01-01/cpu.txt system_info_2023-06-01/cpu.txt7. 疑难问题排查指南7.1 性能瓶颈定位CPU瓶颈排查流程top查看%CPU高的进程pidstat -u 1 5监控进程CPU使用perf top分析热点函数strace -p PID跟踪系统调用内存泄漏检查步骤free -h观察available变化smem -s swap查看swap使用进程pmap -x PID分析进程内存分布valgrind --toolmemcheck检测内存错误7.2 硬件故障诊断磁盘故障迹象dmesg中出现I/O errorsmartctl -H /dev/sda返回非PASSEDiostat -x 1显示高await值网卡异常排查ethtool eth0查看链路状态ip -s link show eth0统计丢包tcpdump -i eth0 -w capture.pcap抓包分析mtr -n 8.8.8.8追踪路由问题点8. 安全审计与加固8.1 系统安全基线检查关键安全信息查看# 检查SUID程序 find / -perm -4000 -type f 2/dev/null # 查看计划任务 ls -la /etc/cron.*/ # 检查异常登录 last -ai | head -208.2 硬件安全审计TPM芯片状态检查tpm2_getcap properties-fixed安全启动状态mokutil --sb-state9. 自动化监控方案9.1 使用tee记录关键信息长期监控CPU温度while true; do date %F %T | tee -a cpu_temp.log sensors | grep Core | tee -a cpu_temp.log sleep 60 done9.2 通过邮件报警磁盘空间监控脚本#!/bin/bash THRESHOLD90 DF_OUTPUT$(df -h) ALERT while read line; do USE$(echo $line | awk {print $5} | cut -d% -f1) MOUNT$(echo $line | awk {print $6}) if [ $USE -gt $THRESHOLD ]; then ALERT$ALERT\n$line fi done $(df -h | tail -n 2) if [ -n $ALERT ]; then echo -e WARNING: Disk space threshold exceeded\n$ALERT | mail -s Disk Alert adminexample.com fi10. 可视化展示方案10.1 使用csv格式输出生成硬件报告echo Date,Hostname,CPU Model,Cores,Memory,Disks hardware_report.csv echo $(date %F),$(hostname),$(lscpu | grep Model name | cut -d: -f2 | xargs),$(nproc),$(free -h | grep Mem | awk {print $2}),$(lsblk | grep disk | wc -l) hardware_report.csv10.2 转换为HTML展示使用awk生成简单HTMLcat EOF report.html html headtitleSystem Report/title/head body h1$(hostname) - $(date)/h1 pre $(uname -a) $(lscpu) $(free -h) $(df -hT) /pre /body /html EOF掌握这些命令组合和技巧你就能像专业系统管理员一样全面掌控Linux系统的硬件和运行状态。在实际工作中建议将这些命令封装成脚本定期收集系统信息建立基线当出现异常时能快速对比定位问题。
锦
锦皓数字建站
深耕本土企业品牌数字化升级,专注原创端正雅致商务官网,从视觉设计到稳定运维全程保驾护航。