Problemas para iniciar o serviço systemd (Jessie)

Problemas para iniciar o serviço systemd (Jessie)

Eu tenho um serviço systemd que preciso executar antes de iniciar a rede e estou lutando um pouco com isso. De acordo com isso: Executando serviços após a rede estar ativaeu preciso usarAntes = rede-pre.target, no entanto, meu serviço não está iniciando.

Dependências:

root@server:~# systemctl list-dependencies my-script --reverse
my-script.service
● └─network-pre.target (has a red dot next to it)

A unidade real em si:

[Unit]
Description=My script
Before=network-pre.target
Wants=network-pre.target

[Service]
ExecStart=/etc/my-script
Type=oneshot
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target

Alguma sugestão?

Responder1

Remova a linha Wants=, pois você está listando algo impossível de satisfazer: inicie o serviço antes de network-pre.target, mas também depois de (Wants). Portanto, a unidade deve ser lida como:

[Unit]
Description=My script
Before=network-pre.target

[Service]
ExecStart=/etc/my-script
Type=oneshot
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target

Responder2

Isto é o que funcionou para mim:

[Unit]
Description=@CPACK_PACKAGE_DESCRIPTION_SUMMARY@

Before=network-pre.target
Wants=network-pre.target

DefaultDependencies=no
Requires=local-fs.target
After=local-fs.target

[Service]
Type=oneshot

ExecStart=/sbin/my-script.sh

RemainAfterExit=yes

[Install]
WantedBy=network.target

informação relacionada