トップ «前の日記(2006-06-17) 最新 次の日記(2006-06-22)» 編集

MacBook Pro日記

2006|05|06|07|08|11|

2006-06-21 Firewall内からDarwinPorts

_ rsyncが通らない環境でDarwinPortsを使うには

Firewallがあって、rsyncプロトコル(873/tcp)が通らない環境でMacを使う機会がありました。そのMacにDarwinPortsをインストールしようとしたのですが、DarwinPortsはrsyncプロトコルを使うので、そのままでは使用できません。sshやhttpは通るので、ssh port forwardingで対処してみました。

まず、rootで次のコマンドを実行

# ssh -L 873:rsync.darwinports.org:873 externalhost

localhostの873/tcpを、externalhostを通じてrsync.darwinports.org:873へつなぐ、という意味になります。ここでexternalhostは、ファイアウォールの外にありグローバルアドレスを持ったホストです。

次に/opt/local/etc/ports/sources.confの最終行を以下のように書き換えます。

rsync://localhost/dpupdate/dports

以後は普通に port コマンドを実行します。

sudo port -d sync

注意

873は特権ポートなので root 権限でないと使えません。root以外で実行する場合は

ssh -L 10873:rsync.darwinports.org:873 externalhost

のようにして、/opt/local/etc/ports/sources.confを

rsync://localhost:10873/dpupdate/dports

とすればport syncは通ります。しかし、この記法ではport installでなぜかこけるものがありました。

お名前:
E-mail:
コメント:
本日のリンク元