mongrelを起動するユーザー

個人プロジェクトなら自分のアカウントでmongrelを動かせばいいんだけど、チームでとなるとそれはやらない方がいいので、mongrelを動かすプロジェクトで共通のアカウントを作ります。

$ sudo -m -p "" bar
$ su - bar
$ passwd

で適切なパスワードを設定します。
で、後々capistranoでこのユーザーでログインして、svnからコードをチェックアウトするんですけど、このユーザーでログインするなら svn+sshではなく、fileでリポジトリにアクセスすりゃいいかなと。
なので、とりあえず、capistranoでアクセスする際に必要なSSH用のキーを生成します。

$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/bar/.ssh/id_rsa): 
Created directory '/home/bar/.ssh'.
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /home/bar/.ssh/id_rsa.
Your public key has been saved in /home/bar/.ssh/id_rsa.pub.
The key fingerprint is:
78:e3:72:d3:63:4a:8f:10:0d:d9:1d:4e:68:15:3b:dc bar@bar.org
$
$ cat .ssh/id_rsa.pub > ~/.ssh/authorized_keys
$ chmod go-rw .ssh/authorized_keys

で、もうSCPでコピーするのも面倒なので、catで表示した内容をコピペして、ローカルに持ってくる。

$ cat .ssh/id_rsa
$ cat .ssh/id_rsa.pub

で表示させた内容を、ローカルのターミナルで

$ vi ~/.ssh/bar_id_rsa
$ vi ~/.ssh/bar_id_rsa.pub

でそれぞれ貼付ける。
んで、chmodしておきましょう。

$ chmod go-rw ~/.ssh/bar_id_rsa*

で、それを使ってアクセスしてみる。

$ ssh-agent bash
$ ssh-add ~/.ssh/bar_id_rsa
$ ssh bar@xxx.xxx.xxx.xxx

でログインできればオッケー。

あ、svnにアクセスするために、グループに追加しておかないとね。

# usermod -a -G svn bar

で、再度barでログインして、svn infoとかが成功すればオッケーだと思われ。

$ svn info file:///var/svn/baz-repo/trunk