我有一个运行Ubuntu 14.04的Beaglebone Black。我使用guide to flashing a pre-built image to eMMC闪烁了它。
根据我所看到的指南,我应该能够阅读/sys/class/hwmon/hwmon0/device/temp1_input
来获取CPU温度。但是,我的系统上没有这样的路径。我猜想Beaglebone Black的AM3358 ARM CPU的内核模块提供了此功能,并且我的图像缺少这样的模块,但是我不知道从哪里开始获得这样的模块。实际上,/sys/class/hwmon
是一个空目录。
这些是我do具有的模块:
$ lsmod | sort
6lowpan_iphc 10154 1 bluetooth
bluetooth 316797 10 bnep,rfcomm
bnep 11946 2
can_dev 7430 1 c_can
c_can 9400 1 c_can_platform
c_can_platform 5927 0
g_multi 3238 0
iptable_filter 1149 1
ip_tables 11857 1 iptable_filter
libcomposite 38715 5 usb_f_acm,usb_f_ecm,usb_f_rndis,g_multi,usb_f_mass_storage
musb_am335x 1075 0
musb_dsps 8369 0
musb_hdrc 76236 1 musb_dsps
rfcomm 46571 0
rfkill 14659 2 bluetooth
u_ether 9524 3 usb_f_ecm,usb_f_rndis,g_multi
usb_f_acm 5687 1
usb_f_ecm 7901 1
usb_f_mass_storage 34664 2 g_multi
usb_f_rndis 17711 2 g_multi
u_serial 9631 1 usb_f_acm
x_tables 12575 3 ip_tables,xt_multiport,iptable_filter
xt_multiport 2051 1
...和总体状态:
$ uname -a
Linux hostname 3.14.26-ti-r43 #1 SMP PREEMPT Wed Dec 24 05:27:12 UTC 2014 armv7l armv7l armv7l GNU/Linux
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 14.04.1 LTS
Release: 14.04
Codename: trusty
所以,如何读取缺少此文件的Beaglebone Black的CPU温度?
我已经尽力搜索了网络并空手而归。
[我发现sofer是,当前的Debian(我正在使用Linux bbone 4.1.12-ti-r29 #1 SMP PREEMPT Mon Nov 9 22:46:19 UTC 2015 armv7l GNU/Linux
)以及它的所有派生词,以及它的最新前辈(至少可以追溯到您的内核3.14.26)不再/sys/class/hwmon
。
lm-sensors
板上也找不到任何传感器,所以这也是一个死胡同。
而且我从TI那里得到的是,温度传感器从来没有真正打算供最终用户使用。 TI甚至规定了一种通过外部传感器测量电路板温度的方法(请参见here)。
所以,这真是令人遗憾,但是你知道了。
编辑:我也发现Debian 8.2显示了我在这里描述的行为,但是,今天我刷新了Debian 7.9(来自here; Linux bbone 3.8.13-bone79 #1 SMP Tue Oct 13 20:44:55 UTC 2015 armv7l GNU/Linux
),并且that带有完整填充的/sys
包括/sys/class/hwmon/hwmon0/device/temp1_input
,它是以摄氏度为单位的温度读数。请注意,这可能是不应该依赖的相对温度(根据TI)。
我尚未在ubuntu 14.04上对其进行测试,但这是我在此问题上的2美分。 tmon
是一个非常简单的工具,可以在运行另一个过程时读取温度,就像time
,watch
,timeout
等一样。tmon
是/sys/class/thermal/thermal_zone*/temp
的薄包装,在运行CPU密集型进程(模拟,游戏等)时监视Linux计算机/服务器的温度时很有用。
您可以从以下位置下载.AppImage“ binary”:https://github.com/gmagno/tmon/releases并立即方便地运行它,即:
wget https://github.com/gmagno/tmon/releases/download/v0.3.7/tmon-a461481-x86_64.AppImage
chmod +x tmon*.AppImage
# optional: you may put it somewhere convenient in your file system and add a symlink in /usr/local/bin/tmon
或者,如果您愿意:
pip install tmonpy
用法
./tmon*.AppImage -h
示例
./tmon*.AppImage echo "Quick programs return a single value of temperature" Quick programs return a single value of temperature =================== Temp Monitor Report: Temp (°C) for a period of 0:00:00 >> 58.0 °C << /tmp/[email protected] ===================
./tmon*.AppImage bash -c 'echo not so quick ones will show a chart; sleep 6' not so quick ones will show a chart =================== Temp Monitor Report: Temp (°C) for a period of 0:00:06 60.00 ┤ 59.86 ┤ 59.71 ┤ 59.57 ┤ 59.43 ┤ 59.29 ┤ 59.14 ┤ 59.00 ┼╮ ╭─ 58.86 ┤│ │ 58.71 ┤│ │ 58.57 ┤│ │ 58.43 ┤│ │ 58.29 ┤│ │ 58.14 ┤│ │ 58.00 ┤╰───╯ >> min: 58.0 °C << >> avg: 58.4 °C << >> max: 59.0 °C << /tmp/[email protected] ===================
您也可以不带任何参数地运行
tmon
,它将按预期运行。按Ctrl-C终止该过程并获取温度报告
./tmon*.AppImage # and wait a few seconds before pressing Ctrl-C
^C
===================
Temp Monitor Report:
Temp (°C) for a period of 0:00:08
60.00 ┤
59.71 ┤
59.43 ┤
59.14 ┤
58.86 ┤ ╭╮
58.57 ┤ ││
58.29 ┤ ││
58.00 ┼╮╭╯│
57.71 ┤││ │
57.43 ┤││ │
57.14 ┤││ │
56.86 ┤╰╯ │
56.57 ┤ │
56.29 ┤ │
56.00 ┤ ╰────
>> min: 56.0 °C <<
>> avg: 56.9 °C <<
>> max: 59.0 °C <<
/tmp/[email protected]
===================