Как установить в автозапуск python-скрипт используя systemd

Иногда требуется какой-то скрипт или программу запускать как системный сервис. Это можно легко провернуть, если в вашем дистрибутиве используется система инициализации и управления демонами - systemd.

Для примера, я создам простейший python-скрипт который будет слушать 9988 порт и добавлю его в автозагрузку при старте операционной системы.

Содержание
  1. 1. Простой python-scrypt
  2. 2. Создание файла сервиса.
  3. 3. Включение нового добавленного сервиса.
  4. 4. Запуск/Остановка/Статус сервиса

1 1. Простой python-scrypt

Код скрипта:

2 2. Создание файла сервиса.

Теперь создадим файл сервиса для с помощью которого расскажем systemd что нам требуется. Файл должен иметь расширение .service и находиться в директории /lib/systemd/system/

Добавим информацию о нашем сервисе (можете изменить местоположение скрипта и описание сервиса):

Мне кажется из содержимого всё и так понятно - какая строка и за что отвечает.

3 3. Включение нового добавленного сервиса.

Вы добавили, наконец-то, ваш сервис в систему. теперь необходимо перезапустить демон systemctl чтобы он прочел новый файл. Каждый раз как вы вносите изменения в .service файлы вам нужно перезапустить демон.

Теперь включим запуск сервиса при загрузке системы, и запустим сам сервис.

4 4. Запуск/Остановка/Статус сервиса

В конце проверим статус нашего нового сервиса:

Изображение 1Проверим что наш python-скрипт слушает нужный нам порт:

Иллюстрация 2Команды для запуска, остановки и перезапуска сервиса:

 

Рейтинг
( 1 оценка, среднее 5 из 5 )
Понравилась статья? Поделиться с друзьями:
Блог админа