Bagaimana cara menjalankan perintah pada penangguhan / kembali dari penangguhan?

9

Saya sering menunda laptop saya (pm-suspend) dan kadang-kadang desktop saya (pm-suspend-hybrid) cukup sering. Saya menggunakan ubuntu terbaru (13.10, cakep).

Apakah ada cara saya bisa menjalankan perintah ketika saya pergi ke suspend atau segera setelah keluar dari suspend? Saya ingin membunuh koneksi ssh keluaran terbuka dan berhenti offlineimap, karena batas waktu bagi mereka cenderung mengganggu. Ide ide?

Frew Schmidt
sumber

Jawaban:

10

Dari halaman manual pm-action(8):

/etc/pm/sleep.d, /usr/lib/pm-utils/sleep.d
     Programs in these directories (called hooks) are combined
     and executed in C sort order before suspend and hibernate
     with as argument ´suspend´ or ´hibernate´. Afterwards they
     are called in reverse order with argument ´resume´ and
     ´thaw´ respectively. If both directories contain a similar
     named file, the one in /etc/pm/sleep.d will get preference.
     It is possible to disable a hook in the distribution
     directory by putting a non-executable file in
     /etc/pm/sleep.d, or by adding it to the HOOK_BLACKLIST
     configuration variable.

Dengan demikian, Anda cukup meletakkan skrip shell seperti ini:

#!/bin/bash

case "$1" in
suspend|hibernate)
    actions to
    take
    on suspend
    or hibernate
    ;;
resume|thaw)
    other actions
    to trigger
    on resume
    ;;
esac

menjadi eg 99-myhooks.shdan membuatnya dapat dieksekusi.

BTW, Anda dapat membunuh koneksi SSH basi dengan memasukkan Enter~.Enterdi sesi SSH.

Andreas Wiese
sumber
Ini jelas pra-systemd
MountainX