起動時に管理権限でTomcatを起動する

起動時に管理権限でTomcatを起動する

システムにログインする前にプロセスを実行する必要があります。どのようにサービスのように実行できますか? 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スクリプトを編集するだけです。

関連情報