2026年2月3日火曜日

ターミナルログイン時に表示される温度

ターミナルでログインした直後に表示される温度。

Welcome to Ubuntu 24.04.3 LTS (GNU/Linux 6.14.0-37-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/pro

 System information as of Tue Feb  3 04:46:24 AM UTC 2026

  System load:             0.07
  Usage of /:              81.4% of 465.88GB
  Memory usage:            2%
  Swap usage:              0%
  Temperature:             44.0 C
  Processes:               153
  Users logged in:         0
  IPv4 address for wlp1s0: XXX.XXX.XXX.XXX
  IPv6 address for wlp1s0: XXXX:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX

 * Strictly confined Kubernetes makes edge and IoT secure. Learn how MicroK8s
   just raised the bar for easy, resilient and secure K8s cluster deployment.

   https://ubuntu.com/engage/secure-kubernetes-at-the-edge

Expanded Security Maintenance for Applications is not enabled.

13 updates can be applied immediately.
To see these additional updates run: apt list --upgradable

1 additional security update can be applied with ESM Apps.
Learn more about enabling ESM Apps service at https://ubuntu.com/esm


Last login: Tue Feb  3 04:37:42 2026 from XXX.XXX.XXX.XXX
siriuth@b4turbo-2:~$

この温度は一体どこから取ってきているのだろうと気になっていました。

まともにLinuxがインストールできていればファイルシステムのどこからかは何らかの数字は拾えるはずです。

ubuntuでCPUなどの温度確認

実際に見てみると

siriuth@b4turbo-2:~$ cat /sys/class/hwmon/hwmon1/temp1_input
34000

34度

他にもいくつかあるようなのでツールをインストール

UbuntuでCPU温度・FAN回転数などの情報を取得する 

sudo apt install lm-sensors

sudo sensors-detect

設定してあげると、ファンや電圧も取得できるらしいので設定してみましたが、現状では温度しか拾ってこれませんでした。あと、何度も設定を行って無意味にyesのみ繰り返していくと最後に/etc/modulesにチップドライバーの情報を追記するので、何度も行うと同じ値が何度も追記されていくという…(笑)

siriuth@b4turbo-2:~$ sensors
acpitz-acpi-0
Adapter: ACPI interface
temp1:        +27.8°C

coretemp-isa-0000
Adapter: ISA adapter
Package id 0:  +35.0°C  (high = +105.0°C, crit = +105.0°C)
Core 0:        +30.0°C  (high = +105.0°C, crit = +105.0°C)
Core 1:        +30.0°C  (high = +105.0°C, crit = +105.0°C)
Core 2:        +30.0°C  (high = +105.0°C, crit = +105.0°C)
Core 3:        +30.0°C  (high = +105.0°C, crit = +105.0°C)

こんな感じになりました。

やはり30度程度で40度越えの数字は表示されず…いったいどこの温度なのでしょう?

ログイン時に実際に表示されているものは

sudo cat /etc/update-motd.d/50-landscape-sysinfo

で、中を見ると、landscape-sysinfoが実行されたりキャッシュが表示されたりしている感じですが、デスクトップ版ではこのlandscape-sysinfoはインストールされず、別途インストールする必要があるようです。

Ubuntuログイン時に表示されるシステム情報を出力するコマンド 

sudo apt install landscape-common

で、結局、landscape-sysinfo内でどうやって温度を取ってきているか?という疑問にたどり着くわけですが…。

とりあえずgit-hubを検索したらそれっぽい感じの

https://github.com/canonical/landscape-client

があったので、ソースを見てみるとpythonみたいですね。

バージョンの違いによる差はあまりないようで…一応バージョン確認してみると

 siriuth@b4turbo-2:~$ /usr/bin/landscape-sysinfo --version
24.02-0ubuntu5.7

となっているので、24.02のタグに切り替えてみてみましたが…やってることは1000で割って単位にCを入れてその中の最高値を取得しているだけ。

Landscape-sysinfo shows wrong temperature in Ubuntu Server 

(個人的にあまり信用していない)Redditでも出てきますが(元ネタはおそらく…

日付を見ると5年前から上がってます。見る限りpython3で実行するとちゃんとした値が返ってくるものの、実際にlandscapeを動かすと高い温度が返ってくるという。

しかし、解決策はないみたいです。

考えづらいですが、瞬間的にどこかの温度だけ高温になってしまうんでしょうかね? 

0 件のコメント:

コメントを投稿