
У меня есть следующий systemd
файл модуля
$ cat /etc/systemd/system/myservice.service
[Unit]
Description = My Service
[Service]
ExecStart = /bin/sh -c 'exec /usr/local/bin/myservice [arguments] >>/var/log/myservice/log.log 2>>/var/log/myservice/err.log'
EnvironmentFile = /etc/myservice/config
User = someuser
Group = somegroup
[Install]
WantedBy = multi-user.target
Я использую формат перенаправления для журналов, учитывая, что мой systemd
довольно старый ( 232
)
Я хочу вызвать эту службу через, systemd run
поэтому я печатаю
sudo systemd-run myservice
Running as unit: run-rac9ffa945b374f2fa8a8273567427005.service
Однако в своих журналах выполнения я вижу, что
а) EnvironmentFile = /etc/myservice/config
вообще не принимается во внимание
б) журналы не создаются/var/log/myservice/
Имеют ли эти вопросы какой-либо смысл?
решение1
systemd-run
не запускает службу, указанную в /etc/systemd/system/myservice.service
, она просто работает /usr/local/bin/myservice
во временном модуле, поэтому модуль называется run-rac9ffa945b374f2fa8a8273567427005.service
, а не myservice.service
.
Для запуска /etc/systemd/system/myservice.service
используйте systemctl start myservice.service
(после запуска, systemctl daemon-reload
если вы только что написали файл модуля).