Backup incremental com cp
Backup incremental com cp
Este comando copia somente os arquivos que foram atualizados ou criados, diminuindo assim o tempo de cópia dos arquivos, já que será copiado somente os novos arquivos criados que não existirem no destino, ou que foram alterados para a pasta, partição ou pendrive usado como backup.
Exemplo:
cp -vur * /media/disk
Serão copiados todos os arquivos novos que não existirem no destino ou que foram alterados para /media/disk.
Este comando copia também subdiretórios e arquivos ocultos, mas somente arquivos ocultos abaixo da pasta atual; por exemplo, eu estou em /home/nando/ e dentro desta pasta existe ainda outras pastas, executando o comando em /home/nando/:
cp -vur * /media/disk
Os arquivos ocultos que estiverem dentro da pasta /home/nando não serão copiados para o destino, mesmo que não existam lá os mesmos, somente serão copiados os arquivos ocultos que estiverem dentro de outras pastas a partir da pasta "/home/nando".
Uma pequena desvantagem da cópia com o comando cp, é que se você excluir os arquivos da pasta de origem que não mais interessa para utilizar no backup, os mesmos não são excluídos no destino usado para backup, devendo fazer a exclusão manualmente no destino usado para backup para economizar espaço no disco.
Outro exemplo:
cp -vur icones/ ocr/ Skins/ /media/disk/bkp/
Copia as pastas "icones", "ocr" e "Skins" para /media/disk/bkp.
Flags:
- -v :: verbose
- -u :: update
- -r ou -R :: recursivamente
Script para automatizar o backup para ser adicionado ao crontab:
Obs.: Nome "cpbkp" com permissão x (execução).
date >> /tmp/bkp.log
cp -vru /caminhodeorigem /caminhodedestino >> /tmp/bkp.log
echo ================================= >> /tmp/bkp.log
Com isso, será gerado um log dos arquivos que foram copiados para a pasta de destino, servindo para você conferir se a cópia está sendo realizada examinando o log que contém a data e hora de cada execução do script e os nomes dos arquivos copiados.
Esta dica também está disponível em:
Parabéns!