One of the purposes of rsync is to backup whole filesystems and archive them but how can you do that properly and restore things to normal if all permissions and ownerships are not preserved from your root filesystem?
It's not desirable to have everything running as root, especially not just for an rsync.
sudo is the answer and all you have to do is edit /etc/sudoers
At the end of the file add a line like below (on both source and all target rsync systems).
*Replace "username" with your actual username of course
username ALL = NOPASSWD: /usr/bin/rsync
The "NOPASSWD" part does as you'd expect, it allows you to sudo to the rsync command without requiring any password, otherwise it would be impossible to script this process and would make rsync useless for automated backups.
Make sure you add the following when running your rsync backup:
That flag ensures that the ownership and permissions can be preserved even as root on the target system for your non-root user.
Also remember on the source systems to always run rsync with sudo.
sudo rsync -Pha --rsync-path="sudo rsync" --ignore-errors --exclude=/media --exclude=/proc/* --exclude=/sys/* / user@destination:/location/
rsync, preserve, attributes, permissions, ownership, userone, purposes, filesystems, archive, restore, ownerships, preserved, filesystem, desirable, users, sudo, edit, etc, sudoers, quot, username, nopasswd, usr, bin, allows, requiring, password, automated, backups, ensures, user, eg, pha, errors, exclude, proc, sys, destination,