systemd スクリプトが実行されない

systemd スクリプトが実行されない

これは非常に単純なものですsystemd

[Unit]
Description="Something"

[Service]
Type=simple
ExecStart=/bin/systemctl restart nginx

を使用して実行しsystemctl start my-script.service、 を使用してクエリを実行するとsystemctl status my-script.service、ステータス が表示されLoaded、永久にその状態が続きます。

systemctl問題は、内部から使用したいということだと感じていますsystemd

答え1

systemctl statusその時点ではサービスが systemd にロードされているため、サービスに対して「ロード済み」と報告されます。他に何を期待していたのかわかりません。自分でサービスを開始してみましたが、期待どおりに動作し、Nginx サービスに再起動が発行されました。

$ journalctl | tail -10
Apr 27 12:39:28 myhost.com systemd[1]: Started "Something".
Apr 27 12:39:28 myhost.com systemd[1]: Stopping A high performance web server and a reverse proxy server...
Apr 27 12:39:28 myhost.com systemd[1]: Stopped A high performance web server and a reverse proxy server.
Apr 27 12:39:28 myhost.com systemd[1]: Starting A high performance web server and a reverse proxy server...
Apr 27 12:39:28 myhost.com systemd[1]: Started A high performance web server and a reverse proxy server. 

systemd サービス ファイルが期待どおりに動作しない場合は、質問をより具体的にしてください。

関連情報