잘못된 구성 옵션: scp에 컨트롤 마스터가 있는 동안 ControlPersist가 있습니까?

잘못된 구성 옵션: scp에 컨트롤 마스터가 있는 동안 ControlPersist가 있습니까?

SCPwith를 사용하여 파일을 복사하고 있는데 ControlMaster어떻게든 이 오류가 다시 발생합니다.

command-line: line 0: Bad configuration option: ControlPersist
command-line: line 0: Bad configuration option: ControlPersist
command-line: line 0: Bad configuration option: ControlPersist
command-line: line 0: Bad configuration option: ControlPersist
command-line: line 0: Bad configuration option: ControlPersist

이것은 내 쉘 스크립트입니다 -

#!/bin/bash

export PRIMARY=/filetransfer/test01/primary
readonly SERVERS_LOCATION=(machineB machineC)
export SERVERS_LOCATION_1=${SERVERS_LOCATION[0]}
export SERVERS_LOCATION_2=${SERVERS_LOCATION[1]}
export MAPPED_LOCATION=/data/snapshot
FILE_PARTITION=(550 274)

export dir3=$MAPPED_LOCATION/20140510

find "$PRIMARY" -mindepth 1 -delete

do_CopyFiles() {
  el=$1
  scp -o ControlMaster=auto -o 'ControlPath=~/.ssh/control-%r@%h:%p' -o ControlPersist=900 david@$SERVERS_LOCATION_1:$dir3/pp_week_1543_"$el"_200003_5.data $PRIMARY/. || scp -o ControlMaster=auto -o 'ControlPath=~/.ssh/control-%r@%h:%p' -o ControlPersist=900 david@$SERVERS_LOCATION_2:$dir3/pp_week_1543_"$el"_200003_5.data $PRIMARY/.
}
export -f do_CopyFiles
parallel -j 5 do_CopyFiles ::: "${FILE_PARTITION[@]}"

내가 뭐 잘못 했어요?

이것은 쉘 스크립트를 실행하는 컴퓨터에서만 발생합니다. 다른 컴퓨터에서 동일한 쉘 스크립트를 실행했는데 제대로 작동합니다. 그래서 이 기계의 일부 설정 구성이 다른 것 같은데, 모르겠습니다.

답변1

ControlPersist옵션은 OpenSSH 5.6에서 처음 등장했습니다. 이전 버전을 사용하고 있을 수 있습니다.

그렇지 않은 경우 ControlPersist연결이 완료되면 연결을 명시적으로 종료할 수 있습니다.

답변2

가장 확실한 대답은 모든 시스템에 동일한 버전이 없으며 scp일부 시스템에서는 이를 지원하지 않는다는 것입니다 -o ControlPersist.

하지만 ControlMaster가 정말 필요한가요? 당신이 하는 일의 차이를 실제로 측정할 수 있습니까?

rsync를 살펴볼 수도 있습니다.

관련 정보