lscpu、free -h、lsblk、lspci 四命令覆盖90%日常硬件配置查看需求:lscpu查cpu型号/核心数/架构,free -h看内存总量与可用量,lsblk查磁盘分区及挂载关系,lspci识别pcie设备如显卡网卡。

直接看硬件配置,别翻文档——lscpu、free -h、lsblk、lspci 这四个命令覆盖 90% 日常需求,其余都是补漏或权限受限时的替代方案。
查 CPU 型号和核心数用 lscpu,不是 /proc/cpuinfo
lscpu 输出结构清晰,字段含义明确,适合快速确认架构、物理/逻辑核数、超线程是否启用。而 /proc/cpuinfo 每个逻辑 CPU 单独一段,字段重复多,脚本解析反而容易出错。
- 物理 CPU 个数看
Socket(s),不是physical id的去重结果(虚拟机里可能不准) - 总逻辑核数是
CPU(s),不是processor行数(某些容器环境会截断) - 要确认是否支持 64 位,看
CPU op-mode(s)里有没有64-bit,别只信uname -m(它只反映当前内核运行模式) - 型号名在
Model name字段,但注意:VMware 虚拟机下可能显示为Intel(R) Xeon(R) CPU而非真实型号
查内存总量和可用量优先用 free -h,别只看 /proc/meminfo
free -h 自动换算单位、对齐可读,且包含 MemAvailable(Linux 3.14+),比 MemFree 更能反映真实可用内存。而 /proc/meminfo 里一堆字段,新手容易误读 Buffers 或 Cached 为“被占用”。
Zynq‑7000 / Zynq UltraScale+ 硬件调试技能。适用于 Xilinx Zynq(Cortex‑A9/A53 + FPGA)Linux 环境,调试 I2C、I2S、UART、GPIO 等外设。包括设备树配置、内核驱动、用户空间调试工具、交叉编译和常见问题排查,支持 PetaLinux 开发。
-
MemAvailable是内核估算的、可立即分配给新进程的内存,比MemFree + Buffers + Cached更准 - 交换区信息看
SwapTotal和SwapFree,但free输出里的Swap行更直观 - 想查插槽数量或单条容量?得用
dmidecode -t memory,但需要 root 权限,普通用户会报错 -
grep MemTotal /proc/meminfo返回字节数,不带单位,手动除 1024³ 才是 GB,易算错
查磁盘和分区用 lsblk,不是 fdisk -l
lsblk 默认展示树状结构,能看出主设备(如 sda)、分区(sda1)、挂载点(MOUNTPOINT)三者关系,一目了然。而 fdisk -l 输出是纯列表,需人工匹配设备与分区,且默认不显示挂载状态。
-
lsblk -f加上文件系统类型和 LABEL,排查启动失败或挂载异常时更高效 -
lsblk不显示 LVM 逻辑卷细节,遇到lvm类型设备,得补查lvdisplay或pvs/vgs/lvs -
fdisk -l需要 root 权限,普通用户执行会提示 “Cannot open /dev/sda”;lsblk普通用户可执行 - SSD/HDD 类型无法从
lsblk直接判断,得结合cat /sys/block/sda/queue/rotational(0=SSD,1=HDD)
查显卡和 PCIe 设备必须用 lspci,nvidia-smi 只对 NVIDIA 有效
lspci 是唯一能跨厂商识别所有 PCIe 设备的通用命令,包括 GPU、网卡、RAID 卡。而 nvidia-smi 仅当 NVIDIA 驱动已加载且有 GPU 时才可用,AMD/Intel 显卡用户根本跑不起来。
- 查显卡型号:用
lspci | grep -i vga,不是lspci -v(后者输出太长,且含敏感寄存器值) - 查网卡芯片型号:用
lspci | grep -i ethernet,驱动兼容性问题常源于此 -
nvidia-smi报 “NVIDIA-SMI has failed…” 多半是驱动没装或未加载,此时回退到lspci确认硬件是否存在 - 集成显卡(如 Intel)通常归类为
VGA compatible controller,但部分老内核可能识别为3D controller,得加-i display全局搜
真正麻烦的是那些需要 root 权限才能看到完整信息的命令,比如 dmidecode 查主板序列号、smartctl 查硬盘健康状态——它们不在常用命令清单里,但一旦涉及资产盘点或故障定界,绕不开。










