
所以,我不想在使用交流電開始工作時運行它,而在使用電池開始工作時運行這個或更好的其他腳本
我試過
- /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
介面,系統會透過第一個參數告知您是否使用交流電源:如果$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
它有效