Todas as implementações de alcatrão, exceto star
, têm problemas de desempenho que são resolvidos pelo FIFO
que é integrado à estrela desde 1990.
A Star, por padrão, cria um FIFO de 8MB que ajuda a melhorar o desempenho, pois o star também se baseia em dois processos. Um processo lê o arquivo e o outro processo executa a tarefa de extração tar
. Se você estiver em um sistema operacional moderno e usar um dispositivo de fita moderno, recomendo especificar um tamanho maior de FIFO até metade da memória física da máquina. Veja a opção star fs=
. Com unidades de fita modernas, eu recomendo fs=256M
ou mais. Isso reduz drasticamente os problemas comuns de desgaste de fita do reposicionamento da fita quando um modo de fita de fluxo contínuo não é possível.
Se você estiver usando dispositivos de fita reais, será necessário aumentar o tamanho do bloco no momento da criação. Observe que, para portabilidade de fitas, você não deve usar um tamanho de bloco > 6kB. Se o seu sistema operacional local e a sua unidade suportar tamanhos de bloco maiores (e não apenas um tamanho FIFO aumentado), use valores maiores (consulte man page star).
Observe que, se você estiver usando sistemas de arquivos Copy on Write como ZFS ou se estiver em um SO com uma implementação de buffer de sistema de arquivos lenta (como o Linux), talvez queira alternar star
para insecure mode
disponível apenas com gtar
. Faça isso adicionando -no-fsync
. No Solaris e ufs
, o modo seguro padrão de estrela reduz o desempenho em menos de 10%, no ZFS e na lenta implementação do buffer Linux, esse modo seguro reduz o desempenho em 400%.