Хотите сделать выскочку сценария; нужна помощь и совет

Атм, мне нужно случайным образом начать и остановить (из-за отсутствия лучшего слова в моей голове) работу. Я запускаю его, набирая java -jar foo.jar и останавливая его, выясняю его pid и убиваю его. Убийство не приведет к потере или повреждению данных или чему-либо еще, только к вашему сведению. Выполнение этих двух шагов утомительно, поскольку первую команду необходимо выполнить из определенного каталога, например /usr/share/jetty (уничтожение можно выполнить из любого места).

Итак, я подумал что-то вроде

service foo start и service foo stop, чтобы запускать и останавливать службы. Возможно ли это, а главное правильнее? Есть ли другое решение?

Спасибо.

13
задан 18 January 2011 в 13:46

1 ответ

Да Выскочка является довольно хорошим вариантом для этого. Просто создайте новый файл:

sudoedit /etc/init/my-jetty-jar.conf

Можно изменить имя файла на то, что Вы любите, но затем засовываете это в него:

description     "Run my jetty jar"

# no start option as you might not want it to auto-start
# This might not be supported - you might need a: start on runlevel [3]
stop on runlevel [!2345]

# if you want it to automatically restart if it crashes, leave the next line in
respawn

script
    cd /usr/share/jetty
    su -c "/usb/bin/java -jar /path/to/foo.jar" nobody
end script

Некоторые примечания об этом, я suлуг никому для безопасности. Вам, возможно, понадобился бы он к su в другую учетную запись, но, вероятно, не рекомендуется, чтобы это работало как root.

13
ответ дан 18 January 2011 в 13:46

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

Похожие вопросы: