If you use the same mount point for each disk you can achieve what you are after. If duplicity doesn't find its index files from the last full backup, it will do a full backup regardless of whether or not you had requested an incremental. If you erase the disk contents before the next rotation into the machine for backup the pattern will continue. What is the rate of change in your dataset? Is it files or is it a database?
Many thanks for the reply, much appreciated. I think my subject was slightly misleading in that I don't necessarily need a full backup each time, but I do need multiple full sets (ie not requiring multiple disks to restore a full backup) - but either way, while you were replying, I was experimenting and you are absolutely right, it works just as I'd like
In the backup module, it seems like Zentyal caches the manifest of the last backup it performed, so you can search it. But it doesn't use that to do the next incremental - it uses the actual media at the mountpoint. So if the last backup was to the Monday disk and I have Tuesday connected to the mountpoint, it will report files that aren't on the Tuesday backup - but when it actually does the backup, it will scan the connected disk and do an incremental from the previous time (eg the last Tuesday) that disk was used.
If, say, the Tuesday disk is connected but not run yet and I want to restore from it, the backup manifest in the web interface can be updated with:
/usr/share/zentyal-ebackup/update-status
And, for reference (this is to be found elsewhere, I think), backups can be triggered manually with:
/usr/share/zentyal-ebackup/backup-tool --full
/usr/share/zentyal-ebackup/backup-tool --incremental
Again, many thanks - one more job ticked off!