acpid - 플러그를 뽑은 후 최대 절전 모드로 전환

acpid - 플러그를 뽑은 후 최대 절전 모드로 전환

저는 Linux 프로그래밍(특히 lubuntu)이 처음이고 오래되고 버려진 노트북을 제가 원하는 방식으로 작동시키기 위한 프로젝트를 진행하고 있습니다. acpi와 acpid가 설치되어 있고 acpi 명령을 실행하면 랩톱이 연결되어 있는지(충전 중) 또는 분리되어 있는지(방전 중) 알 수 있습니다.

이제 노트북이 방전되면 자동으로 절전 모드로 전환되기를 원합니다. 내 첫 번째 아이디어는 30초마다 acpi를 폴링한 다음 "discharge"라는 단어에 응답할 때마다 절전 명령을 실행하는 스크립트를 작성하는 것이었습니다. 그러나 나는 acpid가 이벤트 중심적이기 때문에 사용하기에 더 나은 도구라는 것을 알고 있습니다. 플러그를 뽑은 후 노트북을 최대 절전 모드로 만드는 방법에 대한 자료를 찾을 수 없는 것 같습니다. 어떤 제안이 있습니까?

답변1

데몬은 acpidACPI 하위 시스템을 통해 배터리 이벤트를 수신해야 합니다. 노트북을 분리/연결하면 관련 배터리 이벤트가 나타납니다. 이러한 이벤트는 시스템 종료/일시 중지/최대 절전 모드와 같은 작업과 연관될 수 있습니다.

/var/log/messages먼저 노트북을 분리한 상태에서 관련 로그 파일을 관찰하거나 관련 로그 파일을 확인하여 확인해 보세요. 다음과 같은 것이 있어야합니다

... ACPI action undefined: ...

아무것도 없으면 acpi_listenacpid에 연결하고 이벤트를 수신하는 명령을 시도할 수 있습니다.

/etc/acpi/events그런 다음 배터리 이벤트 디렉터리 아래에 일반 이벤트 핸들러를 구성할 수 있습니다. 예를 들어 battery.conf다음 내용 으로 파일을 만듭니다 .

event=battery.*
action=/etc/acpi/actions/battery.sh

이는 모든 배터리 이벤트가 스크립트에 의해 처리되어야 함을 나타냅니다 battery.sh. 이 스크립트에서는 파일에서 사용 가능한 배터리 상태를 모니터링합니다 /proc/acpi/battery/*/state. 특히 라인을 확인해보세요"충전 중"로 변경해야합니다"해고하다"노트북을 뽑을 때나"충전 중/충전됨"다시 꽂으면.

이 정보를 기반으로 이벤트 핸들러에서 최대 절전 모드 명령을 실행할 수 있습니다 battery.sh. 또한 다음과 같은 다른 유용한 예를 찾을 수 있습니다.깃허브.

관련 정보