Saya perlu mengunci layar ketika komputer saya terbangun dari memori yang tertunda,
Jadi saya mencoba untuk menempatkan skrip berikut ke /usr/lib/pm-utils/sleep.d
dan /etc/pm/sleep.d
, tetapi tidak pernah dieksekusi,
#!/bin/sh
case "$1" in
hibernate|suspend)
;;
thaw|resume)
vlock -ans
;;
*) exit $NA
;;
esac
PS Ini pm-suspend
tidak pm-hibernate
.
EDIT
Mencoba layanan systemd juga, tidak berhasil:
# /etc/systemd/system/[email protected]
[Unit]
Description=User resume actions
After=suspend.target
[Service]
User=root
Type=simple
ExecStart=vlock -ans
[Install]
WantedBy=suspend.target
Dan saya systemctl enable [email protected]
juga menelepon , vlock tidak dipanggil.
arch-linux
suspend
pm-utils
bunga aster
sumber
sumber
echo executed script >> /tmp/resume
Jawaban:
AFAIK
ExecStart
ingin path lengkap ke executable.Coba dengan
ExecStart=/usr/bin/vlock -ans
di/etc/systemd/system/[email protected]
sumber
Apakah Anda mengatur izin dan pemilik seperti yang dijelaskan dalam wiki?
sumber
Anda mencoba membuat pengait sendiri, bukan? Saya membaca dokumentasi Arch Linux pada pm-utils (tautan di bawah) dan saya akan memeriksanya terlebih dahulu:
Jika Anda yakin semua itu benar, pertimbangkan skrip itu sendiri.
Berikut ini tautan ke dokumen yang saya baca tentang ini: https://wiki.archlinux.org/index.php/pm-utils#Creating_your_own_hooks
Script Anda tidak seperti yang ditunjukkan di sana. Anda memanggil / bin / sh bukannya / bin / bash. Anda menggunakan qout ganda sekitar $ 1 dan tidak. Anda menggabungkan opsi dan mereka tidak. Semuanya harus baik-baik saja, bukan? Kecuali mungkin sh versus bash.
Bagaimana kalau menaruh beberapa pernyataan logger atau gema di sana untuk debugging dan kemudian memeriksa log untuk melihat apakah skrip Anda memulai. Dan jika ya, seberapa jauh hasilnya.
sumber
Saya menemukan semua direktori dengan melakukan
"sudo strace pm-hibernate 2>/root/myfile.log"
, atau Anda dapat mengganti pm-hibernate dengan pm-suspend. Setelah beberapa saat mesin akan mati. Kemudian ketika Anda menyalakan / melanjutkan lagi, baca myfile.log, dan di dalamnya semua skrip, konfigurasi, file log diakses / ditulis.Untuk Fedora 20 saya, mereka adalah:
dll dan beberapa direktori lainnya.
Bantu diri Anda dengan distro spesifik Anda untuk versi spesifik (Fedora 20 menggunakan systemd btw).
sumber