Учитывая, что я работаю 15.10, моя система должна использовать systemd
, подтвержденный ...
$ ps -p1 | grep systemd && echo systemd || echo upstart
1 ? 00:00:02 systemd
systemd
Но у меня определен сценарий upstart
, ~/.config/upstart/startup.conf
description "my startup scripts"
start on desktop-start
task
console log
script
exec ~/scripts/startup.sh start
end script
Сценарий запуска работает, я думаю, используя upstart
?
Но тогда у меня есть сценарий завершения работы также определен, ~/.config/upstart/shutdown.conf
description "my shutdown scripts"
start on desktop-end
task
console log
script
exec ~/scripts/backup.sh start
end script
Но этот сценарий не запускается. И когда я пытаюсь запустить либо вручную ..
sudo start startup
или sudo start shutdown
Я получаю ..
start: Unable to connect to Upstart: Failed to connect to socket /com/ubuntu/upstart: Connection refused
Сценарий выключения работает, если я запускаю его вручную из ~/scripts/backup.sh
.
Разрешения
-rwxrwxr-x 1 deanresin deanresin 933 May 28 01:31 backup.sh
-rwxrwxr-x 1 deanresin deanresin 2061 May 28 14:06 startup.sh
-rw-rw-r-- 1 deanresin deanresin 124 May 28 14:04 shutdown.conf
-rw-rw-r-- 1 deanresin deanresin 218 May 28 14:02 startup.conf
благодаря комментарию ниже это была проблема с разрешениями. Изменено на ..
-rwxrwxr-x 1 deanresin deanresin 124 May 28 14:04 shutdown.conf
-rwxrwxr-x 1 deanresin deanresin 218 May 28 14:02 startup.conf
Редактировать: по какой-то причине startup.conf
не требует разрешения на выполнение. Эти разрешения работали ...
-rwxrwx--- 1 deanresin deanresin 124 May 28 14:04 shutdown.conf
-rw-rw---- 1 deanresin deanresin 218 May 28 14:02 startup.conf
Почему мой стартовый скрипт работает и почему не работает мой скрипт завершения работы? И почему работает upstart? Либо это? Я в замешательстве.
Это вероятно проблема полномочий. Оба .conf
файлы должны быть исполняемым файлом.
Сделайте:
chmod a+x ~/.config/upstart/shutdown.conf
И почему выскочка работает? Или это? […] я все еще смущен, почему выскочка работает вообще.
systemd работает как менеджер по сервису в масштабе всей системы. выскочка работает как менеджер на сеансовую службу.