You cannot do automated differential backups with tar using the --diff operation mode. This is because the --diff operation mode will only look for differences between files already in the tar file and the files of the file system. If a file that resides in the tar file is missing in the file system tar will give you this message:
tar: etc/test.txt: Warning: Cannot stat: No such file or directory
If the content of a file already in the tar file gets changed, tar will print:
etc/test.txt: Mod time differs
etc/test.txt: Size differs
If there is a new file in the file system tar will give you no information. The same is true for the --update
operation mode. It only checks for files already in the archiv.
I found some solutions for doing differential backups with tar using the --newer
parameter relaying on date/time informations of the last full or differential backup. Other solutions stores metadata of the backups and doing differential backups using this metadata.