Even after playing with a test config for a bit and manually running test backups of a directory with junk files, I somehow cannot grasp some of the behavior.
I install rsnapshot on a blank ubuntu setup.
I then mkdir /media/{initial,backup}
touch /media/initial/{file1,file2,file3,file4,file5}
Set snapshot_root to /media/backup
Leave the ubuntu defaults of retain hourly 6, daily 7, weekly 4.
Set verbose to 3, just for fun.
I then run rsnapshot hourly six times, manually. It creates hourly.0-5 as you would expect.
I then run rsnapshot daily, and it creates daily.0 as you would expect.
But if I try to run rsnapshot daily again, without running an hourly first, it says:
root < at > testbot:/media/backup# rsnapshot daily
echo 2486 > /var/run/rsnapshot.pid
mv /media/backup/daily.0/ /media/backup/daily.1/
/media/backup/hourly.5 not present (yet), nothing to copy
rm -f /var/run/rsnapshot.pid
Upon further investigation, I can see that the rsnapshot daily did a mv hourly.5 daily.0.
But why behave that way? The whole point is to have snapshots taken at certain times, even if nothing has changed. Since we are using hardlinks, there is no drawback to merely duplicating hourly.5 into daily.0, rather than renaming (mv-ing) the hourly.5 into daily.0. But now, since rsnapshot renames hourly.5 into daily.0, the next time rsnapshot tries to run daily, if the hourlies have failed for some reason daily will fail as well.
Maybe there is some benefit to this behavior that I'm missing.
Thanks in advance for your help, and sorry for the very long winded question, which I'm sure is probably a silly one.
