
システムにログインする前にプロセスを実行する必要があります。どのようにサービスのように実行できますか? Linuxでサービスを作成するには?
UbuntuとFedoraで?このサービスはTomcatに合わせてカスタマイズされています。
答え1
サービスの実行なしまたは以前システムにログインした後(「起動時」など)、起動スクリプトを生成して起動順序に追加する必要があります。
サービススクリプトは、起動、停止、再起動の3つの部分で構成されています。
サービススクリプトの基本構造は次のとおりです。
#!/bin/bash
#
RETVAL=0;
start() {
echo “Starting <Service>”
}
stop() {
echo “Stopping <Service>”
}
restart() {
stop
start
}
case “$1″ in
start)
start
;;
stop)
stop
;;
restart)
restart
;;
*)
echo $”Usage: $0 {start|stop|restart}”
exit 1
esac
exit $RETVAL
必要に応じてスクリプトを調整したら、/etc/init.d/に配置して
システムサービスの起動プロセスに追加します(FedoraではUbuntuユーザーではありません。> D)。
chkconfig -add <ServiceName>
サービスがシステム起動プロセスに追加されるため、手動で再起動する必要はありません。
乾杯!
答え2
初期化システムによっては、さまざまな方法で初期化スクリプトを生成できます。 Fedoraは、選択可能な新システムとSysV互換性を提供します。
突然現れる
- サービス定義ファイルを次のように生成します。
/etc/init/custom-tomcat.conf
置く:
start on stopped rc RUNLEVEL=3 respawn exec /path/to/your/tomcat --and --parameters
そしてシステムが起動したら、Tomcatを起動する必要があります。
システム
- 以下でサービス定義を作成します。
/etc/systemd/system/custom-tomcat.service
置く:
[Service] ExecStart=/path/to/your/tomcat --and --parameters Restart=always [Install] WantedBy=multi-user.target
サービスを有効にしてくださいsystemctl enable custom-tomcat.service
。すべての通常のブートから始まります。
もちろん、両方のinitシステムにはより多くの設定オプションがあり、そのマニュアルで確認できます。
答え3
Tomcatはかなり一般的なサービスなので、ディストリビューションですでに提供されているinitスクリプトを見てください。ほとんどまたはまったく調整することなく、カスタムバイナリで動作する可能性が高いです。
答え4
コンピュータの起動後にユーザーがログインする前にスクリプトを実行するには、このタスクを正確に解決するように設計された/etc/rc.localスクリプトを編集するだけです。