Hi,
erstmal sorry, konkret werde ich dir nicht helfen können.
Dump/Restore gegen rsync: Es sind unterschiedliche Anwendungsgebiete. Mit rsync macht man Backups auf dem Dateisystem, man kann ohne Probleme von Linux auf FreeBSD syncen und sich das dann dort im Dateisystem angucken, durchgreppen und filtern, wie man lustig ist.
Schwierigkeit ist hier aber, dass das ganze eben auf FS-Ebene kopiert wird, man also ggf an Limitierungen des Dateisystems auf dem Backuprechner gebunden ist. Ist aber z.B. praktisch für Backups von Userdaten oder um mehrere Verzeichnisse auf dem selben Stand zu halten. Oder wenn man noch zusätzlich Linuxkisten hat , und eine einheitlich Backuplösung haben will.
Dump/Restore ist speziell auf ufs ausgelegt und kopiert alles in ein einzelnes Image rein und dabei wohl auch toleranter, was kaputte Dateisysteme und Einzelheiten des Dateisystems angeht. Das dann auf einem anderen Betriebssystem anzugucken, wird schon schwerer.
Zum eigentlichen Problem: Ich seh nur, dass du da die IDs numerisch rüberkopierst und nicht mehr existente Dateien löschst, beim Aufruf von rsync auf dem Host aber nicht.
An deiner Stelle würde ich entweder das Skript neu schreiben (mehr als einmal die manpage von rsync durchzugehen sollte das nicht sein) oder aber mit diesem Kommando auf den Server raufgehen und dann dort gucken, was probiert wurde, aufzurufen. Kannst du z.B. durch eine temporäre Änderung dieses Kommandos dort in ein `echo $SSH_ORIGINAL_COMMAND >> /tmp/sshcmd` o.Ä. ändern. Dauert ein paar Minuten, das zu testen, aber auch nicht mehr. Und ich glaube, das geht schneller, als auf jemanden zu warten, der rsync-Server-Kommandos aus dem Kopf kann.