Как уже отмечалось, деготь действительно добавляет к файлу, даже если вы просто держать добавления одного файла в смоляной шар:
[email protected]:~$ dd if=/dev/urandom bs=1M count=1 of=./foo
1+0 records in
1+0 records out
1048576 bytes (1.0 MB) copied, 0.513785 s, 2.0 MB/s
[email protected]:~$ for i in {1..5} ; do tar -rf foo.tar foo ; ls -lh foo.tar ; done
-rw-r--r-- 1 makholm makholm 1.1M 2011-01-22 01:07 foo.tar
-rw-r--r-- 1 makholm makholm 2.1M 2011-01-22 01:07 foo.tar
-rw-r--r-- 1 makholm makholm 3.1M 2011-01-22 01:07 foo.tar
-rw-r--r-- 1 makholm makholm 4.1M 2011-01-22 01:07 foo.tar
-rw-r--r-- 1 makholm makholm 5.1M 2011-01-22 01:07 foo.tar
[email protected]:~$
Это делает его довольно бесполезно что-то вроде инкрементных резервных копий, начиная с ваш tarball будет просто расти с кучей дубликатов файлов с каждым запуском ...
Даже cpio, который, как правило, гораздо более надежный архиватор, делает то же самое в этом случае.
Если вы хотите сделать инкрементное резервное копирование, загляните в rsync и что он может сделать для вас с точки зрения дельта-переводов и ссылки на предыдущие версии файлов ...