运行 sensors 命令可一次性查看风扇 RPM 和各路电压(单位 V),前提是 lm-sensors 已正确安装、sensors-detect 完成配置、对应内核模块(如 it87、nct6775)已加载;若失败,需检查 BIOS 监控设置、是否在虚拟机中运行,或内核是否屏蔽了驱动。

用 sensors 命令一次性查风扇转速和电压
你想在终端里输入一条命令,立刻看到当前所有风扇的 RPM 数值和各路电压读数,而不是翻 BIOS、装 GUI 软件或写脚本——这需要 lm-sensors 正确加载对应硬件驱动并解析原始传感器数据。
第一步:安装工具包(Ubuntu/Debian 系统)→ sudo apt update && sudo apt install lm-sensors。CentOS/RHEL 用户请改用 sudo dnf install lm-sensors。
第二步:运行自动探测向导 → sudo sensors-detect。过程中遇到所有「yes/no」提示一律按回车选 yes,直到最后出现「Do you want to add these to /etc/modules?」时输入 YES,让系统开机自动加载驱动。
第三步:加载刚检测出的模块 → 例如输出中建议加载 coretemp it87 nct6775,就执行 sudo modprobe coretemp it87 nct6775。这一步漏掉任何一项,sensors 就可能只显示温度、不显示风扇或电压。
第四步:直接运行 sensors。输出中找带 【Fan1:、Fan2:】 的行,数值后单位是 RPM;再找 【in0:、in1:、in2:】 这类行,单位是 V,括号里 min/max 是安全范围。若某行显示 [err] 或 N/A,说明该通道读取失败,不是硬件损坏,而是驱动未启用或芯片不支持。
绕过 sensors,直读 /sys/class/hwmon 下的原始值
当 sensors 输出混乱、字段名看不懂,或你写监控脚本需要稳定路径时,/sys/class/hwmon 是内核暴露的底层接口,不依赖用户态工具,但需手动定位设备。
方法一:快速锁定含风扇和电压的 hwmon 目录
先执行 ls /sys/class/hwmon/,得到类似 hwmon0 hwmon1 hwmon2 的列表;然后对每个目录运行 cat /sys/class/hwmon/hwmonX/name 2>/dev/null,筛选出返回 it87、nct6775、asus_wmi 或 f71882fg 的那个 X 值——这些名字对应真实支持风扇与多路电压的主板芯片。
方法二:进入目标目录后精准读值
比如确认 hwmon1 是目标 → cd /sys/class/hwmon/hwmon1;温度看 temp1_input(单位毫摄氏度,除以 1000 得 ℃),风扇看 fan1_input(单位 RPM),电压看 in0_input(单位微伏 µV,需除以 1000000 才是 V)。注意:in0_input 不一定对应 CPU 核心电压,它只是芯片上第 0 路电压通道,具体含义得查主板手册。
方法三:批量提取全部风扇与电压值(适合脚本)
执行 for i in /sys/class/hwmon/hwmon*/; do echo "== $(cat $i/name 2>/dev/null) =="; cat $i/fan*_input 2>/dev/null | awk '{print "Fan: "$1" RPM"}'; cat $i/in*_input 2>/dev/null | awk '{printf "In%d: %.3f V\n", NR, $1/1000000}'; done。这条命令会自动遍历所有 hwmon 目录,只打印有 fan 和 in 文件的数值,跳过空值或权限错误。
查不到风扇或电压?重点排查这三处
① 检查 BIOS 设置:部分主板(尤其是 Dell、HP OEM 机型)默认关闭硬件监控功能,需进 BIOS 找到 “Hardware Monitor”、“PC Health” 或 “Q-Fan Control” 选项,设为 Enabled。
② 确认是否运行在虚拟机中:KVM/QEMU、VMware Workstation 等虚拟环境默认不透传风扇与电压传感器,sensors 和 /sys/class/hwmon/ 都会为空或仅返回模拟值。物理服务器或笔记本才能获取真实读数。
③ 查看内核是否屏蔽了驱动:某些发行版(如 Ubuntu Server 最小安装)默认禁用 it87 类老旧芯片驱动,因为存在稳定性风险。此时需手动启用 → 编辑 /etc/modprobe.d/blacklist.conf,删掉含 blacklist it87 的行,再执行 sudo update-initramfs -u 并重启。











