Как я могу написать отказоустойчивый скрипт запуска, который запускает приложение с необходимыми разрешениями?

1

Я планирую настроить сервер с использованием Ubuntu Lucid Lynx , который использует upstart. Я не нахожу документацию слишком интуитивно понятной, поэтому я хотел бы попросить решение для моей конкретной проблемы.

В настоящее время я использую скрипт для запуска туннеля IPv6 с помощью Freenet6 / gogo6 - сейчас это простой скрипт, вызывающий одну команду и ее файл конфигурации:

 #! /bin/sh
/usr/local/gw6c/bin/gw6c -f /usr/local/gw6c/bin/gw6c.conf

Конечно, когда это идет вниз, это имеет тенденцию быть тихим, и поэтому я должен был бы войти и перезапустить это.

Я хотел бы установить скрипт выскочки, который будет

  1. запустить это приложение при запуске, функционально идентично скрипту, который у меня есть
  2. перезапустите этот скрипт как «root» в случае сбоя приложения
  3. Позвольте мне перезапустить туннель, если что-то пойдет не так.
Подмастерье Компьютерщик
источник

Ответы:

2

Приведенный ниже скрипт работает на upstart в Ubuntu Lucid Lynx alpha 3

respawn
console none

start on (local-filesystems and net-device-up IFACE=eth0)
stop on [!12345]

script
chdir /usr/local/gw6c/bin/
exec /usr/local/gw6c/bin/gw6c 
end script
Подмастерье Компьютерщик
источник