web-dev-qa-db-ja.com

HDD LEDまたは別のLEDを使用してプロセスアクティビティを取得できますか?

HDDと電源LEDをインジケーターとして使用してプロセスのステータスを取得できますか?

緑色の電源LEDを使用してステータスが利用可能であることを通知し、赤色のLEDを使用してステータスが利用不可であることを通知したいと思います。

6
Marcell

HDD LEDは通常、ハードドライブコントローラーに接続されています。 PCのオペレーティングシステムを点灯させる方法は、ハードドライブの動作を引き起こす以外にありません。どちらもOSにアクセスできません。

より簡単なのは、この目的のためにキーボードのLEDを使用することです。タグでUbuntuを示しているので、次のようなプログラムを確認することをお勧めします。 leddledcontrol

4
LawrenceC

Linuxボックスでは、/ sys/class/ledsサブディレクトリを介して、さまざまなLEDの状態と明るさに影響を与えることができます。

私のシステムでは:

> ls -l /sys/class/leds/
lrwxrwxrwx 1 root root 0 Jul 12 19:36 ath5k-phy0::rx -> ../../devices/pci0000:00/0000:00:14.0/0000:07:00.0/leds/ath5k-phy0::rx/
lrwxrwxrwx 1 root root 0 Jul 12 19:36 ath5k-phy0::tx -> ../../devices/pci0000:00/0000:00:14.0/0000:07:00.0/leds/ath5k-phy0::tx/

Ath5k-phy0 :: rxサブディレクトリを見てみましょう:

> ls -l
drwxr-xr-x 2 root root     0 Jul 12 21:26 power/
-rw-r--r-- 1 root root 4,096 Jul 12 21:26 brightness
lrwxrwxrwx 1 root root     0 Jul 12 21:26 device -> ../../../0000:07:00.0/
-r--r--r-- 1 root root 4,096 Jul 12 21:26 max_brightness
lrwxrwxrwx 1 root root     0 Jul 12 19:36 subsystem -> ../../../../../../class/leds/
-rw-r--r-- 1 root root 4,096 Jul 12 21:26 trigger
-rw-r--r-- 1 root root 4,096 Jul 12 19:36 uevent

表示されているファイルの内容を調べると、興味深いものになります。

triggerを調べると、使用可能な「組み込み」トリガーと、現在使用されているトリガーを確認できます。

> cat trigger 
none ADP1-online BAT0-charging-or-full BAT0-charging BAT0-full BAT0-charging-blink-full-solid rfkill0 rfkill1 [phy0rx] phy0tx phy0assoc phy0radio rfkill2 

角かっこ(右側)の付いたエントリを見つけます。これは、このLEDが現在ワイヤレス受信機のステータスによって制御されていることを示しています。パケットを受信すると、(このシステムでは)オレンジ色に点灯します。

このtriggerファイルに名前をエコーし​​て、それを制御するものを変更できます。バッテリーが充電中または満充電のときを表示したいですか?

(as root!)
> echo BAT0-charging-or-full > trigger

コントローラをnoneに設定すると、値をbrightnessファイルに出力して、LEDのオン/オフを制御できます。

詳細については、カーネルのドキュメントを参照することをお勧めします。 GIYF

私は過去にこれで遊んだことがありますが、最近は何もありません。使用可能なLEDは、ハードウェアとカーネルのドライバー/モジュールのみに基づいています。 YMMV。

6
lornix