作業の前にメモ。UbuntuとCentOSで違う所があるってことを覚えたの。
やりたいこと | CentOS | Ubuntu |
サービスの起動設定 | chkconfig サービス名 {on|off} | sysv-rc-conf サービス名 {on|off} |
アプリケーションパッケージの導入 | yum install アプリケーション名 | aptitude install アプリケーション名 apt-get install アプリケーション名 |
とりあえず、この二つw
またメモは増えるかも。
とりあえず、OpenSSH server + Tomcat Java server で作成したので、これらのパッケージは入った状態。
確認してみると、JavaはOpenJDK 1.7 だったので、これは Java SE 8 SDKに変更。
apt-get update
apt-get install oracle-java8-installer
コマンドラインなのに、生意気wwwwwww
ということで、これもさくっと作業完了。
Trac導入
TracInstall ? The Trac Project
http://trac.edgewall.org/wiki/TracInstall
素直に書かれている通りにコマンドを実行。
aptitude/apt-get コマンドを使うと、困ることなくモジュールをとってこれる。
今回は、あくまでも、スタンドアロンで動かさればよいので、Apacheの連携はしないw
Tracのインストールが終わったら、初期設定開始。
$ sudo mkdir -p /var/trac/projects
$ cd /var/trac/projects
$ sudo trac-admin . initenv
$ sudo htpasswd -c .htpasswd esten
$ trac-admin . permission add esten TRAC_ADMIN
Ubuntuサーバーの代理管理アカウントとしてestenを作ってあるの。とりあえず、このアカウントとrootで作業できれば事欠かないのでこのアカウントをそのままTrac管理アカウントにしてしまって、/var/trac/projectsを基本パスとして情報を登録。
ここで、動作を確認。
# tracd -p 8800 --basic-auth=projects,/var/trac/projects/.htpasswd,/var/trac/projects /var/trac/projects
きたーv ログインしてみる。
ダイアログが出てきた。IPアドレスとポート番号もあってるし、ディレクトリもあってる!OKOK!
ログイン成功! これでTracの基本設定が終わり。
画面が英語なんだけど、バージョンが最新の1.0.1なので、日本語化リソースパッケージがまだ無いのorz
日本語化リソースパッケージを入れようとすると、こうなりますw
日本語でないと、って人は、バージョン0.11.7-1を入れてリソース追加するか、日本語化済パッケージでインストールすると良いと思うの。
さて、スタンドアロンが動くようになったところで、これをサービス化。
実は、Ubuntuさんもデーモンスクリプト用テンプレートが /etc/init.d/skelton にあったりする。
中を見てみると、実行したいアプリケーションプログラムを start-stop-deamon コマンドを使って動かしてる。
Manpage for start-stop-daemon - man.cx manual pages
http://man.cx/start-stop-daemon%288%29/ja
開始停止はこれを使っておくと、うまくいけそう、ってことでここから「/etc/init.d/tracd」を作成してちょこっと編集。
DESC="Trac service control"
NAME=tracd
DAEMON=/usr/local/bin/$NAME
DAEMON_ARGS="-p 8800 --basic- auth=projects,/var/trac/projects/.htpasswd,/var/trac/projects /var/trac/projects"
PIDFILE=/var/run/$NAME.pid
do_start()
{
# Return
# 0 if daemon has been started
# 1 if daemon was already running
# 2 if daemon could not be started
start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON --test > /dev/null \
|| return 1
start-stop-daemon --start --quiet --pidfile $PIDFILE --make-pidfile --background \
--exec $DAEMON -- $DAEMON_ARGS \
|| return 2
}
頭の変数と、開始ファンクションを変更。開始ファンクションの起動オプションには「--make-pidfile --background」を追加。これを追加しておかないと、startした後で画面上でポート待ち受けが始まっちゃうので、デーモン起動してる意味が無くなる。
# service tracd start
# service tracd stop
で開始停止が確認できたら、
# update-rc.d tracd defaults
とすると、サービスに登録。
# sysv-rc-conf ?list | grep tracd
で、CentOSでいう、「chkconfig tracd」と同じ結果リストが出てくるので、できてるのか確認。
わーい、スタンドアロン俺俺Tracがこれで使えるようになったよー。
今日はここまで。本日の作業BGM、やくしまるえつこ「ヤミヤミ」
ほぅら、部屋の隅っこに、ほぅら、押入れの隙間にも、ぼんやりダークな奴がいる♪