Systemd
Systemd - Система управления службами и служба инициализации.
Пример запуска службы
Создадим фаил /etc/systemd/system/my-app.service
[Unit] Description=My APP Service After=multi-user.target [Service] Type=simple # Указываем рабочую папку WorkingDirectory=/home/user/my_app_folder # Запускаем приложение ExecStart=myapp --debug # От пользователя user User=user # Always restart Restart=always [Install] # system wide service WantedBy=multi-user.target
Далее рестартим systemd чтобы перечитались все unit файлы, и запускаем службу. Последней командой смотрим статус службы
sudo systemctl daemon-reload sudo systemctl start my-app sudo systemctl status my-app
Для автозапуска пишем
sudo systemctl enable my-app
Пример запуска службы на примере java приложения
Создадим фаил /etc/systemd/system/java-app.service
[Unit] Description=Manage Java service [Service] WorkingDirectory=/home/user/my-java-app-folder ExecStart=/bin/java -jar java-app.jar User=user Type=simple Restart=on-failure RestartSec=10 [Install] WantedBy=multi-user.target
Дальше по аналогии как и с предыдущим пунктом