はじめましてする。
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
これで動いた。
自動起動の有効化
$ 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
参考