我可以使用 HDD LED 或其他 LED 来获取进程活动吗?

我可以使用 HDD LED 或其他 LED 来获取进程活动吗?

我可以使用 HDD 和电源 LED 作为指示器来获取进程的状态吗?

我想使用绿色电源 LED 来告诉我状态可用,并使用红色 LED 来告诉我状态不可用。

答案1

HDD 指示灯通常与硬盘控制器相连。除了引起硬盘活动外,PC 上的操作系统没有其他方法可以使其亮起。操作系统无法访问电源指示灯。

更简单的方法是使用键盘 LED 来实现此目的。由于您在标签中指示 Ubuntu,因此您可能需要查看一个名为 的程序。ledd ledcontrol

答案2

在 Linux 机器上,你可以通过以下方式查看和影响各种 LED 的状态和亮度:/sys/class/leds子目录。

在我的系统上:

> 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

如果你检查所显示文件的内容,就会发现很有趣。

在看扳机,您可以看到有哪些“内置”触发器可用,以及当前正在使用哪一个:

> 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 当前受无线接收器状态控制。当它接收到数据包时,它会发出橙色光(在此系统上)。

您可以向此回复名称扳机文件来更改控制它的因素。想要显示电池何时充电或充满?

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

如果将控制器设置为没有任何,然后你可以输出值到亮度文件来控制LED的开/关。

总是最好参考内核文档来获取更多信息。GIYF

我以前玩过这个,但最近没什么特别的。可用的 LED 完全取决于您的硬件和内核驱动程序/模块。YMMV。

相关内容