jimsalterjrs / sanoid

These are policy-driven snapshot management and replication tools which use OpenZFS for underlying next-gen storage. (Btrfs support plans are shelved unless and until btrfs becomes reliable.)
http://www.openoid.net/products/
GNU General Public License v3.0
3.14k stars 308 forks source link

How to properly execute Sanoid concurrently with different configs? #949

Open tschoening81 opened 2 months ago

tschoening81 commented 2 months ago

I have Sanoid installed to create snapshots of internal storage and want to use it for external USB backup as well. I have a backup script where I want to call Sanoid manually with a special config file using --configdir=/etc/sansoid/bak_usb. What I'm wondering about is the other options for cache and lock files. Both instances of Sanoid work on different and exclusive ZFS pools.

So, is it required to specific individual cache-dir and run-dir as well?

I guess if I don't do so, the Sanoid instance handling system internal storage and that for backup only simply can't run concurrently? So whenever the execution time overlaps, I run into some error?

Does the cache-dir needs to be maintained at the USB backup disk?

I'm having trouble understanding what the cache file is actually used for. My USB backup gets switched monthly. So what happens to the cache file if it's stored at the system and outdated with respect to a new USB disk used? Is it necessary to put the cache onto the USB disk? I don't care about performance too much, so if Sanoid would take a minute more to do it_'s stuff, that would be OK for me. Therefore I currently prefer keeping things next to each other, which means the cache would be something like /var/cache/sanoid/bak_usb instead of /media/bak_usb/sanoid/cache.

Thanks for your answers!