>

다음 명령을 시도했습니다 :

rsync -rvz --progress --remove-sent-files ./dir user@host:2222/path

SSH가 포트 2222에서 실행 중이지만 rsync는 여전히 포트 22를 사용하려고 시도하고 경로를 찾지 못하는 것에 대해 불평합니다. 물론 존재하지 않습니다.

비표준 ssh 포트에서 원격 호스트로 재 동기화 할 수 있는지 알고 싶습니다.

  • 답변 # 1

    rsync를 실행하는 호스트의 다른 옵션은 ssh 구성 파일에서 포트를 설정하십시오.

    cat ~/.ssh/config
    Host host
        Port 2222
    
    

    ssh를 통한 rsync는 포트 2222와 통신합니다 :

    rsync -rvz --progress --remove-sent-files ./dir user@host:/path
    
    

  • 답변 # 2

    명령 줄은 다음과 같아야합니다 :

    rsync -rvz -e 'ssh -p 2222' --progress ./dir user@host:/path
    
    

    이것은 잘 작동합니다-새로운 방화벽 규칙없이 항상 사용합니다-SSH 명령 자체는 따옴표로 묶여 있습니다.

  • 답변 # 3

    특정 SSH 포트를 통해 파일을 보내야 할 때 :

    rsync -azP -e "ssh -p PORT_NUMBER" source destination
    
    

    rsync -azP -e "ssh -p 2121" /path/to/files/source user@remoteip:/path/to/files/destination
    
    

  • 답변 # 4

    "rsh 옵션"을 사용하십시오. 예 :

    rsync -avz --rsh='ssh -p3382' root@remote_server_name:/opt/backups
    
    

    참조 : http://www.linuxquestions.org/questions/linux-software-2/rsync-ssh-on-different-port-448112/

  • 답변 # 5

    약간의 비논리적이지만 도움이 될 수 있음 어떤 사람. 비밀번호와 포트를 전달해야하는 경우 sshpass 를 사용하는 것이 좋습니다.  꾸러미. 명령 행 명령은 다음과 같습니다. 와이즈 비즈

    sshpass -p "password" rsync -avzh -e 'ssh -p PORT312' root@192.xx.xxx.xxx:/dir_on_host/

관련 자료

  • 이전 Python으로 Yahoo Finance의 내역 데이터 스크랩
  • 다음 java - 안정된 응답에서 XML 헤더를 제거하는 방법