Утилита netcat

Копирование директорий между хостами с помощью netcat

Как перенести каталог с одного хоста на другой?

- Можно использовать ssh, но при этом весь трафик будет сжиматься, что приведёт к некоторым потерям производительности.

- Когда такое копирование производится по общедоступным сетям, правильнее использовать ssh, но внутри одного сегмента можно выполнить эту операцию и с помощью netcat. Для этого:

На стороне получателя данных переходим в каталог, в который необходимо разместить полученные данные, и выполняем такую команду:

nc -l 12345 | tar xvf -

На стороне источника данных так же переходим в каталог, в котором размещён передаваемый каталог, и выполняем такую команду:

tar -cf - ./our_directory/ | nc target_host 12345

Где:

12345 - номер порта, по которому будет производиться обмен данными;

target_host - ip-адрес или hostname компьютера, на который будут передаваться данные.

Если хочется следить за статусом процесса, то можно воспользоваться утилитой pv, почитать о ее использовании можно тут PV

 

Обновлено 06.04.2016 21:28

unix-way