UNIX: rsync через proxy-сервер

Автор: | 20/01/2015

unix_logoПри попытке получить содержимое удалённого каталога – rsync возвращает ошибку:

# rsync rsync://mirror.besthosting.ua/CentOS::
rsync: change_dir "/root/mirror.besthosting.ua" failed: No such file or directory (2)
rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1039) [sender=3.0.6]

Первая мысль – проверить telnet-ом:

# telnet rsync.belnet.be 873
Trying 193.190.67.98...
telnet: connect to address 193.190.67.98: Connection refused
Trying 2001:6a8:3c80:2::21...
telnet: connect to address 2001:6a8:3c80:2::21: Network is unreachable

После чего я вспомнил, что сервер находится за прокси-сервером 🙂

Из:

# man rsync

You may establish the connection via a web proxy by setting the environment variable RSYNC_PROXY to a hostname:port pair pointing to your web proxy. Note that your web proxy’s configu-
ration must support proxy connections to port 873.

В файл ~/.bashrc добавляем строку:

export RSYNC_PROXY="127.0.0.1:3128"

Без http://.

Перечитываем его:

# . ~/.bashrc

И ещё раз проверяем:

# rsync rsync://mirror.besthosting.ua/CentOS | head
drwxrwxr-x 4096 2014/10/28 17:42:22 .
lrwxrwxrwx 3 2010/05/06 20:48:05 2
lrwxrwxrwx 3 2010/05/06 20:48:05 3
lrwxrwxrwx 3 2010/05/06 20:48:05 3.1
lrwxrwxrwx 3 2010/05/06 20:48:05 3.3
lrwxrwxrwx 3 2010/05/06 20:48:05 3.4
lrwxrwxrwx 3 2010/05/06 20:48:05 3.5
lrwxrwxrwx 3 2010/05/06 20:48:05 3.6
lrwxrwxrwx 3 2010/05/06 20:48:05 3.7
lrwxrwxrwx 3 2010/05/06 20:48:05 3.8