After a narrowly averted data loss, I decided to schedule daily backups to an external hard drive. The scheduler of choice for this would be anacron, which runs tasks after a specified delay at startup, but only if it it hasn't run before in a specified time period (daily, weekly etc.) This is arguably better than a startup job running at every boot or a cron job running every day at a certain time regardless whether the computer is switched off.
I used unison as the backup synchronisation manager, it has both a GUI interface and an intervention-free console batch mode. Copying exceptions and permissions rules can be easily defined in profile scripts. You can't run this script in pure batch mode, as you have to tell the user to connect the external drive before starting the backup, so I used the Kdialog (zenity on Gnome/Unity) app for pop-up messages.