Linuxの起動時にスクリプトを自動実行させる方法をご紹介します。
systemdを使うのがおすすめ!
Systemdを使う(サービスに登録して自動実行させる)のが確実です。
- crontabに@rebootを指定する方法
- /etc/rc.localにコマンドを指定する方法
などなどいろいろありますが、どれも古いやり方だったりします。サービス作ったほうが絶対いいです。
起動時にスクリプトを自動実行させるには?
まずはサービスファイルを作成します。
sudo nano /etc/systemd/system/myscript.service
[Unit]
Description=My Custom Script
[Service]
Type=simple
ExecStart=/path/to/your/script.sh #スクリプトのパスを指定する
[Install]
WantedBy=multi-user.target
作成したサービスの自動起動を有効にします。
sudo systemctl enable myscript.service
動かないときは?
今すぐ実行するには以下のコマンドを実行します。
sudo systemctl start myscript.service
動かないときはログを確認します。
journalctl -xe
上記コマンドを実行するとログが表示されます。
指定したスクリプトはバックグラウンドで実行されます。
バックグラウンドで実行させるときの&は不要です。またnohupも不要です。
コメント