Codebeamer サービスの追加 (自動起動)
通常、Linux をブートすると、
Codebeamer サービスは自動的に起動するはずです。この仕組みを
systemd サービスで設定する手順は以下のとおりです。
• Codebeamer インスタンスを実行する Codebeamer ユーザーを作成します。
• Codebeamer をインストールします。この例では、/home/Codebeamer/CB ディレクトリに Codebeamer をインストールします。
新しいファイルを次の内容で /etc/systemd/system/Codebeamer.service として作成します。
[Unit]
Description=codebeamer service
After=network.target iptables.service firewalld.service firewalld.service httpd.service
[Service]
Type=forking
User=codebeamer
Environment=CB_HOME=/home/codebeamer/CB
ExecStart=/home/codebeamer/CB/bin/startup
ExecStop=/home/codebeamer/CB/bin/stop
[Install]
WantedBy=multi-user.target
必要に応じて、スクリプトの Service セクションの変数 CB_HOME および User を修正します。修正した場合は、必ず保存してください。
続いて、ブート時にこのサービスの起動を有効にするために、次のコマンドを実行します。
sudo systemctl enable codebeamer.service
Codebeamer は、以下のコマンドによって停止できます。
sudo systemctl stop codebeamer.service
次のコマンドで Codebeamer を起動できます。
sudo systemctl start codebeamer.service
次のコマンドでサービスのステータスをクエリーできます。
sudo systemctl status codebeamer.service
これにより、次のような内容が出力されます。
codebeamer.service - codebeamer service
Loaded: loaded (/etc/systemd/system/codebeamer.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2019-06-06 13:02:41 CEST; 10min ago
Process: 2658 ExecStop=/home/codebeamer/CB/bin/stop (code=exited, status=0/SUCCESS)
Process: 2737 ExecStart=/home/codebeamer/CB/bin/startup (code=exited, status=0/SUCCESS)
Main PID: 2774 (java)
Tasks: 72 (limit: 4915)
CGroup: /system.slice/codebeamer.service
∟2774 java -server -classpath /home/codebhttps://en.wikipedia.org/wiki/Systemdeamer/CB/tomcat/bin/commons-daemon.jar:/home/codebeamer/CB/
Jun 06 13:02:36 ip-172-31-14-69 startup[2737]: INFO: Starting service [Catalina]
Jun 06 13:02:36 ip-172-31-14-69 startup[2737]: Jun 06, 2019 1:02:36 PM org.apache.catalina.core.StandardEngine s
Jun 06 13:02:36 ip-172-31-14-69 startup[2737]: INFO: Starting Servlet Engine: Apache Tomcat/8.5.37
Jun 06 13:02:36 ip-172-31-14-69 startup[2737]: Jun 06, 2019 1:02:36 PM org.apache.catalina.startup.HostConfig de
Jun 06 13:02:36 ip-172-31-14-69 startup[2737]: INFO: Deploying web application directory [/home/codebeamer/CB-9.
Jun 06 13:02:37 ip-172-31-14-69 startup[2737]: Jun 06, 2019 1:02:37 PM org.apache.jasper.servlet.TldScanner scan
Jun 06 13:02:37 ip-172-31-14-69 startup[2737]: INFO: At least one JAR was scanned for TLDs yet contained no TLDs
Jun 06 13:02:37 ip-172-31-14-69 startup[2737]: Jun 06, 2019 1:02:37 PM org.apache.catalina.core.ApplicationConte
Jun 06 13:02:37 ip-172-31-14-69 startup[2737]: INFO: Initializing Spring root WebApplicationContext
Jun 06 13:02:41 ip-172-31-14-69 systemd[1]: Started codebeamer service.
レガシー: 起動に init.d を使用する方法
古いシステムでは、init.d サービスを使用して
Codebeamer を起動することもできます。ただし、
init.d がすでに systemd に置き換えられていることにより、この方法は推奨されません。
手順:
新しいファイルを次の内容で /etc/init.d/Codebeamer に作成します。
#!/bin/bash
#
### BEGIN INIT INFO
# Provides: codebeamer
# Required-Start: $remote_fs $syslog $network
# Required-Stop: $remote_fs $syslog $network
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start and stop codebeamer
# Description: Controls the codebeamer Server
### END INIT INFO
CB_HOME="/home/codebeamer/CB"
CB_OWNR="codebeamer"
case "$1" in
start)
# startup
echo -n "Starting codebeamer: "
su - $CB_OWNR -c "cd $CB_HOME/bin && $CB_HOME/bin/startup"
echo "OK"
;;
stop)
# shutdown
echo -n "Shutdown codebeamer: "
su - $CB_OWNR -c "cd $CB_HOME/bin && $CB_HOME/bin/stop"
echo "OK"
;;
reload|restart)
$0 stop
$0 start
;;
*)
echo "Usage: $0 start|stop|restart|reload"
exit 1
esac
exit 0
必要に応じて、スクリプトの開始時に変数 CB_HOME および CB_OWNR を修正します。必ず保存してください。
続いて、このサービスをアクティブ化するために、次のコマンドを実行します。
$ sudo chmod +x /etc/init.d/codebeamer
$ sudo update-rc.d codebeamer defaults
このサービスを開始または停止する前に、Codebeamer が実行されていないことを確認しなければなりません。
Codebeamer は、以下のコマンドによって停止できます。
$ /home/codebeamer/CB/bin/stop
これで Codebeamer サービスの設定が完了し、その後は次のサービスコマンドを使用して起動と停止を行うことができます。
$ sudo service codebeamer start
$ sudo service codebeamer stop