さくらのレンタルサーバでsshコマンドで何かするには
home下にbinディレクトリを作ってそこにコマンドを置かなくてはいけないらしい
ssh経由でsvnを使用する時に
.bashrcでバスを通していてもsvnserveに対してcommand not foundだったのだが、
home下にbinを作ってsvnserveへのシンボリックリンクを置いたら動作した。
svn import test/ svn+ssh://username@domain/home/username/var/lib/svn/test/ -m “import test”
参考
調べたところ、これは ssh サーバ sshd の設定によって、 ssh 経由でリモートからコマンドを発行したとき、コマンドサーチパスである PATH をはじめとしたユーザ環境に制限がかけられているから、とのことらしい。なるほど、だから “command not found” なのだね。じぶんは、コマンドサーチパスのある場所にはインストールしていないのだから、このような結果となった。
すると、レンタルサーバゆえにサーバの設定は変えられないので、その制限された中で出来る事といえば、コマンドサーチパスのある場所に、 svn 関連コマンドを置く事、それしか、なさそうだ。–その唯一と思えたアプローチは、さいわいうまくいった。
リモートホスト、つまり ssh 接続先であるリポジトリを置いたレンタルサーバでは、次のように、コマンドサーチパスの設定の中に、じぶんのパーミッションが許されている場所があった。
$ ssh -l username hostname ‘echo $PATH’
/sbin:/bin:/usr/sbin:/usr/bin:/usr/games:/usr/local/sbin:/usr/local/bin:/usr/X11R6/bin:/home/username/bin
最後の “/home/username/bin” がそれで、とりもなおさずホームディレクトリの bin ディレクトリ。したがって、ここに、必要な svn 関連のコマンドを置いてしまえばよい、ことになる。
これで万事よし、というよりは、 sakura のレンタルサーバをリポジトリに利用するには、このようにするほか、手段がないのかもしれない。