AC 스위칭 시 자동으로 스크립트를 실행하려면 어떻게 해야 하나요?

AC 스위칭 시 자동으로 스크립트를 실행하려면 어떻게 해야 하나요?

따라서 AC에서 작업을 시작할 때는 이 스크립트를 실행하고 싶지 않으며 배터리로 작업을 시작할 때는 이 스크립트 또는 더 나은 다른 스크립트를 실행하고 싶습니다.

나는 노력했다

  • /etc/acpi/power.sh
  • /etc/laptop-mode/battery-start에 심볼릭 링크 추가

작동하지 않는 것 같습니다.

답변1

에서 스크립트를 사용하여 원하는 작업을 수행할 수 있어야 합니다 /etc/pm/power.d. 다음 HOWTO.hooks파일 에서 인용 pm-utils:

pm-utils 후크를 작성하는 방법:

매개변수

pm-utils 후크는 최소한 하나의 매개변수를 허용하는 실행 파일입니다.

power.d의 후크의 경우 해당 매개변수의 잠재적 값은 다음과 같습니다.

  • true - 시스템이 배터리 전원으로 전환될 때 후크는 적절한 모든 작업을 수행해야 합니다.
  • false - 후크는 시스템이 배터리 전원에서 전환될 때 적절한 작업을 수행해야 합니다.

/usr/lib/pm-utils/power.d스크립트를 구성하는 방법에 대한 아이디어를 얻으려면 기존 전원 후크 중 일부를 읽어볼 수도 있습니다 .

인터페이스 를 사용하는 경우 pm-utils첫 번째 인수를 통해 AC 전원을 사용하고 있는지 여부를 알 수 있습니다. 이면 $1배터리 true전원으로 전환하고, 이면 false다시 배터리 전원으로 전환합니다. 주전원.

답변2

나는 acpi를 사용하여 비슷한 목표를 달성합니다.

/usr/bin/acpi_listen을 사용하여 원하는 acpi 이벤트를 잡으세요. 내 노트북에서 배터리로 전환할 때 발생하는 이벤트는 "ac_adapter ACPI0003:00 00000080 00000000"입니다. 그래서 새 이벤트를 만듭니다: /etc/acpi/events/switch-to-battery, 아래 내용은 다음과 같습니다.

event=ac_adapter ACPI0003:00 00000080 00000000
action=/etc/acpi/switch-to-battery.sh

ac_adapter.sh에서 원하는 대로 수행하세요. acpi-support가 설치되어 있으면 더 많은 예제를 찾을 수 있습니다.

마지막으로 이 명령을 실행하여 새 이벤트를 적용합니다.

sudo service acpid restart

답변3

정말 정확한 질문은 아닙니다. 약간의 오류가 발생했지만 이제 수정하고 power.sh를 실행하면 작동합니다.

if on_ac_power; then
  echo 0 > /home/riad/1 
  #on ac
else 
  echo 1 > /home/riad/1
  #on battery
fi

그리고 그것은 작동합니다

관련 정보