如何在同一位置的所有 Linux 发行版中找到包含 CPU 温度和风扇速度信息的文件?
How to find a file containing CPU temperature and fan speed information in all Linux distros at same location?
我正在做一个项目,我必须获得 CPU 温度(包括核心)和风扇速度。
对于我的电脑,我使用 /sys/class/hwmon/hwmon2/temp*_input
作为 CPU 和 /sys/class/hwmon/hwmon3/device/fan*_input
作为风扇速度。
我的代码在其他一些 PC 上不起作用。首先,OS 是 Ubuntu 18.04,第二个是 16.04。我想找到一条通用路径,从中我可以获得所有必要的信息。我可以使用类似的东西吗?
不,没有这回事
您想要阅读的不同测量值分散在系统中,具体取决于 drivers/modules 甚至 Linux 口味。
您必须找到您想要获得的读数、在哪里可以获得它们或通过特定工具获得。
/sys/class/hwmon/
是最接近的。
如果您想查看受支持的内容,可以找到 hwmon
的一些文档 here。
此命令将显示当前温度:
cat /sys/class/thermal/thermal_zone*/temp
温度监控和风扇控制是使用称为 hwmon
的标准内核接口实现的。您可以配置 sysfs
和 lm_sensors
接口来显示风扇速度和温度。查看以下指南以获得更详细的答案:
https://github.com/Mellanox/mlxsw/wiki/Temperature-and-Fan-Control
据我所知,没有通用的方法。糟透了,但这就是你的生活。你只需要探索不同的选项,看看什么在当前系统上有效并处理它。
首先,我尝试编写一个代码来查找名称为 temp_input 和 fan_input 的所有文件。找到这些文件后,我读取了存储在这些文件中的数据。此代码在之前安装了 hwmon 接口的所有 linux 机器上都能完美运行。
可以从/sysfs 接口读取,都可以从/sys/clsss/thermal 或/sys/class/hwmon。
通过下面 link 了解更多详细信息:
https://www.lookup2learn.com/post/thermal-management-in-linux
我正在做一个项目,我必须获得 CPU 温度(包括核心)和风扇速度。
对于我的电脑,我使用 /sys/class/hwmon/hwmon2/temp*_input
作为 CPU 和 /sys/class/hwmon/hwmon3/device/fan*_input
作为风扇速度。
我的代码在其他一些 PC 上不起作用。首先,OS 是 Ubuntu 18.04,第二个是 16.04。我想找到一条通用路径,从中我可以获得所有必要的信息。我可以使用类似的东西吗?
不,没有这回事
您想要阅读的不同测量值分散在系统中,具体取决于 drivers/modules 甚至 Linux 口味。
您必须找到您想要获得的读数、在哪里可以获得它们或通过特定工具获得。
/sys/class/hwmon/
是最接近的。
如果您想查看受支持的内容,可以找到 hwmon
的一些文档 here。
此命令将显示当前温度:
cat /sys/class/thermal/thermal_zone*/temp
温度监控和风扇控制是使用称为 hwmon
的标准内核接口实现的。您可以配置 sysfs
和 lm_sensors
接口来显示风扇速度和温度。查看以下指南以获得更详细的答案:
https://github.com/Mellanox/mlxsw/wiki/Temperature-and-Fan-Control
据我所知,没有通用的方法。糟透了,但这就是你的生活。你只需要探索不同的选项,看看什么在当前系统上有效并处理它。
首先,我尝试编写一个代码来查找名称为 temp_input 和 fan_input 的所有文件。找到这些文件后,我读取了存储在这些文件中的数据。此代码在之前安装了 hwmon 接口的所有 linux 机器上都能完美运行。
可以从/sysfs 接口读取,都可以从/sys/clsss/thermal 或/sys/class/hwmon。
通过下面 link 了解更多详细信息:
https://www.lookup2learn.com/post/thermal-management-in-linux