Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
How do I maintain a copy of remote drive with rsync?
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Networking & Security
View previous topic :: View next topic  
Author Message
Goverp
Advocate
Advocate


Joined: 07 Mar 2007
Posts: 2182

PostPosted: Sat Oct 19, 2024 12:50 pm    Post subject: How do I maintain a copy of remote drive with rsync? Reply with quote

I'm getting lazy in my old age - too lazy to fight my way through the rsync man pages, at any rate. ;-)

I have a Raspberry Pi running Arch Linux that runs various minor services on my home network. It struck me that I don't have a backup process for it.
It's fairly small, and mostly only a few files being updated on a regular basis (apart from periodic system software updates with pacman). Probably the easiest way to back it up would be to maintain a folder on my desktop machine containing a clone of the entire Pi filesystem, using rsync. That would then get swept up in my usual desktop backup process (which happens to use app-arch/dump). Should disaster strike, I'd hope it would be "mount a new formatted and partitioned SD card locally on the desktop machine, then rsync the entire filesystem back".

I have rsync installed on both the Pi and my desktop. My preference would be to use the rsync daemon as root on the Pi - I have ssh set to deny root.

I'd be most grateful if someone who has a similar setup could post the outlines of commands and rsyncd.conf. So far I've come across --fake-root and --links, which seem essentials. The Arch wiki has a relevant article, but as it's missing both those options, either I'm over- or they're under-thinking it!
_________________
Greybeard
Back to top
View user's profile Send private message
szatox
Advocate
Advocate


Joined: 27 Aug 2013
Posts: 3467

PostPosted: Sat Oct 19, 2024 2:18 pm    Post subject: Reply with quote

AFAIR this does everything:
rsync -aAXHS

The example rsync conf looks simple enough, probably just need to set path=/, and also chroot=yes is pointless if you're going to expose everything anyway, though it might as well "just work"™ with the default config. I've never used rsync daemon, always tunneled it through ssh.
_________________
Make Computing Fun Again
Back to top
View user's profile Send private message
pingtoo
Veteran
Veteran


Joined: 10 Sep 2021
Posts: 1290
Location: Richmond Hill, Canada

PostPosted: Sat Oct 19, 2024 3:54 pm    Post subject: Reply with quote

In addition to szatox, I would suggest maintain a exclude list file, so you can easier to manage what is in backup.

I don't have direct rsync backup setup as you plan to do. I use rsnapshot. I went a little bit crazy by putting the entire rsnapshot setup in a docker container.

So following szator idea and your plan, I will put /etc/rsyncd.conf
Code:
uid = root
gid = root
read only = yes
syslog facility = local5
pid file = /var/run/rsyncd.pid
[backup]
        path = /
        hosts allow = 10.1.1.1/24
        exclude from = /etc/rsync_backup_excludes
        dont compress = *.gz *.bz2 *.zip
        comment = my server backup


And for /etc/rsync_backup_excludes
Code:
# backup all important config files.
+ /etc
# Not backup everything else.
/*


The desktop client command will be
Code:
rsync -aAXHS pi-server::backup


These config files are from memory, so there may be syntax error. so let me know if you found error, I will try to correct them.
Back to top
View user's profile Send private message
Goverp
Advocate
Advocate


Joined: 07 Mar 2007
Posts: 2182

PostPosted: Sun Oct 20, 2024 11:12 am    Post subject: Reply with quote

Thanks.
_________________
Greybeard
Back to top
View user's profile Send private message
Bob P
Advocate
Advocate


Joined: 20 Oct 2004
Posts: 3374
Location: USA

PostPosted: Sun Oct 20, 2024 8:54 pm    Post subject: Reply with quote

I've done it both ways -- one being the use of an rsync server, the other being rsync over ssh by a non-root user having the right file/directory permissions. If your file permissions allow non-root user/group to access to the directories and the files, rsync as a non-root user over ssh is simpler as there's no need to install an rsync server.

if root file permissions are required it's still possible to perform rsync over ssh as root (without an rsync server) if you allow root ssh access by one machine and deny it everywhere else. it all depends on where you prefer to place your access restrictions.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Networking & Security All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum