Use tar para arquivar automaticamente o arquivo em volumes

1

Qual é o comando para simplesmente arquivar um arquivo em vários volumes com tar. Eu tenho um arquivo chamado file0 , eu quero arquivá-lo com tar para que file0 é dividido em arquivos tar de digamos 10MB. Como posso simplesmente fazer isso? A GUI do Ubuntu tem a opção "Split" (para tar) em cinza.

    
por Henry 15.08.2016 / 10:44

1 resposta

1

Uma maneira simples é apenas tar o arquivo, imprimir o arquivo na saída padrão e passá-lo por divisão:

tar czpf - file0 | split -d -b 10M - file0

Note que isso não é bem o que você tentou. O comando que você tem em seu comentário ( tar czpf - . | split -d -b 10M - file0 ) estava usando . como entrada. Isso significa que o "arquivo" de entrada para tar , o diretório atual, foi alterado assim que split começou a gravar seus arquivos de saída no diretório atual, portanto, tar reclamou. Para evitar isso, forneça tar do nome do arquivo, como eu fiz acima, ou execute isso em outro diretório:

cd /some/place
tar czpf - /path/to/dir/containing/file0 | split -d -b 10M - file0

Em ambos os casos, para descompactar o arquivo, você terá que catar os arquivos para se juntar a eles:

cat file00* | tar xzvf -
    
por terdon 15.08.2016 / 11:11