데몬 모드에서 rsync 서버의 필요성


29

데몬 모드에서 rsync 서버의 필요성을 이해하지 못합니다. SSH 또는 텔넷과 함께 rsync를 사용할 수 있다면 어떤 이점이 있습니까?

답변:


22

많지만 머리 위로 몇 개를 인용하겠습니다.

  1. 원격 서버에서 ssh / rsh를 사용할 수 없거나 구성 또는 엄격한 네트워크 규칙으로 인해 손상된 경우 어떻게합니까? rsh / ssh를 사용하려면 여전히 클라이언트 (송신자 또는 수신자 역할에 따라 다름)가 필요하지만 원격 측은 rsync 바이너리를 로컬로 포크하고 로컬 측에서 실행중인 rsync 프로세스와의 연결을 설정해야합니다. rsh / ssh는 연결 터널 만 제공합니다. rsync와 관련하여 rsync는 파이프를 통해 다른 rsync 프로세스와 통신합니다.

  2. 데몬 모드 rsync 프로세스를 사용하면 서버는 rftp 모듈을 통해 일부 파일 시스템을 사용할 수있는 진정한 ftp 유사 서버가됩니다. 다른 모든 것을 피할 수 있습니다. / usr / local 및 / var 만 다운로드 할 수있게하고 rsync 클라이언트의 다른 다운로드 요청을 거부한다고 가정합니다. 호스트 수준 또는 파일 시스템 (모듈) 수준에서 재량을 사용하여 업로드 또는 다운로드 (읽기 전용)를 허용 할 수 있습니다.

  3. 구성 파일을 통해 특히 다운로드 / 업로드하기 위해 호스트 / 사용자 수준 액세스, 인증, 권한 부여, 로깅 및 파일 시스템 (구조) 모듈을 제어 할 수 있습니다. 구성 파일을 변경할 때마다 rsyncd --daemon또는을 다시 시작할 필요는 없습니다 HUPped. 또한 한 번에 몇 개의 클라이언트가 rsync 서버 프로세스에 연결할 수 있는지 제어 할 수 있습니다. rsyncd 서버 프로세스가 CPU 또는 디스크 기반 I / O 작업을 통해 호스트를 완전히 중지시키지 않기 때문에 이것은 좋습니다.

  4. chroot 기능은 디먼 모드의 rsyncd 구성을 통해 사용할 수 있습니다. 호스트에서 보안되어야하고 외부 액세스 권한이 없어야하는 파일 / 파일 시스템에 대해 클라이언트가 rsyncd에 연결하지 않도록하려면이 기능을 매우 깔끔한 보안 기능으로 사용할 수 있습니다.

  5. rsync 클라이언트가 사용하는 옵션 중 일부를 완전히 거부하고 옵션을 허용하지 않는 등 서버 쪽에서 즐겁게 할 수 없습니다 --delete.

  6. rsync 프로세스 전후에 일부 명령 / 스크립트를 실행하는 옵션이있을 수 있습니다. 예를 들어 전송 후 모드에서 rsync 통계를보고하고 저장하는 것이 있습니다.

이것들 중 일부이지만 rsync의 전문가 사용자가 이것에 대해 더 많은 것을 밝힐 수 있다고 확신합니다.


8
  1. cygwin을 사용하여 Linux 시스템과 Windows 시스템간에 큰 폴더를 동기화하는 데 문제가 발생했습니다. rsync 데몬을 사용하기 위해 SSH 터널을 삭제 한 후 문제가 해결되었습니다.

  2. 클라이언트는 서버로 밀거나 당기는 서버의 파일 시스템 레이아웃 등을 알 필요가 없습니다.


1
# 2의 경우 +1 미러 네트워크와 같은 상황은 고도로 분산 된 특성으로 인해 불확실성을 야기하므로 관련없는 로컬 의사 결정을 네트워크 운영에서 분리하는 것이 좋습니다.
Warren Young

@tim Cygwin 및 rsyncSSH 사용시 어떤 문제가 발생 했습니까?
다니엘 Sokolowski

3

rsync의 일반적인 사용법은 파일의 공개 아카이브를 미러링하는 것입니다. 기본 사본의 운영자는 아카이브에 대한 원격 쉘 액세스를 허용하지 않지만 원격 미러를 실행하는 자원 봉사자가 아카이브의 완전한 사본을 효율적으로 얻을 수 있기를 원합니다. Rsync는 변경된 비트 만 다운로드하기 때문에 미러를 만드는 데 매우 효과적이며 네트워크에 약간의 중단이 있으면 전체 큰 파일 (cd / dvd 이미지)을 다시 다운로드하지 않습니다.

비트 토렌트 프로토콜은 실제로 지금 더 나은 선택이지만 rsync는 몇 년 전에 릴리스되었습니다.

지금도 많은 주요 아카이브는 여전히 미러에 rsync를 사용합니다.

참조 : http://www.debian.org/mirror/ftpmirror

우리가 권장하는 미러링 프로토콜은 rsync입니다.


이러한 종류의 응용 프로그램에 대해서는 zsync 를 참조하십시오. rsync와 비슷하지만 서버가 아닌 클라이언트에서 모든 노력을 다합니다. 서버에는 미리 계산 된 해시 목록 만 있으면됩니다.
rjmunro

1

익스트라 넷에 rsync-services를 제공하고 ssh를 노출하지 않고도 동기화 할 수 있습니다.

데몬 모드에서 rsync는 로컬 체크섬을 더 빨리 계산할 수 있으므로 여러 병렬 클라이언트가 필요한 경우 더 적합합니다. 독립형 명령을 사용하면 모든 세션에 대해 체크섬을 다시 계산해야합니다.


0

SSH는 예를 들어 암호화 사용으로 인해 오버 헤드를 제공합니다. 따라서 이론적으로는 rsync 서버 데몬으로 더 높은 처리량을 가져와야합니다.


2
암호화 오버 헤드가 중요한 이론적 네트워크가 존재하기 때문에 이에 대해 귀하에게 공감하지는 않겠습니다. 그래도 측정하면 초기 키 협상 단계를 제외하고 실제 네트워크에서는 중요하지 않다는 것을 알 수 있습니다. 패킷이 흐르면 ​​네트워크 대기 시간으로 암호화 시간이 단축됩니다.
Warren Young

@WarrenYoung 노인 파이프는 큰 파이프에서 공개 rsync 서버를 호스팅합니다.
Gilles 'SO- 악의를 멈춰라'

1
@Gilles-파이프를 가득 채우는 데 충분한 속도로 암호화 할 수 없을 정도로 느린 시스템으로 인해 디스크 대역폭 문제가 발생할 수 있습니다. 결론은 측정을보고 싶습니다. 누군가 측정을 게시하기 전에 전송 크기를 두 배로 늘리고 측정 한 효과가 두 배가되도록하십시오. 그렇지 않은 경우 주요 협상을 계산하는 데 시간이 오래 걸리게됩니다.
Warren Young

이 경우 GNU 병렬을 사용하면 rsync를 병렬화하는 것이 더 좋습니다.
Nikhil Mulley
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.