노트북의 LED를 일시적으로 비활성화 할 수 있습니까? (HDD, 전원, 충전)


10

내 질문은 랩톱의 표시기 LED를 비활성화하기 위해 터미널 명령 (또는 다른 것)을 실행할 수 있는지 여부입니다.

어쨌든 꺼진 CAPS, NUM 및 WiFi 용 LED가 있습니다. 그러나 어두울 때는 HDD 사용량 표시기 LED가 항상 깜박일 때 매우 성가시다.
지속적으로 빛나는 파란색 / 빨간색 전원 LED와 충전 표시등이 꺼져 있습니다.

가능한 경우 해당 LED를 비활성화하는 스크립트를 작성하고 싶습니다. 소프트웨어 나 하드웨어에 의해 제어됩니까? 내 노트북은 약 10 년 된 이름이없는 모델 일 수 있습니다 (MaxData Pro 6100 iw). Ubuntu 14.10 (Utopic Unicorn)에서 실행 중입니다.


4
검은 전기 테이프?
— oldfred

@oldfred 만약 내가 이런 유형의 솔루션에 관심이 있다면, Lifehacks 에 대한 질문을 게시했을 것입니다 ! 아니요, 가능하면 소프트웨어 솔루션을 원합니다. 또한 단축키로 화면을 끄는 스크립트가 있으며 명령도 추가하고 싶습니다.
— 바이트 사령관

2
나는이 조명 각각이 다른 드라이버에 의해 별도로 관리된다는 것을 이해합니다. "하나의 크기에 모두 맞는"솔루션은 거의 없습니다.
— 세스

나는 많은 명령을 실행할 수 있지만 문제는 아닙니다. 수동으로 제어 할 수있는 모든 LED에 대해 기쁠 것입니다 ... :-)
— Byte Commander

1
프라이버시 관련 측면 참고 : 일부 카메라의 경우 특히 표시등이 전원에 연결되어 있습니다. 이렇게하면 카메라를 사용중인 경우 LED가 항상 켜집니다. 이렇게하면 악의적 인 사용자가 소프트웨어를 통해 LED를 비활성화하고 사용자가 모르게 카메라를 켤 수 없습니다.
— 다니엘

답변:


5

일부 LED는 하드웨어 전용이므로 프로그래밍 방식으로 상태를 변경할 수 없습니다.

제어 할 수있는 것은에서 sysfs가상 파일 시스템을 통해 액세스 할 수 있습니다 /sys/class/leds/.

특정 LED를 프로그래밍 방식으로 제어 할 수 있는지 여부는 특정 하드웨어에 따라 다릅니다. 예를 들어, 데스크탑 컴퓨터에는 몇 개의 LED가 있지만 그중 어느 것도 제어 할 수없는 것 같습니다. 또한 두 대의 랩톱에서 실험했으며, 아래에 몇 가지 항목 /sys/class/leds/이 있지만 LED의 상태를 제어 할 수 없었습니다. 즉, 특정 커널 드라이버는 수동 제어를 허용하지 않습니다. 읽기 전용 인터페이스를 제공하는 LED 효과없이 시도한 내용은 다음과 같습니다.

# cd /sys/class/leds/
# ls
ath9k-phy0
# cd ./ath9k-phy0
# ls
brightness  device  max_brightness  power  subsystem  trigger  uevent
# cat ./trigger 
[none] AC-online BAT0-charging-or-full BAT0-charging BAT0-full BAT0-charging-blink-full-solid usb-gadget usb-host cpu0 cpu1 rfkill1 phy0rx phy0tx phy0assoc phy0radio phy0tpt rfkill4 
# echo 'AC-online' > ./trigger 
# cat ./trigger 
none [AC-online] BAT0-charging-or-full BAT0-charging BAT0-full BAT0-charging-blink-full-solid usb-gadget usb-host cpu0 cpu1 rfkill1 phy0rx phy0tx phy0assoc phy0radio phy0tpt rfkill4 
# echo 'none' > ./trigger 
# echo 'phy0rx' > ./trigger 
# echo 'none' > ./trigger 
# cat ./trigger 
[none] AC-online BAT0-charging-or-full BAT0-charging BAT0-full BAT0-charging-blink-full-solid usb-gadget usb-host cpu0 cpu1 rfkill1 phy0rx phy0tx phy0assoc phy0radio phy0tpt rfkill4 
# cat ./brightness 
0
# cat ./max_brightness 
255
# echo 255 > ./brightness 

이론적으로 위와 같은 것을 사용하면 특정 하드웨어의 커널 드라이버에서 지원하는 LED를 제어 할 수 있습니다. 커널에서 특정 LED를 제어 할 수 없다면 커널 모듈을 작성하는 데 부족한 일이 많지 않습니다.

수퍼 유저 주제에 대한 자세한 내용은 다음과 같습니다 .

최고의 소스는 다음과 같습니다 : 커널 문서


1
나는 문서를 다운로드했고 그것들을 통해 스스로 일할 것이다. 감사. 그러나 가능하다면 단계별 안내를 부탁드립니다.
— Byte Commander
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.