Fancontrolを使用して、ハードドライブの温度に応じてファンの速度を調整するにはどうすればよいですか?
承認された回答:
私はついに、ファン制御を介してハードドライブの温度に応じてファン速度を制御する簡単なスクリプトを見つけました。 、 Hddtemp 、およびLmセンサー 。次のスクリプトでは、「 / dev / sda 」は監視対象のハードディスクであり、「 / Fancontrol / Hddtemp 」は、Fancontrolによって読み取られる出力ファイルです。 Ctrlを押します + Alt + T ターミナルを開き、次のコマンドを実行して、「 / dev / sda 」は正しいものです:
sudo hddtemp / dev / sd [a-z]
「S.M.A.R.T.」ではなく温度を表示するHddtempでサポートされているもののみを使用してください。利用不可"。
「/dev / sda」を置き換えます 」と、必要に応じてスクリプト内の正しいものを使用します。
Fancontrolをまだ構成していない場合は、このページを参照してください。 、このページ 、およびこのページ 次のコマンドを1つずつ実行します(最初のコマンドを実行した後にLinuxを再起動します):
sudoセンサー-検出
ウォッチセンサー
sudo pwmconfig
sudoサービスファンコントロール開始
次に、以下の手順を実行します。
(1)次のコマンドを実行して、スクリプトファイルを作成します。
sudo mkdir -p“ / Fancontrol /”&sudo xed / Fancontrol / HDD_temp
(2)次のスクリプトをファイルにコピーして保存します。
#!/bin/bash
File=/Fancontrol/Hddtemp
while true
do
temperature=$(sudo hddtemp -n /dev/sda)
echo $(($temperature * 1000)) > "$File"
sleep 30
done
(3)次のコマンドを実行して実行可能にします。
sudo chmod + x / Fancontrol / HDD_temp
(4)次のコマンドを実行して、サービスファイルを作成します。
sudo xed /lib/systemd/system/HDD_temp.service
(5)次の行をファイルにコピーして保存します。
[サービス]
ExecStart =/ Fancontrol / HDD_temp[インストール]
WantedBy =multi-user.target
(6)次のコマンドを1つずつ実行します。
sudo chmod 664 /lib/systemd/system/HDD_temp.service
sudosystemctlデーモン-リロード
sudo systemctl start HDD_temp.service
sudo systemctl enable HDD_temp.service
次に、スクリプト「 HDD_temp 」は、Linuxの起動時にシステムサービスとして実行されます。
(7)次のコマンドを実行して、「ファンコントロール」を編集します 」、構成ファイル。
sudo xed / etc / fancontrol
「FCTEMPS」で始まる行を見つけます 」。例:
FCTEMPS =hwmon1 / pwm1 =hwmon1 / temp1_input
その行で、「 hwmon1 / temp1_input 」は、Fancontrolによって現在読み取られている温度(チップセット温度など)です。 「/Fancontrol / Hddtemp」に置き換えます 」、および行は次のようになります:
FCTEMPS =hwmon1 / pwm1 =/ Fancontrol / Hddtemp
ファイルを保存し、次のコマンドを実行してFancontrolを再起動します。
sudoサービスファンコントロールの再起動
次に、「 hwmon1 / pwm1」によって制御されるファン 」は「/Fancontrol / Hddtemp」に応答します 」、ハードディスクの温度。 「HDD_temp」と「Hddtemp」はそれぞれスクリプトファイルと出力ファイルであることに注意してください。混同しないでください。
関連:Windows –非Unicode Wineアプリケーションのコードページ/ロケール(Linuxシステムロケールとは異なります)を強制する方法は?