Anyservice: различия между версиями

Материал из Etersoft wiki
Перейти к навигацииПерейти к поиску
Строка 1: Строка 1:
Anyservice - скрипт на bash позволяющий превратить программу в сервис. Настраивается аналогично systemd, работает на systemv.
[http://git.etersoft.ru/people/danil/packages/?p=anyservice.git; Anyservice] - скрипт на bash позволяющий превратить программу в сервис. Настраивается аналогично systemd, работает на [[w:UNIX_System_V | systemv]]


[http://git.etersoft.ru/people/danil/packages/?p=anyservice.git; anyservice.git]
Пример использования:


1) Скачиваем скрипт:
<pre>
<pre>
Пример использования:
0) Скачиваем скрипт:
#wget "http://git.etersoft.ru/people/danil/packages/?p=anyservice.git;a=blob_plain;f=anyservice.sh" -O anyservice && mv -u anyservice /usr/bin/anyservice && chmod 755 /usr/bin/anyservice
#wget "http://git.etersoft.ru/people/danil/packages/?p=anyservice.git;a=blob_plain;f=anyservice.sh" -O anyservice && mv -u anyservice /usr/bin/anyservice && chmod 755 /usr/bin/anyservice
</pre>


1) Редактируем файл настроек systemd:
2) Редактируем файл настроек systemd:
/etc/systemd-lite/mysleep.service
/etc/systemd-lite/mysleep.service
<pre>
[Unit]
[Unit]
Description=run test sleep
Description=run test sleep
Строка 24: Строка 24:
[Install]
[Install]
WantedBy=multi-user.target
WantedBy=multi-user.target
</pre>


#сейчас это все поддерживаемые опции
сейчас это все поддерживаемые опции


2) Запускаем скрипт
3) Запускаем скрипт
<pre>
# anyservice mysleep start
# anyservice mysleep start
</pre>


3) Доступные команды
4) Доступные команды
<pre>
anyservice --help
# anyservice.sh <service file name> [start|stop|restart|status]
# anyservice.sh <service file name> [start|stop|restart|status]
</pre>
</pre>
Строка 45: Строка 50:
=== Ссылки ===
=== Ссылки ===
* [[Запуск сервиса под пользователем]] - описание решаемой проблемы
* [[Запуск сервиса под пользователем]] - описание решаемой проблемы
*  
* [http://git.etersoft.ru/people/danil/packages/?p=anyservice.git; Anyservice] - гит репозиторий





Версия 15:59, 2 марта 2015

Anyservice - скрипт на bash позволяющий превратить программу в сервис. Настраивается аналогично systemd, работает на systemv

Пример использования:

1) Скачиваем скрипт:

#wget "http://git.etersoft.ru/people/danil/packages/?p=anyservice.git;a=blob_plain;f=anyservice.sh" -O anyservice && mv -u anyservice /usr/bin/anyservice && chmod 755 /usr/bin/anyservice

2) Редактируем файл настроек systemd: /etc/systemd-lite/mysleep.service

[Unit]
Description=run test sleep

[Service]
Type=simple
PIDFile=/var/run/odoo.pid
User=lav
WorkingDirectory=/home/lav/odoo/
ExecStart=/home/lav/odoo/odoo.py
Restart=always

[Install]
WantedBy=multi-user.target

сейчас это все поддерживаемые опции

3) Запускаем скрипт

# anyservice mysleep start

4) Доступные команды

anyservice --help
# anyservice.sh <service file name> [start|stop|restart|status]

Описание работы скрипта

  1. Разбор конфига systemd
  2. Создание конфига для monit
  3. Запуск требуемого процесса через monit, используется start-stop-daemon

Планы

  • Включить в epm

Ссылки


Другие решения, не связанные с /sbin/init