Читая книгу ““, наткнулся на полезный совет (теоретически я этот метод знал, но ни назу не применял).
Есть полезная программа nc, также известная, как . , и все связаны с сетевым взаимодействием.
Вспомните, как вы обычно передаёте файлы между серверами. Обычно процесс заключается в создании архива на одном сервере, передача его по ftp/scp/sftp/etc на другой сервер, затем разворачивание этого архива. Операций много, причём если файлы большие, то нужно иметь достаточно много места под создание архива.
С помощью nc это делается быстрее, удобнее и без накладных затрат.
На втором сервере запускается команда, которая будет принимать поток данных и передавать его на STDIN в tar (опция ‘-’):
server2$ nc -l -p 12345 | tar xvzf -
На первом сервере запускается процесс создания архива с выдачей разультата в STDOUT, который передаётся через nc на на второй сервер, где tar уже приготовлен к приёму потока данных:
server1$ tar cvzf - /home/user/directory | nc -q 1 server2 12345
Единственное требование – указанный порт (12345) на server1 должен быть открыт для доступа с server2. Порт можно использовать любой другой.



На самом деле через ssh можно пересылать архивы точно также, как ты привёл пример с netcat, более того, канал будет зашифрованный, да и ssh чаще есть, и порт открыт, нежели искать дырку в firewall’е для пересылки. Конечно, я описываю случаи безопасных сред, но на практике твой способ может пригодится. Кстати, через ssh можно гонять и rsync, что намного приятнее как раз для больших файлов :)
Для чего я бы советовал применять netcat, так это для сетевого объединения каналов stdin/stdout двух программ, которые ты не можешь исправить, а надо что-то сделать (особенно, если программа никогда не была рассчитана на работу через сеть).
Ага, согласен :-)
А rsync я активно применяю по ssh. Но не всегда с компрессией
rsync -avz -e "ssh -c arcfour -o Compression=no -x" --delete --max-delete=1000 --hard-links --delete-excluded --exclude-from=${base_dir}/rsync_backup.exclude --backup --backup-dir=/usr/home/rsync/snapshots ctrld@theapplegeek.ru:{/etc,/Users/ctrld/Sites} /usr/home/rsync/theapplegeek.ru…
Однако…
It looks good,I have learn a recruit!Recently,I found an excellent online store, the XX are completely various, good quality and cheap price,its worth buying!