Linux: zip maggiore di 4Gb


11

Ricevo un errore quando provo a comprimere un file di grandi dimensioni su Linux perché è troppo grande per essere gestito da zip. Qualcuno sa quali comandi posso usare per aggirare questo?

Questo è l'errore che sto ricevendo:

zip error: Entry too big to split, read, or write (file exceeds Zip's 4GB uncompressed size limit)

È un semplice file di testo, in effetti il ​​file di registro.


3
usa invece tar + gzip.
Moonshadow il

1
Basta dividere il file in blocchi da 1GiB e comprimere quelli. Oppure utilizza un moderno algoritmo di compressione, non è necessario un formato di archivio nel tuo caso.

Risposte:


7

usa il comando split di linux per tagliare il tuo file di log in file più piccoli.

e considera l'impostazione di ruotare il registro in modo che ciò non accada di nuovo.


2
Basta aggiungere questo per supportare gli altri utenti se lo cercano. Ho usato questo comando per dividere il file in sezioni da 1 GB: split -b 1024m access_log2 access_log_
Matt Rogers

15

Il formato Zip di base ha un limite di 4 GB per file. Devi aggiornare il tuo zipstrumento a uno che supporti Zip64:

$ zip -v
Copyright (c) 1990-2008 Info-ZIP - Digitare 'zip "-L"' per la licenza software.
Questo è Zip 3.0 (5 luglio 2008), di Info-ZIP.
...

Zip speciali opzioni di compilazione:
        ...
        ZIP64_SUPPORT (utilizzare Zip64 per archiviare file di grandi dimensioni negli archivi)

In alternativa, utilizzare un formato di archivio diverso come 7z o tar .

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.