11 January 2011

【さくらインターネット】 ユーザ権限でApache Subversionをインストール

さくらインターネット 共用レンタルサーバにApache Subversionをインストールしたときの備忘録

■ インストール

$ wget http://subversion.tigris.org/downloads/subversion-1.6.15.tar.gz $ wget http://subversion.tigris.org/downloads/subversion-deps-1.6.15.tar.gz $ tar xvf subversion-1.6.15.tar.gz $ tar xvf subversion-deps-1.6.15.tar.gz $ cd subversion-1.6.15 $ ./configure --prefix=$HOME/local --with-ssl --without-berkeley-db $ gmake clean $ gmake $ gmake install $ cd .. $ rm -rf ./subversion-1.6.15 ← インストール後は不要なので消去

■ 環境変数 検索パス($PATH)の設定確認

$HOME/bin にパスが通っていない場合、.cshrc にパスを追加する。

~/.cshrc
set path = (/sbin /bin /usr/sbin /usr/bin /usr/games /usr/local/sbin /usr/local/bin /usr/X11R6/bin $HOME/bin $HOME/local/bin)

■ リポジトリの作成

$HOME/svn 以下にリポジトリを作成するものとする。ここでは、testというサブディレクトリ (リポジトリ)を作成している。

$ mkdir ~/svn $ svnadmin create ~/svn/test

■ sshでの接続(ユーザ名、パスワードでの認証)

手元の端末(今回はUbuntu Linuxのコンソール)から。緑色で着色した部分は、ユーザ名、サーバ名に合わせる。たとえばチェッうアウトしてみる

$ svn checkout svn+ssh://user@example.com/home/user/svn/test user@example.com's password: ***pasword***

適当なファイルを追加して、チェックインが成功すれば、Subversionがとりあえず稼動している。

■ SSH 公開鍵認証の設定

公式マニュアル SSH authentication and authorization に沿って設定する。
手元の端末がUbuntu Linuxとして、Subversionの設定ファイルにスキーマを追加する

~/.subversion/config
### Section for configuring tunnel agents. [tunnels] ### Configure svn protocol tunnel schemes here. By default, only ### the 'ssh' scheme is defined. You can define other schemes to ### be used with 'svn+scheme://hostname/path' URLs. ssh.example = /usr/bin/ssh -i ~/.key/id_rsa

実際のsvnアクセス時には次のようにアクセスする

$ svn checkout svn+ssh.example://user@example.com/home/user/svn/test