Em vez de compactá-lo e fazer isso, use o rsync na rede. Se você criar um novo diretório para cada data e usar a opção --link-dest para vinculá-lo ao diretório anterior, ele armazenará apenas os arquivos alterados, e os arquivos que não forem alterados serão um link físico para o diretório anterior. anterior.
Eu postei um código em Qual solução de backup você use para servidores linux