rsync @ERROR 세트 그룹 실패

rsync @ERROR 세트 그룹 실패

Ubuntu 서버에 데몬을 설정 rsync하고 라즈베리 파이 시스템에서 서버로 파일을 전송하려고 합니다.

rsync --timeout 10 --progress --password-file ~/rsync.password --append-verify some_file [email protected]::files
@ERROR: setgroups failed
rsync error: error starting client-server protocol (code 5) at main.c(1653) [sender=3.1.1]

rsync사용자 로 실행되도록 데몬을 구성했는데 pi위의 오류가 발생합니다. 오류가 표시되지 않고 데몬을 실행하면 root전송이 정상입니다.

rsyncd.conf파일은 다음과 같습니다.

[files]
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock
log file = /var/log/rsync.log

path = /some/path   
comment = RSYNC FILES
read only = false
secrets file = /etc/rsyncd.secrets
auth users = pi
uid = pi
gid = pi
use chroot = false

디렉토리 에는 권한이 설정되어 path있습니다 g+s. 그 안에 있는 모든 파일이 상위 디렉토리의 그룹을 상속받길 원합니다.

이 오류를 해결하는 방법에 대한 아이디어가 있습니까?

답변1

해결책을 찾았습니다. 여기에 문제가 있습니다. 루트가 아닌 다른 사용자로 실행하고 있으므로 다음 기능을 rsync daemon제공해야 했습니다 .rsync

setcap cap_net_bind_service,cap_setgid=+ep /usr/bin/rsync

  1. cap_net_bind_service- 데몬이 시스템 포트에 바인딩할 수 있도록 하기 위해 필요합니다(1024보다 낮고 rsync가 바인딩되는 기본 포트는 873입니다).
  2. cap_setgid- 이것이 오류의 원인입니다 setgroups failed.

이것이 미래에 누군가에게 도움이 되기를 바랍니다.

관련 정보