O mbuffer é uma ferramenta pequena e prática que pode ajudá-lo a maintain sustained data flow to the tape drive
. Está disponível na maioria das distribuições de linux.
mbuffer - buffers I/O operations and displays the throughput rate. It is multi-threaded, supports network connections, and offers more options than the standard buffer.
Exemplo de uso com compactação multithread on-the-fly:
tar cvf - /backupdir | lbzip2 | mbuffer -m 4G -L -P 80 > /dev/st0
- comece a adicionar arquivos ao arquivo de arquivos tar
- (opcional) compactá-lo com lbzip2 para usar todos os núcleos da CPU
- começar a preencher o buffer de memória
- depois de preenchido em 80%, comece a enviar dados para a unidade de fita
Parâmetros
mbuffer explicados:
-
-m 4
4GB de tamanho do buffer de memória. Se necessário ou disponível, use um buffer maior.
-
-L
bloqueado na memória (opcional)
-
-P 80
começa a gravar na fita depois que 80% do buffer é preenchido.
Não há necessidade de colocar 100, já que levará algum tempo para que uma unidade de fita comece a escrever e, provavelmente, ela será preenchida até 100%.
Neste exemplo, uma vez que o buffer preencha até 80% da capacidade, ele começará a enviar dados para a fita e o mbuffer continuará a receber o fluxo de archive.
Se o processo de arquivamento for lento e o mbuffer não tiver recebido os dados com rapidez suficiente para acompanhar a unidade de fita, ele deixará de enviar dados para a unidade de fita quando atingir 0%. Quando o buffer de memória estiver cheio até 80%, ele começará a enviar dados para a unidade de fita e a gravação continuará a toda velocidade.
Desta forma, o "engraxamento" da fita é reduzido a um mínimo e a unidade de fita sempre obterá os dados na velocidade máxima necessária para sustentar o fluxo.
Você também pode usar o mbuffer na direção reversa para ler dados de backup de uma unidade de fita e armazenar o fluxo em alguma mídia mais lenta ou enviá-lo pela rede.