はじめまして systemd

はじめましてする。

systemdとは

システムを管理してくれるデーモン。Linuxの起動処理やらシステム管理やらをしてくれる。

設定ファイルは

(CentOS) /etc/systemd/system/

(Ubuntu) /lib/systemd/system/

配下で hogehoge.service として保存・管理される。

systemd で ubuntu の起動時にシェルスクリプトを自動実行してみる

いざやると詰まる。

試行錯誤の後、最終的に設定ファイルは

[Unit] Description=setumei dayo [Service] User=ubuntu WorkingDirectory=/home/ubuntu/ ExecStart=/bin/sh /home/ubuntu/shell.sh [Install] WantedBy=multi-user.target
/lib/systemd/system/hogehoge.service

これで動いた。

自動起動の有効化
$ sudo systemctl enable hogehoge
無効化
$ sudo systemctl disable hogehoge
起動
$ sudo systemctl start hogehoge
ステータス確認
$ sudo systemctl status hogehoge
ログ表示
$ sudo journalctl -f -u hogehoge
再読み込み

設定変更した場合は再読み込みが必要

$ sudo systemctl daemon-reload

参考