Progresso e tempo estimado para escrever sem e comsync
Não encontrei nenhuma ferramenta (ou método direto) que inclua a liberação dos buffers ao mostrar o progresso e estimar o tempo estimado para todo o processo de gravação, ETA (Estimated Time of Arrival).
pv
pode mostrar o tempo para o progresso visto pelo sistema operacional, mas se a unidade de destino estiver lenta e houver muita RAM, ele mostrará apenas o tempo até que os dados sejam gravados em um buffer. Este tempo pode ser uma pequena fração do tempo real até que os buffers sejam liberados.dd
escreve um relatório final sobre a quantidade de dados usados, tempo e taxa de transferência. Também pode ser feito para escrever relatórios de 'progresso'. Costumava dar uma estimativa muito melhor do quepv
, mas hoje em dia os drives USB e os cartões de memória ainda são muito lentos, enquanto os outros processos são rápidos e a memória disponÃvel para buffers é grande. Portantodd
, também terminará muito antes de os buffers serem liberados.Eu posso 'tempo' do processo de gravação, inclusive
sync
com otime
comandotime ( write command; sync )
e me dará o tempo real usado que é útil, mas somente depois de terminado. Não mostra o progresso e não estima o tempo total restante.
Posso executar
iotop
para mostrar os processos de leitura e gravação e a rapidez com que as coisas são lidas e gravadas, mas não estima o tempo restante.
Como mostrar o progresso e o tempo estimado para todo o processo de gravação?
Como posso mostrar o progresso e o tempo estimado para todo o processo de gravação, ETA (Estimated Time of Arrival), incluindo a liberação dos buffers com sync
?
Shellscript
Parabéns ao @LinuxSecurityFreak pelo conselho de usar a quantidade de dados 'Dirty' relatados em
/proc/meminfo
.Eu fiz o seguinte shellscript
flusher
. Ele mostra o progresso e o tempo estimado para liberar os buffers. Ele pode ser usado, por exemplo, após a clonagem de um arquivo iso para uma unidade USB ou cartão de memória para criar uma unidade ao vivo com um sistema operacional linux.Exemplos de demonstração
Clonagem para uma unidade lenta (USB 2)
SaÃda de
flusher
:Clonagem para uma unidade rápida (eSATA)
SaÃda de
flusher
:Editar:
Existe uma versão atualizada de
flusher
, chamadawatch-flush
, na versão atual em mkusb . Ele pode ser usado separadamente de uma janela própria através do seguinte alias,