Linux: zip supérieur à 4 Go

11

Je reçois une erreur lorsque j'essaie de compresser un gros fichier sous Linux car il est trop volumineux pour que zip puisse y faire face. Quelqu'un sait quelles commandes je peux utiliser pour contourner ce problème?

Voici l'erreur que j'obtiens:

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

Il s'agit d'un simple fichier texte, fichier journal en fait.

Matt Rogers
la source
3
utilisez tar + gzip à la place.
moonshadow
1
Il suffit de diviser le fichier en morceaux de 1 Go et de les compresser. Ou utilisez un algorithme de compression moderne, vous n'avez pas besoin d'un format d'archive dans votre cas.

Réponses:

7

utilisez la commande linux split pour couper votre fichier journal en fichiers plus petits.

et envisagez de configurer la rotation du journal afin que cela ne se reproduise plus.

David Chan
la source
2
Il suffit d'ajouter cela pour aider les autres utilisateurs s'ils le recherchent. J'ai utilisé cette commande pour diviser le fichier en tranches de 1 Go: diviser -b 1024m access_log2 access_log_
Matt Rogers
15

Le format Zip de base a une limite de 4 Go par fichier. Vous devez mettre à niveau votre zipoutil vers un qui prend en charge Zip64:

$ zip -v
Copyright (c) 1990-2008 Info-ZIP - Tapez 'zip "-L"' pour la licence du logiciel.
Il s'agit de Zip 3.0 (5 juillet 2008), par Info-ZIP.
...

Options de compilation spéciales Zip:
        ...
        ZIP64_SUPPORT (utilisez Zip64 pour stocker de gros fichiers dans des archives)

Vous pouvez également utiliser un format d'archive différent tel que 7z ou tar .

user1686
la source