Se eu correr rsync
com --info=progress2
, recebo uma saída como
105.45M 13% 602.83kB/s 0:02:50 (xfr#495, ir-chk=1020/3825)
Mas o que significam os números únicos? Não encontrei uma entrada correspondente na página de manual.
- O primeiro número parece ser a quantidade de dados processados (os bytes reais copiados e os ignorados, porque eles já existiam no local de destino), certo? Parece não ser o número de dados transferidos, porque aumenta mais rapidamente do que a minha conexão à Internet ...
- A porcentagem se refere à quantidade de dados ou ao número de arquivos a serem copiados? Considera arquivos excluídos e arquivos que já estão atualizados no local de destino?
- O tempo na terceira posição parecia uma estimativa de tempo para conclusão, mas quando eu tentei, ele saltou entre algumas horas e alguns segundos. A que se refere e como é calculado?
- O que significam os dois últimos números?
man
página ( OPÇÕES >--progress
)?Respostas:
Significa que:
Além disso, xfr # 495 significa que atualmente o 495º arquivo está sendo transferido, enquanto ir-chk = 1020/3825 indica que, de um total de (até agora) 3825 arquivos digitalizados recursivamente (detectados), até o momento 1020 deles ainda estão para ser verificado / verificado.
Isso significa que, se a verificação detectar, por exemplo, mais 100 arquivos a serem verificados, os dois lados aumentarão em 100 (então será lido ir-chk = 1120/3925 ). Após a verificação de todos os arquivos (detectados pela verificação de recursão incremental), o número no lado direito da barra permanecerá o mesmo até o final de todo o processo, enquanto o número no lado esquerdo da barra começará a diminuir à medida que mais e mais arquivos são verificados (verificados). Além disso, devido ao final da recursão, ir-chk mudará para to-chk, indicando que a verificação de recursão incremental terminou a verificação (operação de detecção de arquivo). Ainda assim, como os arquivos continuarão sendo verificados / verificados até que estejam todos, o número de arquivos ainda a serem verificados / verificados (lado esquerdo da barra) diminuirá até que esse número se torne zero (indicando o final do processo de verificação de arquivos) .
Seja N o número total real de arquivos a serem verificados / verificados, quando todo o processo terminar, você verá:
... o que significa que não há nenhum arquivo a ser verificado / verificado, de um total de N arquivos que foram detectados pela verificação de recursão incremental.
Sobre o ir-chk (da página de manual do rsync):
fonte
--no-inc-recursive
, mas não é disso que estou falando. O tempo de entrada da ETAprogress2
é baseado no total de dados (conhecidos) e no tempo decorrido; não é por arquivo (mas pisca o valor decorrido no tempo de um arquivo para uma marca na conclusão de um único arquivo). Havia um bug envolvendo este em um ponto que faria isso menos clara, embora eu não tenho certeza qual a versão que está emrsync -a --info=progress2 /src /dest
, de fato, me dá tempo total alternado com o ETA global , em vez do ETA por arquivo. Isso é estranho e novo para mim, mas você está certo.file1
-, o rsync mostra o ETA global (atual) global para todo o processo de cópia. Então, quando termina a cópiafile1
, o rsync mostra o tempo decorrido global (atual) e começa a copiar o próximo arquivo - digamosfile2
- -, mostrando assim o ETA global (atual) novamente, até que o processo de cópiafile2
termine e depois o rsync mostra o novo tempo decorrido total (incrementado). É por isso que você vê esses "saltos": é porque você vê um ETA global (total) decrescente alternando com o crescente tempo total (total) decorrido.