Мне нужно заблокировать экран, когда мой компьютер просыпается от приостановки памяти,
Поэтому я попытался поместить следующий скрипт в /usr/lib/pm-utils/sleep.d
и /etc/pm/sleep.d
, но он так и не был выполнен,
#!/bin/sh
case "$1" in
hibernate|suspend)
;;
thaw|resume)
vlock -ans
;;
*) exit $NA
;;
esac
PS Это pm-suspend
не так pm-hibernate
.
РЕДАКТИРОВАТЬ
Пробовал и сервис systemd, не повезло
# /etc/systemd/system/resume@.service
[Unit]
Description=User resume actions
After=suspend.target
[Service]
User=root
Type=simple
ExecStart=vlock -ans
[Install]
WantedBy=suspend.target
И я systemctl enable resume@.service
тоже звонил, vlock еще не звонили.
arch-linux
suspend
pm-utils
маргаритка
источник
источник
echo executed script >> /tmp/resume
Ответы:
AFAIK
ExecStart
хочет полный путь к исполняемому файлу.Попробуй с
ExecStart=/usr/bin/vlock -ans
твоим/etc/systemd/system/resume@.service
источник
Вы установили права доступа и владельца, как описано в вики?
источник
Вы пытаетесь создать свой собственный хук, верно? Я читаю документацию по Arch Linux на pm-utils (ссылка ниже) и сначала проверю эти вещи:
Если вы уверены, что все правильно, то рассмотрите сам сценарий.
Вот ссылка на документы, которые я читаю по этому поводу: https://wiki.archlinux.org/index.php/pm-utils#Creating_your_own_hooks
Ваш сценарий совсем не похож на тот, который они показывают там. Вы вызываете / bin / sh вместо / bin / bash. Вы используете двойные квоты около 1 доллара, а они нет. Вы комбинируете варианты, а они нет. Все из которых должно быть в порядке, верно? За исключением, может быть, Ш против Бэша.
Как насчет того, чтобы поместить туда какие-нибудь операторы logger или echo для отладки, а затем проверить журналы, чтобы увидеть, начинается ли ваш сценарий. И если это так, то как далеко это продвинется.
источник
Я выяснил все каталоги, выполнив команду a
"sudo strace pm-hibernate 2>/root/myfile.log"
, или вы можете заменить pm-hibernate на pm-suspend. Через некоторое время машина выключится. Затем, когда вы включаете / возобновляете снова, читаете файл myfile.log, и в нем находятся все скрипты, файлы конфигурации, файлы журналов, к которым обращаются / пишут.Для моей Fedora 20 они:
и т. д. и несколько других каталогов.
Помогите себе с вашим конкретным дистрибутивом конкретной версии (кстати, Fedora 20 использует systemd).
источник