Rsync Exclui MP4s usando curingas para caminhos

1

Eu estou querendo excluir vídeos renderizados (.mp4) dos meus backups rsync. No entanto, existem alguns .mp4 que eu preciso incluir no backup. A diferença é o caminho onde os MP4 a serem excluídos estão localizados. O que eu tentei (sem sucesso) é:

/home/rpiggott/Videos/youTube/*/*.mp4
  • Estou tentando usar o curinga / * / é para corresponder a todos os subdiretórios. Cada vídeo tem seu próprio diretório.
  • O * .mp4 é uma tentativa de corresponder ao vídeo renderizado que desejo excluir.

Estou adicionando isso ao final de esta lista .

Esta é a minha sintaxe para o rsync no meu dispositivo NAS

sshpass -p PASSWORD rsync -av --del --exclude-from=/var/tmp/ignorelist --numeric-ids /home/rpiggott USER@NAS_IP_ADDRESS:/nfs/rpiggott/
    
por Ron Piggott 03.04.2018 / 18:22

1 resposta

3

A resposta para isso é criar uma exclusão completa completa com a lista de todos os arquivos que você não deseja incluir em seu rsync :

Passo 1: Crie um arquivo de texto listando os nomes dos arquivos (incluindo o caminho) que você está excluindo do backup do rsync

command \ls /home/rpiggott/Videos/youTube/*/*.mp4 > /var/tmp/youTube_mp4_exclude 
  • O uso do comando \ ls ignora o alias ls usado no terminal
  • O uso de (1) > sobrescreve o arquivo criado cada vez que o comando é executado
  • O caminho de saída - nomes de arquivos devem corresponder exatamente ao que rsync está procurando. Para eliminar parte do caminho use isto: %código%

Passo 2: cat os arquivos juntos

cat /var/tmp/ignorelist /var/tmp/youTube_mp4_exclude > /var/tmp/rsync_ignore.txt
  • Não se esqueça das permissões de arquivo se isso estiver se tornando um cron job

Etapa 3: altere - exclude-from para o novo arquivo criado:

sshpass -p PASSWORD rsync -av --del --exclude-from=/var/tmp/rsync_ignore.txt --numeric-ids /home/rpiggott [email protected]:/nfs/rpiggott/
  • Lembre-se de que o rsync tem uma opção - dry-run para testar sua unidade de backup

Se você estiver configurando isso como um cron, use um arquivo .sh com permissão de arquivo de arquivo 755

0 3 * * * /home/rpiggott/Backup/daily_backup.sh
    
por Ron Piggott 03.04.2018 / 20:23