SFTP는 다운로드하지 않고 원격 파일을 복사합니다.

SFTP는 다운로드하지 않고 원격 파일을 복사합니다.

SFTP를 통해 액세스할 수 있는 백업 공간이 있습니다. 이 원격 저장소의 "mybackup"이라는 디렉터리에 백업을 만들었습니다. 이제 원격 저장소에 "mybackup-copy"라는 이름의 mybackup 디렉터리 복사본을 만들고 싶습니다.

전체 디렉토리를 다운로드한 후 다시 업로드하지 않고 SFTP를 사용하여 이 작업을 수행할 수 있는 방법이 있습니까?

예를 들어, 전체 SSH 셸 액세스 권한이 있는 경우 이 작업을 수행할 수 있습니까 cp -ar mybackup mybackup-copy? SFTP 프로토콜을 통해 이를 수행할 수 있습니까?

답변1

핵심 SFTP 프로토콜은 원격 파일 복사를 지원하지 않습니다. 초안이 있습니다copy-data/ copy-fileSFTP 프로토콜 확장.

그러나 가장 널리 퍼진 OpenSSH SFTP 서버 중에서 copy-data최신 지원은버전 9.0오직. 그것은sftp고객가지다cp주문하다(그러나 호환되는 서버도 필요합니다).

확장을 지원하는 다른 서버는 다음과 같습니다.FTPD 프로토콜mod_sftp및 Bitvise SFTP 서버.


그래서 사용껍데기 cp일반적으로 명령이 유일한 방법입니다.

답변2

원격 측에서 scp이를 지원하면 다음과 같이 작동합니다.

scp -p host:/path/to/file/filename.ext host:/path/to/copy/of/file/

또는 디렉토리를 복사하려고 한다고 말씀하셨기 때문에:

scp -rp host:/path/to/directory host:/path/to/copy/

에 디렉토리 /path/to/copy가 있다고 가정하면 후자의 명령은 host에 새 디렉토리를 생성합니다./path/to/copy/directoryhost

관련 정보