ネットワーク構成が妙に厳しくって不自由なので、何とかウラをかく事を考える。
やりたいことは LAN の奥にあるリポジトリからの checkout (と update/diff) なんだが、こいつ vpn で LAN の中に突っ込んでいかないと絶対に触れない位置にありやがる・・・
じゃあ checkout 先を vpn で押し込んでやればいいかっていうと、押し込んだ瞬間にこっちのネットから切れるのでコントロールできなくなって無意味。
webdav があったので、リポジトリサーバからマウントしようかと思ったら、 davfs2 のパッケージないし
しょうがないんでリポジトリ側から checkout 先へ ssh でトンネルを掘っておき、これを裏口にして checkout することにした。
ssh port forwarding なんてもう何年もやってないからすっかり忘れてる。
こういうときだと、向こうから -R xxx:localhost:22 otherhost とやってやると other:xxx から向こうの 22 に流れるようだ。ええい、オプションが覚えにくい。 -L の時は (localhost:)xxx:remotehost:yyy と考えるとなんとなく対照的なんだが、これはこれで ssh 投げる先が冗長に感じるし・・・
cvs の側は ext: にしたとき、ホストまでは指定できるけど port までは指定できない罠が。さらに CVS_RSH="ssh -p nnnn" とかやると、 "ssh -p nnnn" という実行ファイルを探しにいく罠まで・・・。
答えは、1行スクリプトを書く。萎え。
~/.ssh/config で ssh に localhost へは port nnnn を使わせるって手もあるらしい。
ああ、ここまでやってから shfs を思い出した。けど、もういいや。
[referer: [an error occurred while processing this directive]]