Como impor o rsync na execução de checksum?

2

Executamos backups noturnos de um servidor de arquivos do Windows criando primeiro um arquivo de backup incremental no servidor a cada noite (bem como um backup completo na noite de quinta-feira) e copiando para um servidor de backup executando Linux / Ubuntu. Para manter a redundância externa, nós rsync o diretório de backup para uma unidade externa que é girada após cada execução noturna.

Com o tempo, o número de arquivos de backup incremental aumentou em um ritmo constante (embora o tamanho desses arquivos tenha variado).

Também notamos que o processo de rsync está demorando mais, apesar de estar copiando apenas os últimos dois arquivos para a unidade externa.

Este é o comando:

rsync -vr --delete-before --log-file=/rsync_log.csv /backup/archive/ /mnt/usbdisk/  2>&1

Quando testamos o comando e investigamos o arquivo de log, vimos isso:

...
2011/02/14 23:59:35 [14054] >f..T...... IncrementalBackup_2011_02_06_20.bkf
2011/02/15 00:00:45 [14054] >f..T...... IncrementalBackup_2011_02_08_20.bkf
2011/02/15 00:03:22 [14054] >f..T...... IncrementalBackup_2011_02_09_20.bkf
2011/02/15 00:04:36 [14054] >f..T...... IncrementalBackup_2011_02_11_20.bkf
2011/02/15 00:04:51 [14054] >f..T...... IncrementalBackup_2011_02_12_20.bkf
2011/02/15 00:05:06 [14054] >f..T...... IncrementalBackup_2011_02_13_20.bkf
2011/02/15 00:06:13 [14054] >f+++++++++ IncrementalBackup_2011_02_14_20.bkf
2011/02/15 00:54:32 [14054] >f..T...... Thursday_Full_Backup_2011_01_20.bkf
2011/02/15 03:24:41 [14054] >f..T...... Thursday_Full_Backup_2011_01_27.bkf
...

O que descobrimos foi o tempo gasto em cada arquivo relacionado ao tamanho do arquivo - mesmo quando pulamos (exemplo - o backup completo demorou cerca de 2,5 horas para ser processado, enquanto os incrementais foram de cerca de 2 a 3 minutos ou menos).

O único arquivo realmente copiado é o arquivo incremental mais recente.

A única explicação que podemos pensar é que o rysnc está executando uma soma de verificação do arquivo - mesmo que a documentação diga que não é por padrão, e nós não especificamos o parâmetro --checksum no comando. Certamente não pode demorar 2,5 horas para determinar o timestamp e o tamanho do arquivo?

Após ter revisado a documentação, não consigo encontrar nenhuma outra explicação além da qual a soma de verificação está sendo calculada. Então, existe uma maneira de garantir que a soma de verificação esteja desativada?

    
por HorusKol 15.02.2011 / 03:14

2 respostas

1

Talvez o problema esteja no registro de data e hora dos arquivos. Se os backups forem criados usando um programa do Windows, ele poderá atrapalhar os registros de data e hora. Se eu replicar sua amostra com um monte de fotos eu obtenho este log

2011/02/15 03:46:46 [61820] delta-transmission disabled for local transfer or --whole-file
2011/02/15 03:46:46 [61820] .d..t....... ./
2011/02/15 03:46:46 [61820] IMG_0055.JPG is uptodate
2011/02/15 03:46:46 [61820] IMG_0056.JPG is uptodate
2011/02/15 03:46:46 [61820] IMG_0057.JPG is uptodate
2011/02/15 03:46:46 [61820] IMG_0058.JPG is uptodate
2011/02/15 03:46:46 [61820] IMG_0059.JPG is uptodate
2011/02/15 03:46:46 [61820] IMG_0060.JPG is uptodate
2011/02/15 03:46:46 [61820] IMG_0061.JPG is uptodate
2011/02/15 03:46:46 [61820] >f..t....... IMG_0062.JPG
2011/02/15 03:46:46 [61820] IMG_0063.JPG is uptodate
2011/02/15 03:46:46 [61820] IMG_0064.JPG is uptodate
2011/02/15 03:46:46 [61820] IMG_0065.JPG is uptodate
2011/02/15 03:46:46 [61820] IMG_0066.JPG is uptodate
2011/02/15 03:46:46 [61820] total: matches=0  hash_hits=0  false_alarms=0 data=5911343
2011/02/15 03:46:46 [61820] sent 5912367 bytes  received 67 bytes  11824868.00 bytes/sec
2011/02/15 03:46:46 [61820] total size is 75450221  speedup is 12.76

Assim, os arquivos são transferidos a cada vez, caso contrário você deve ter a mensagem de log file xxx is uptodate . Tente aumentar a verbosidade do rsync com mais de uma v flag para descobrir o que está acontecendo.

    
por 15.02.2011 / 03:53
0

Qual sistema de arquivos é o drive usb?

Existe um problema conhecido com FAT e timestamps. Veja a página de manual do rsync:

   --modify-window
          When comparing two timestamps, rsync treats the timestamps as being equal if they  differ  by  no  more
          than  the  modify-window value.  This is normally 0 (for an exact match), but you may find it useful to
          set this to a larger value in some situations.  In particular, when transferring to or from an MS  Win‐
          dows  FAT  filesystem  (which represents times with a 2-second resolution), --modify-window=1 is useful
          (allowing times to differ by up to 1 second).
    
por 15.02.2011 / 03:49