ash*_*osh 9 mac rsync macports
我正在 Mac OS X 上安装 macports,为了从它使用 rsync 协议的存储库中获取二进制文件。不幸的是,似乎无法通过从我的机器直接连接来访问存储库。所以我运行了一个本地代理程序(支持 http、https、ftp 和 socks),现在试图找出如何通过我的代理重定向 rsync 连接。有没有人知道这件事?干杯,
man rsync
是你的朋友。
您可以通过 Web 代理建立连接,方法是将环境变量 RSYNC_PROXY 设置为指向您的 Web 代理的主机名:端口对。请注意,您的 Web 代理的配置必须支持到端口 873 的代理连接。
因此,假设您的代理在端口 3128 上,RSYNC_PROXY=localhost:3128
应该执行您需要的操作。
如果您使用squid作为您的 Web 代理,请将两条中心线添加到 squid.conf(大多数 unix 系统上的 /etc/squid/squid.conf,或 MacPorts 中的 /opt/local/etc/squid/squid.conf):
acl SSL_ports port 443
acl SSL_ports port 873 # ADD THIS FOR RSYNC ACCESS
acl Safe_ports port 873 # ADD THIS FOR RSYNC ACCESS
acl CONNECT method CONNECT
Run Code Online (Sandbox Code Playgroud)
然后,从 shell(如果可行,您可以查看永久设置它),键入:
export RSYNC_PROXY=proxyhost:proxyport
Run Code Online (Sandbox Code Playgroud)
如果您的代理需要密码:
export RSYNC_PROXY=username:password@proxyhost:proxyport
Run Code Online (Sandbox Code Playgroud)
如果上面的设置对你来说是不可能的,你也可以试试这个。它要求您可以通过ssh访问可以充当代理的服务器。
export RSYNC_CONNECT_PROG='ssh tunnelhost nc %H 873'
Run Code Online (Sandbox Code Playgroud)
ssh 服务器必须安装“netcat”,几乎所有人都这样做。如果没有,它可以使用类似的东西安装:
Debian/Ubuntu:
apt-get install netcat
Run Code Online (Sandbox Code Playgroud)
centos/红帽
yum install nc
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
36388 次 |
最近记录: |