Приложение для перезапуска после приостановки |hibernate - определено в Upstart?

Я хочу, чтобы приложение перезапускалось (XBMC, но у меня не получилось с Firefox и Krusader, делающим это тоже) после того, как ПК вышел из режима ожидания или спящего режима. Я хочу написать сценарий, который выполняется при тех же условиях, и проверяет сеть, к которой я подключен, и выполняю.(Смонтировать мою NFS)
Я пробовал с

sudo touch /etc/pm/sleep.d/99_RestartXBMC
sudo chmod a+x /etc/pm/sleep.d/99_RestartXBMC
sudo nano /etc/pm/sleep.d/99_RestartXBMC

а также

#!/bin/bash
case "$1" in
    thaw)
       killall -9 xbmc.bin ;;
       sleep 5 ;;
       /usr/bin/xbmc ;;
    *)
        ;;
esac
exit $?

Но XBMC не запустится ( Firefox и Krusader тоже)
Итак, я хочу определить сценарий upstart, который будет выполняться после возобновления системы (из спящего или спящего режима).

start on xxxxx (xxx should be start from hibernate or sleep)

Не, если возможно сделать что-то подобное, и если да, как правильно определить условие ххххх

start on system resume ????
start on system thaw ???

1 ответ

Решение

Мои знания об Upstart ограничены, но в соответствии с часто задаваемыми вопросами Upstart вы должны полагаться на gnome-powermanager, генерирующий событие, на которое может действовать Upstart.

Я не знаю, использует ли gnome-pm в настоящее время libupstart, но я уверен, что это можно сделать, добавив событие upstart emit к сценариям sleep.d, на которые Upstart отреагирует.

На самом деле мне интересно, связаны ли проблемы с возобновлением работы сценария sleep.d с правами root, а не с пользователем, это также повлияет на Upstart. Вы можете проверить pm-suspend.log с помощью средства просмотра файлов журнала на наличие ошибок.

Другие вопросы по тегам