私は現在core2duoプロセッサを搭載した前世代のMacBookでArchを実行しています。
このコンピュータの一般的な問題の1つは、過熱することです(YouTubeでビデオを閲覧して再生するとき70〜90)。私がいつも使用する簡単な方法は、状況が制御不可能なときにファンをスピードアップすることです。
少し這いますが動作します。
echo "speed" > /sys/devices/platform/applesmc.768/fan1_min
ここで、「速度」は2000..6000から始まります。
作業を簡単にするために、温度に応じてファンを高速化する簡単なPythonスクリプトを作成しました。残念ながら、このファイルに対する書き込み権限を設定できないようです。
どんなアイデアがありますか?
答え1
ファイルシステムには、/sys
主にudevの利点のためのカーネル設定に関する情報と、いくつかのオプションのユーザースペース設定に対するいくつかのノブが含まれています。ストレージ対応ファイルシステムではないため、ファイル権限の変更などのランダムな変更はできません。
ルート以外のプロセスでいくつかのノブを制御したい場合は、次の2つのオプションがあります。
- ルートとして実行され、非ルートプロセスと通信できるAPIをエクスポートするデーモンプロセスを作成します(例:dbusを使用)。ルート以外のプロセスは、ファン速度を設定するコマンドを送信します。ルートプロセスはいくつかの権限と完全性チェックを実行し、変更を実行します。
sudo
デーモンを使用するのではなく、必要な権限を取得するには、このようなものを使用してください。それでも同じチェックを実行する必要がありますが、rootとして別のプロセスを実行する必要はありません。みんな時間。