This seems like a suitable topic to follow yesterdays post:
I just wrote a backup script to periodically tar up the entire linuxish contents of my laptop and put them on the server.
The hard part (in terms of time consumed) was finding a suitable algorithm for scheduling it. I don’t want it to run in the middle of the night, because I’m concerned that it will be frantically pumping large slabs of data into the server at the same time that the server is trying to back itself up, severely impacting backup performance.
I don’t really want it to run during the day (although I am running one right now) because it will slow things down and chew resources which I might otherwise be using for my own ends.
In the end, I decided that the optimal scheduling algorithm was to run it when I feel like it. 🙂 It means that I forfeit reliable regular backups, but all the other schemes I examined would have been so careful about not being inconvenient that they could hardly have been called ‘reliable’ anyway.