筆者は先頃、メインのOSを「Pop!_OS」から「Ubuntu Budgie」に切り替えた。移行作業は概ね非常に円滑に進んだ。しかし、筆者が所有するSystem76の「Thelio」デスクトップでは、これまでに経験したことのない興味深い現象が起きていた。別のOSに移行すると、ファンが常に動作するようになった。試行錯誤の末、筆者は何とかこの問題を解決することに成功した。最終的に、ファンの適切な制御に必要なSystem76のファームウェアをインストールすることで、この問題は解決した。しかし、その過程で、筆者はハードウェアで「Linux」を強化できるツールのことを思い出した。
すべてのマザーボードには、温度などを監視するさまざまなセンサーが搭載されている。PCの温度は非常に重要だ。CPUが非常に高温になることもある。CPUが過熱すると、コンピューターはクラッシュしてしまう(もっと深刻な事態に陥ることもある)。PCメーカーごとにやり方が異なることや、モデルによってPCの内部構造が異なることが原因で、インストールしたOSがマザーボードのすべてのセンサーを必ず検出できるという保証はない。ほとんどの場合、インストールしたOSはすべてのセンサーを検出してくれるが、(筆者が経験したように)マシンを使用していないときでも、ファンが常時動作するようになることもある。
その問題が発生した場合は、sensors-detectコマンドを使用する必要がある。本記事では、「Ubuntu」ベースのLinuxディストリビューションで、そのコマンドを実行する手順を紹介する。
sensors-detectをインストールして使用する方法
必要なもの:これを実行するのに必要なのは、UbuntuベースのLinuxディストリビューションとsudo権限を持つユーザーだけだ。
1. ターミナルウィンドウを開く
多くのLinuxディストリビューションには、必要なソフトウェアがプリインストールされていないため、手動で追加する必要がある。デスクトップメニューを開いて、ターミナルアプリケーションを選択する。
2. Ubuntuベースのディストリビューションに「lm-sensors」をインストールする
Ubuntuベースのディストリビューションで、ターミナルウィンドウから、以下のコマンドを実行する。
sudo apt-get install lm-sensors -y
lm-sensorsをインストールすると、sensors-detectコマンドを使用できるようになる。
3. sensors-detectを実行する
ターミナルウィンドウで、以下のコマンドを実行する。
sudo sensors-detect
4. 質問に答える
sensors-detectコマンドを実行すると、以下のようないくつかの質問が表示される。
- 一部のサウスブリッジ、CPU、またはメモリーコントローラーにはセンサーが組み込まれています。それらをスキャンして探しますか。これは完全に安全です。(YES/no):
- 一部のSuper I/Oチップにはセンサーが組み込まれています。それらを調べるには、標準のI/Oポートに書き込む必要があります。これは通常、安全です。Super I/Oセンサーをスキャンして探しますか。(YES/no):
- 一部のシステム(主にサーバー)はIPMIを実装しています。IPMIとは、システム正常性データなどの取得に使用される共通インターフェース群のことです。最初にSMBIOSからの情報取得を試行します。そこで情報が見つからなかった場合は、任意のI/Oポートから情報を読み取って、そのようなインターフェースの有無を調べる必要があります。これは通常、安全です。IPMIインターフェースをスキャンして探しますか。(YES/no):
- 一部のハードウェア監視チップは、ISA I/Oポート経由でアクセス可能です。それらを調べるには、任意のI/Oポートに書き込む必要があります。ただし、これは通常、安全です。ISAスロットはないが、ISA I/Oポートは存在する、ということもあり得ます。ISA I/Oポートをスキャンして探しますか。(yes/NO):
- I2C/SMBusアダプターを今すぐ調べますか(YES/no):
すべての質問に「Yes」と答えてほしい。すべての質問に回答すると、結果を表示するかどうか尋ねられる。キーボードの「Enter」を押して結果を表示する。結果が表示されると、sensors-detectは、必要な項目を/etc/modulesに自動的に追加するかどうか尋ねる。筆者の場合は、追加すべきモジュールとして、coretempが表示された。「Yes」と入力すると、それらのモジュールが追加される。sensors-detectが多数のモジュールを表示した場合は、すべてを追加する前に、少し調べてほしい。インストールしたカーネルにすでに組み込まれているモジュールを追加してしまうおそれがあるからだ。
5. マシンを再起動する
sensors-detectがモジュールを/etc/moduleに追加した場合は、再起動して、それらのモジュールを有効にしよう。
手順の紹介は、以上である。これで、OSがハードウェアをより適切に制御できるようになり、読者の皆さんのLinux体験が向上することを願っている。
提供:eyetoeyePIX/Getty Images
この記事は海外Red Ventures発の記事を朝日インタラクティブが日本向けに編集したものです。