
SCP를 사용하여 클라우드의 VPS에서 PC로 파일을 백업하고 있습니다. 백업 스크립트의 초기 버전에는 서버 루트의 모든 것을 백업하는 단일 SCP 명령이 있습니다. 이것은 완벽하게 작동합니다 ..
그러나 서버가 성장함에 따라 이것이 커지기 시작하여 특정 디렉터리(약 12개)에서 SCP 명령을 실행하도록 스크립트를 변경하고 있습니다. 그리고 이제 개별 SCP 명령 중 일부가 "연결이 거부되었습니다"라는 메시지와 함께 무작위로 실패합니다. 하지만 스크립트의 다음 SCP 명령은 작동합니다... 어딘가에 조절이 있을 경우를 대비하여 각 SCP 명령 사이에 5초 지연을 추가했지만 이것만으로는 충분하지 않습니다.
이 문제의 원인은 무엇입니까? 무엇을 확인할 수 있나요?
netstat
스크립트가 실행된 후 서버에 내 IP의 여러 SSH 연결이 표시됩니다(물론 발행할 연결도 포함 netstat
하지만 이는 그중 하나일 뿐입니다).
중요한 경우 서버는 Ubuntu Server 16.04를 실행하고 내 PC는 Ubuntu 14.04를 실행합니다.
답변1
VPS 공급자(또는 자체 서버)가 SSH 연결 속도를 제한할 가능성이 높습니다. 속도 제한을 초과하면 연결이 거부됩니다.
[업데이트]
ssh -L 2222:localhost:22 user@vps
이 제한이 VPS 공급자 측에 있는 경우 스크립트 기간 동안 서버에 SSH 터널(예: )을 설정한 다음 이 터널을 통해서만 scp-ing(예: localhost:2222
내가 제공한 터널을 통해) 하여 이를 극복할 수 있습니다. .