среда, 16 октября 2013 г.

Перекачиваем файлы по сети

Наиболее простой метод -- используя sshfs или nfs, но иногда такой возможности нет, а нужно например закачать 3тб данных на ленту, при том что на дисках доступно менее 1тб.

Наиболее простой метод - через netcat
Вариант "залить на ленту"
на получателе:
nc -l -p 9876 | dd bs=1k of=/dev/st0

на источнике:
tar -cf - /dir | nc -c 1.1.1.1 9876

Можно на получателе делать не через dd а через простое перенаправление ">", но работает это несколько странно и тар при проверке говорит "неожиданный конец архива".

Вариант "залить на диск"
на источнике:
cd /path/to/directory
find|cpio -ov|nc -l -p 9999

на получателе:
cd /path/to/directory
nc адрес 9999|cpio -idmv
(тут слушатель не получатель а отправитель).
Есть вариант через tar, но "вместо cpio можно использовать tar, но в нём я столкнулся с проблемой - криво копируются симлинки, указывающие на абсолютный путь"
http://mydebianblog.blogspot.ru/2008/07/netcat.html

большая дока по
http://handynotes.ru/2010/01/unix-utility-netcat.html

Комментариев нет:

Отправить комментарий