Я использую scp для параллельного копирования файлов, используя параллель GNU с моим нижеприведенным сценарием оболочки, и он работает нормально.
Я не уверен, как я могу использовать rsync
вместо scp
в моем нижеприведенном сценарии оболочки. Я пытаюсь увидеть, будет ли rsync
иметь лучшую производительность по сравнению с scp
или нет с точки зрения скорости передачи.
Ниже описание моей проблемы -
Я копирую файлы из machineB
и machineC
в machineA
, поскольку я запускаю свой сценарий оболочки ниже на machineA
.
Если файлов нет в machineB
, то они точно должны быть в machineC
, поэтому я попробую сначала скопировать файлы из machineB
, если их нет в machineB
, то я попробую скопировать те же файлы из machineC
.
Я копирую файлы параллельно, используя библиотеку GNU Parallel, и она работает нормально. В настоящее время я параллельно копирую пять файлов как для ОСНОВНОГО, так и для ВТОРИЧНОГО.
Ниже приведен мой сценарий оболочки, который у меня есть -
#!/bin/bash
export PRIMARY=/test01/primary
export SECONDARY=/test02/secondary
readonly FILERS_LOCATION=(machineB machineC)
export FILERS_LOCATION_1=${FILERS_LOCATION[0]}
export FILERS_LOCATION_2=${FILERS_LOCATION[1]}
PRIMARY_PARTITION=(550 274 2 546 278) # this will have more file numbers
SECONDARY_PARTITION=(1643 1103 1372 1096 1369 1568) # this will have more file numbers
export dir3=/testing/snapshot/20140103
do_Copy() {
el=$1
PRIMSEC=$2
scp david@$FILERS_LOCATION_1:$dir3/new_weekly_2014_"$el"_200003_5.data $PRIMSEC/. || scp david@$FILERS_LOCATION_2:$dir3/new_weekly_2014_"$el"_200003_5.data $PRIMSEC/.
}
export -f do_Copy
parallel --retries 10 -j 5 do_Copy {} $PRIMARY ::: "${PRIMARY_PARTITION[@]}" &
parallel --retries 10 -j 5 do_Copy {} $SECONDARY ::: "${SECONDARY_PARTITION[@]}" &
wait
echo "All files copied."
Есть ли способ заменить мою команду scp
выше на rsync
, но я все еще хочу копировать 5 файлов параллельно как для PRIMARY
, так и для SECONDARY
одновременно?
scp
иrsync
при передаче файлов? - person john   schedule 24.05.2014rsync
, вероятно, будет более эффективным. В противном случае это просто добавляет накладные расходы. - person tripleee   schedule 24.05.2014