Não, você não pode. Pelo menos não diretamente.
tar
não faz nenhuma compactação. Ele meramente lê parte do sistema de arquivos (virtual) e gera um fluxo coeso a partir dele. Em geral, esse fluxo é passado para uma ferramenta / biblioteca de compactação, por exemplo, gzip
/ libz. A parte de compactação não vê nem sabe sobre arquivos individuais. Apenas comprime o fluxo gerado por tar
. Portanto, você não pode adicionar compactação seletiva à sua abordagem atual.
O que você pode fazer é incrementalmente construir o arquivo tar, compactando cada arquivo individualmente e, em seguida, adicionando-o ao arquivo tar. Ao fazer isso, você pode optar por adicionar (por exemplo) imagens iso descompactadas ao arquivo. Note, no entanto, que o próprio arquivo tar não será comprimido. Consequentemente, depois de descompactar, você também teria que descompactar cada arquivo individualmente, onde for apropriado.
Quanto tempo você realmente perde ao compactar isos e arquivos zip? Vendo como tar | pigz > <file>
é o processamento de fluxo, eu acho que você não está perdendo tanto tempo. Existem blocos gravados em disco, enquanto os próximos blocos estão sendo compactados, enquanto o fluxo está sendo construído. Está acontecendo em paralelo.
Talvez você possa otimizar sua estratégia:
Você pode colocar todos os arquivos iso e zip em diretórios dedicados e, em seguida, construir seu arquivo em três etapas: tar & compactar o restante, adicionar diretório iso, adicionar diretório zip. O arquivo resultante ainda precisa de um procedimento de extração demorado para descompactar o arquivo externo e, em seguida, descompactar e descompactar o arquivo interno. No entanto, isso é mais viável do que descompactar todos os arquivos individuais.
Ou você ajusta os comandos: Ele precisa ser um arquivo tar de um sistema de arquivos ou você poderia usar dd
para fazer o backup de toda a partição? O backup de toda a partição tem a vantagem de leituras contínuas do (s) disco (s), o que pode ser mais rápido do que trabalhar com o sistema de arquivos. Tenho certeza de que você pode ajustar pigz
para trabalhar com blocos maiores, o que deve lhe dar uma aceleração, se os arquivos iso e zip forem o seu problema. Além disso, você pode adicionar algum armazenamento em buffer (por exemplo, mbuffer
) antes de gravar o resultado no disco para otimizar ainda mais o acesso à mídia.