rsync @ERROR setgroup ist fehlgeschlagen

rsync @ERROR setgroup ist fehlgeschlagen

Ich habe einen Daemon auf einem Ubuntu-Server eingerichtet rsyncund versuche, eine Datei vom Raspberry-Pi-Rechner auf den Server zu übertragen:

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]

Ich habe den rsyncDaemon so konfiguriert, dass er als Benutzer ausgeführt wird pi, und erhalte den oben genannten Fehler. Wenn ich den Daemon als Benutzer ausführe, rootwerden keine Fehler angezeigt und die Übertragung ist in Ordnung.

Hier ist meine rsyncd.confDatei:

[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

Für das pathVerzeichnis sind g+sBerechtigungen festgelegt. Ich möchte, dass alle darin enthaltenen Dateien die Gruppe des übergeordneten Verzeichnisses erben.

Irgendwelche Ideen, wie dieser Fehler behoben werden kann?

Antwort1

Ich habe die Lösung gefunden. Hier ist das Problem. Da ich es mit einem anderen Benutzer ausführe , nicht mit root, musste ich die folgenden Berechtigungen rsync daemonerteilen :rsync

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

  1. cap_net_bind_service- dies ist erforderlich, damit der Daemon eine Bindung zu den Systemports herstellen kann (niedriger als 1024, der Standardport, an den rsync gebunden ist, ist 873).
  2. cap_setgid- das hat den setgroups failedFehler verursacht.

Hoffe, dass dies in Zukunft jemandem hilft.

verwandte Informationen