「ConoHa VPS に Subversion Edge をインストールしてみた」の版間の差分
(→準備) |
(→準備) |
||
4行: | 4行: | ||
==準備== | ==準備== | ||
− | + | ===必要なソフトと所在=== | |
− | + | まず、必要なソフトの調査ですが、CollabNetSubversionEdge-4.0.11_linux-x86_64 の README によるとJava 1.6+ と python-lib の 2.4~2.6 が必要とのこと。 | |
− | + | Java は 1.7 が導入済みなので問題ありません。 | |
− | + | python-libs を確認してみますと | |
yum list installed | grep python-libs | yum list installed | grep python-libs | ||
16行: | 16行: | ||
python-libs.x86_64 2.6.6-52.el6 @updates | python-libs.x86_64 2.6.6-52.el6 @updates | ||
− | + | で問題なさそうです。 | |
− | + | また、SubversionEdge は環境変数 JAVA_HOME を参照するので設定しろとありますので、Java がいったいどこにあるか探ると、JDK のコマンドは皆 /usr/bin にありますが、これは /etc/alternative への simlink で /etc/alternative の中身も simlink。実体は | |
/usr/lib/jvm/java-1.7.0-openjdk.x86_64 | /usr/lib/jvm/java-1.7.0-openjdk.x86_64 | ||
24行: | 24行: | ||
にあることがわかりました。これが JAVA_HOME の値です。 | にあることがわかりました。これが JAVA_HOME の値です。 | ||
− | + | ===JAVA_HOME 環境変数の設定=== | |
− | + | JAVA_HOME の設定は /etc/profile の中に書くのが一番簡単だと思ったのですがですが、/etc/profile.d の下にアプリケーションで追加実行するシェルスクリプトを書くのが CENTOS の流儀のようです。 | |
− | + | ||
+ | jdk.sh, jdk.csh を /etc/profile.d の下に以下のように作りました。 | ||
jdk.sh: | jdk.sh: | ||
37行: | 38行: | ||
setenv JAVA_HOME /usr/lib/jvm/java-1.7.0-openjdk.x86_64 | setenv JAVA_HOME /usr/lib/jvm/java-1.7.0-openjdk.x86_64 | ||
− | + | これで再起動すると問題なく JAVA_HOME環境変数の設定はできています。 | |
ls $JAVA_HOME/bin | ls $JAVA_HOME/bin | ||
49行: | 50行: | ||
java jconsole jsadebugd pack200 servertool | java jconsole jsadebugd pack200 servertool | ||
− | + | ===iptables の変更=== | |
− | :subversion edge は管理にポート 3343,4434(SSL) | + | :subversion edge は管理にポート 3343,4434(SSL) リポジトリアクセスにもう一ポート(設定できるので 60000)が必要です。iptableに開けるポートを追加します。 |
*filter | *filter | ||
72行: | 73行: | ||
COMMIT | COMMIT | ||
− | + | ===Subversion Edge 用ユーザを用意=== | |
+ | |||
useradd csvn | useradd csvn | ||
passwd csvn パスワード | passwd csvn パスワード |
2014年11月3日 (月) 04:08時点における版
目次
準備
必要なソフトと所在
まず、必要なソフトの調査ですが、CollabNetSubversionEdge-4.0.11_linux-x86_64 の README によるとJava 1.6+ と python-lib の 2.4~2.6 が必要とのこと。
Java は 1.7 が導入済みなので問題ありません。
python-libs を確認してみますと
yum list installed | grep python-libs
python-libs.x86_64 2.6.6-52.el6 @updates
で問題なさそうです。
また、SubversionEdge は環境変数 JAVA_HOME を参照するので設定しろとありますので、Java がいったいどこにあるか探ると、JDK のコマンドは皆 /usr/bin にありますが、これは /etc/alternative への simlink で /etc/alternative の中身も simlink。実体は
/usr/lib/jvm/java-1.7.0-openjdk.x86_64
にあることがわかりました。これが JAVA_HOME の値です。
JAVA_HOME 環境変数の設定
JAVA_HOME の設定は /etc/profile の中に書くのが一番簡単だと思ったのですがですが、/etc/profile.d の下にアプリケーションで追加実行するシェルスクリプトを書くのが CENTOS の流儀のようです。
jdk.sh, jdk.csh を /etc/profile.d の下に以下のように作りました。
jdk.sh:
export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk.x86_64
jdk.csh:
setenv JAVA_HOME /usr/lib/jvm/java-1.7.0-openjdk.x86_64
これで再起動すると問題なく JAVA_HOME環境変数の設定はできています。
ls $JAVA_HOME/bin
appletviewer javac jdb jstack policytool tnameserv apt javadoc jhat jstat rmic unpack200 extcheck javah jinfo jstatd rmid wsgen idlj javap jmap keytool rmiregistry wsimport jar java-rmi.cgi jps native2ascii schemagen xjc jarsigner jcmd jrunscript orbd serialver java jconsole jsadebugd pack200 servertool
iptables の変更
- subversion edge は管理にポート 3343,4434(SSL) リポジトリアクセスにもう一ポート(設定できるので 60000)が必要です。iptableに開けるポートを追加します。
*filter :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [0:0] :RH-Firewall-1-INPUT - [0:0] -A INPUT -j RH-Firewall-1-INPUT -A FORWARD -j RH-Firewall-1-INPUT -A RH-Firewall-1-INPUT -i lo -j ACCEPT -A RH-Firewall-1-INPUT -p icmp --icmp-type any -j ACCEPT -A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT # SSH, HTTP, MySQL -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3343 -j ACCEPT -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 4434 -j ACCEPT -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 60000 -j ACCEPT -A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited COMMIT
Subversion Edge 用ユーザを用意
useradd csvn passwd csvn パスワード
インストール
- パーミッション調整
- /optのパーミッションを 777 に変更
chmod 777 /opt
- ファイルを転送
- CollabNet から入手した 64bit Linux 用 Subversion Edge CollabNetSubversionEdge-4.0.11_linux-x86_64.tar.gz を /opt へファイル転送。
- ファイル展開
- ユーザを一般に切り替えて展開。
su nakamuri tar xvf CollabNetSubversionEdge-4.0.11_linux-x86_64.tar.gz
- インストール
rootに戻って以下を実行
cd csvn bin/csvn install
- 本当はここで sudo をで csvnユーザのまま実行すべきなのですが面倒なのでやめました。こうすると subversion edge は root として実行されてしまうので、あとで設定を書き換えます。
Detected RHEL or Fedora: Installing the CSVN Console daemon.. Setting RUN_AS_USER to: 'root'. Please edit '../data/conf/csvn.conf' if this needs to be adjusted Setting JAVA_HOME to: '/usr/lib/jvm/java-1.7.0-openjdk.x86_64'. Please edit '../data/conf/csvn.conf' if this needs to be adjusted.
- 設定の修正
csvn/data/conf の csvn.conf を開け
RUN_AS_USER=root
を
RUN_AS_USER=csvn
に書き換える。これは root で install を実行したために起きた不整合の修正です。
- サービス登録確認
chkconfig | grep csvn
csvn 0:off 1:off 2:off 3:on 4:on 5:on 6:off
動作確認
ホスト名:3343/csvn/login/auth にアクセスしたとこと見事に接続できた。