rsync는 없지만 SCP 도구가 있는 서버에 rsync하는 방법

rsync는 없지만 SCP 도구가 있는 서버에 rsync하는 방법

원격 서버는 rsync가 설치되지 않은 FreeBSD와 유사한 시스템입니다.

$ ssh [email protected] which rsync scp
Password:
rsync not found
/usr/local/bin/scp
$ rsync -a /ring/0/share/Archives_AudioVisuel/TEST [email protected]:/ifs/par-nas01/data/MPP/ADN_Archives/Audiovisuels/
Password:
zsh:1: command not found: rsync
rsync: connection unexpectedly closed (0 bytes received so far) [sender]
rsync error: remote command not found (code 127) at io.c(226) [sender=3.1.2]
$

추가를 시도했지만 is라는 -e ssh동일한 오류가 발생합니다 .rsyncnot found

그리고 추가하려고 하면 오류가 --rsync-path=/usr/local/bin/scp발생합니다 scp: illegal option -- -.

rsync도구만 있는 서버에 어떻게 작업을 수행할 수 있습니까 scp?

답변1

원격 FreeBSD 시스템에 소프트웨어를 설치할 수 없지만 로컬 Linux 시스템에 소프트웨어를 설치할 수 있는 경우 다음을 사용할 수 있습니다.sshfs해결 방법으로.

mkdir my_mountpoint
# The pathname (here just a slash) indicates the root of the mounted FS.
sshfs admin@remote_machine:/ $_

명령 은 명령 sshfs을 시작합니다/usr/libexec/sftp-server리모콘에FreeBSD 머신,사전 설치됨바이너리. 이제 마치 전역 경로 이름 네임스페이스에 있는 것처럼 마운트 지점을 사용할 수 있습니다. ${_}쉘 변수는 이전 명령의 마지막 인수로 확장된다는 점을 기억하십시오 .

rsync -a /ring/0/share/Archives_AudioVisuel/TEST \
    ${_}/ifs/par-nas01/data/MPP/ADN_Archives/Audiovisuels/

완료되면 fusermount유틸리티를 사용하여 FUSE(사용자 공간의 파일 시스템) 마운트를 마운트 해제합니다.

fusermount -u my_mountpoint

이 방법으로는 성공하지 못할 것 같아가득한하지만 rsync의 효율적인 Δ-복사 알고리즘을 사용합니다. 비디오 아카이브를 동기화하는 경우 이는 그다지 중요하지 않을 것 같습니다.

관련 정보