
Ubuntu 16.04 で起動時にアプリケーションを起動するように設定する方法
アプリケーションをサービスとしてセットアップするために、次のファイルを使用しています。
/etc/init.d/myapp
/etc/systemd/systedm/myapp.service
/usr/local/myapp/myapp.sh
起動時にアプリケーションを起動するために、次のコマンドを使用しましたが、エラーが発生します。この問題を解決するにはどうすればよいですか?
sudo update-rc.d paxata-server defaults
insserv: script paxata-server is not an executable regular file, skipped!
insserv: warning: script 'hst' missing LSB tags and overrides
答え1
以前の方法は ですSystem V
が、UpStart
新しい方法は ですsystemd
。手順は次のとおりです。
次の場所にサービス ファイルを作成します
/etc/systemd/system/myapp.service
:内容は次のようになります(サービスのニーズによって異なります)。
[Unit] Description=myapp service [Service] Type=simple ExecStart=/path/to/myapp.sh [Install] WantedBy=multi-user.target
始めよう:
sudo systemctl start myapp
- 起動時に実行するようにします:
sudo systemctl enable myapp
- systemctl のその他のコマンド:
- やめて:
sudo systemctl stop myapp
- 無効にする:
sudo systemctl disable myapp
- やめて:
参照してください:
https://www.freedesktop.org/software/systemd/man/systemd.service.html
答え2
必要なのは /etc/systemd/system/myapp.service だけです。
始めること:sudo systemctl でmyappを起動します
止まる:sudo systemctl を停止します。
起動時に開始するには:sudo systemctl を有効にする