LinuxForum.Fans
Тема

Передача файла большого объема по ssh

Автор: vinner 11 сообщений 3079 просмотров
#273823

Добрый день. Есть файл 13 Гб. Нужно его передавать по нестабильному каналу. Разово мне удалось разбить на части и передать с помощью rsync -av. Теперь нужно настроить еженедельное копирование. Может быть есть какой-то способ передавать такой большой файл с возможность докачки в случае обрыва? при этом ftp использовать нельзя.

#273845
"vinner" написал:
при этом ftp использовать нельзя.

а SFTP ?
да и просто по ssh2 можно же, возьмите программу gFTP, например, он с обычным SSH2 работает прекрасно, докачку в функционале программы присутствует. только что все же GUI, настроить его для автоматизма раз в неделю по сему проблемно.

#273849
i2ks написал:
http://troy.jdmz.net/rsync/index.html
или если влом читать:
rsync -avz -e ssh remoteuser@remotehost:/remote/dir /this/dir/

пробовал с этими же параметрами, через 6-7 часов закачки вываливается ошибка и все потеряно.

#273857


man curl
...
DESCRIPTION
curl is a tool to transfer data from or to a server, using one of the supported protocols (DICT, FILE, FTP, FTPS, GOPHER, HTTP,
HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMTP, SMTPS, TELNET and TFTP). The command is designed to
work without user interaction.
...
-a, --append
(FTP/SFTP) When used in an upload, this will tell curl to append to the target file instead of overwriting it. If the file
doesn't exist, it will be created.
...
#273858
xxblx написал:
[quote="vinner"] при этом ftp использовать нельзя.

а SFTP ?
да и просто по ssh2 можно же, возьмите программу gFTP, например, он с обычным SSH2 работает прекрасно, докачку в функционале программы присутствует. только что все же GUI, настроить его для автоматизма раз в неделю по сему проблемно.[/quote]

Сегодня запущу, попробую. Спасибо за наводку

#273916

когда сам был в подобной ситуации я делал велосипед-скрипт: с помощью dd вычленял кусок ~200K и передавал его через обычную трубу поверх ssh...
for (( i=0; i<100500; i++ )); do ssh dd if=/path/to/file bs=200k skip=$i >/out/file.part-$i || break; done
в случае ошибки - перезапуск вручную. можно всё это ещё облагородить итп итд...
потом просто cat'ом собирал всё это вместе...

вот такой вот велосипед... ;)

#274439
vinner написал:
[quote=xxblx][quote="vinner"] при этом ftp использовать нельзя.

а SFTP ?
да и просто по ssh2 можно же, возьмите программу gFTP, например, он с обычным SSH2 работает прекрасно, докачку в функционале программы присутствует. только что все же GUI, настроить его для автоматизма раз в неделю по сему проблемно.[/quote]

Сегодня запущу, попробую. Спасибо за наводку[/quote]

Вопрос остается открытым, sftp проработал около 3 дней и вылетел со следующей ошибкой.
sftp -v root@ip:/backups/filename
rite failed: Broken pipe
Connection closed

#274440
Lupo Alberto написал:

man curl
...
DESCRIPTION
curl is a tool to transfer data from or to a server, using one of the supported protocols (DICT, FILE, FTP, FTPS, GOPHER, HTTP,
HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMTP, SMTPS, TELNET and TFTP). The command is designed to
work without user interaction.
...
-a, --append
(FTP/SFTP) When used in an upload, this will tell curl to append to the target file instead of overwriting it. If the file
doesn't exist, it will be created.
...

Сегодня попробую curl.

#274444

А если предварительно порезать файл сплитом, а потом кетом его склеить, т.е. режим 13gb на 10 частей или чуть больше, дальше рсинком копируем, потом уже склеиваем.
Вариант с курлом тоже прокатит. :-)

Войдите или зарегистрируйтесь, чтобы ответить.