Как запускать корневые сценарии с помощью службы systemd?

Я пытаюсь начать несколько вещей при запуске в CentOS, но я сталкиваюсь с некоторыми проблемами, которые я не знаю, как их решить.

Вот файл my.service:

[Unit] Description="Boot Jenkins slave and SonarQube server" After=network.target [Service] Type=simple ExecStart=/var/boot.sh User=root Group=root [Install] WantedBy=default.target 

После того, как systemctl daemon-reload , systemctl enable my.service и systemctl start my.service , ничего на самом деле не происходит / работает.

Результатом состояния systemctl status my.service является:

 $ systemctl status my.service ● startup.service - "Boot Jenkins slave and SonarQube server" Loaded: loaded (/etc/systemd/system/my.service; enabled; vendor preset: disabled) Active: inactive (dead) since Wed 2017-04-26 19:49:31 IDT; 1min 41s ago Process: 988 ExecStart=/var/boot.sh (code=exited, status=0/SUCCESS) Main PID: 988 (code=exited, status=0/SUCCESS) Apr 26 19:49:00 build-1 systemd[1]: Started "Boot Jenkins slave and SonarQube server". Apr 26 19:49:00 build-1 systemd[1]: Starting "Boot Jenkins slave and SonarQube server"... Apr 26 19:49:00 build-1 boot.sh[988]: Starting SonarQube... Apr 26 19:49:01 build-1 boot.sh[988]: Started SonarQube. 

Предположительно, все должно было работать, но они не …
Однако, если я буду вручную запускать boot.sh, они будут работать.

 su ... ./boot.sh 

boot.sh:

 #!/bin/bash nohup java -jar /var/jenkins/slave.jar -jnlpUrl https://***.jnlp -secret **** & /var/sonarqube-6.3/bin/linux-x86-64/sonar.sh start 

Обратите внимание, что для SonarQube требуется root.
Что я делаю не так?

Обновление: журналы из cat /var/log/messages | grep SonarQube cat /var/log/messages | grep SonarQube :

 Apr 26 20:58:53 build-1 systemd: Started "Boot Jenkis slave and SonarQube server". Apr 26 20:58:53 build-1 systemd: Starting "Boot Jenkis slave and SonarQube server"... Apr 26 20:58:53 build-1 boot.sh: Starting SonarQube... Apr 26 20:58:53 build-1 boot.sh: Started SonarQube. 

One Solution collect form web for “Как запускать корневые сценарии с помощью службы systemd?”

Для SonarQube я закончил это следующим образом: https://devopscube.com/setup-and-configure-sonarqube-on-linux/ , в котором указано, как добавить SonarQube в качестве службы … это было странно проще, чем системный подход.

Для первой команды в файле это все еще проблема …

  • Почему rsyslog не указан при запуске службы?
  • Как смонтировать / отключить SD-карту, которая была автоматически установлена ​​при загрузке?
  • Системный журнал службы журнала занимает два часа
  • Отправьте команду sleep на диск usb, установленный как / home (Fedora 20) из сценария завершения работы
  • Systemd: Что не так с этим устройством?
  • Взаимодействие команд initrd и системных служб, выполняющих то же самое
  • Скрипт запуска через Linux через минуту после загрузки
  • Какое обходное решение следует использовать для преодоления проблемы с systemctl, отказывающегося разрешать файлы модулей, которые являются символическими ссылками?
  • запустить x11vnc при загрузке
  • С помощью systemd-networkd выполните действие при изменении конфигурации сети
  • Как включить унисон для входа в ssh из сервисного модуля systemd?
  • Linux и Unix - лучшая ОС в мире.