XZ Utils

Software screenshot:
XZ Utils
Dettagli del software:
Versione: 5.2.4 Aggiornato
Data di caricamento: 22 Jun 18
Sviluppatore: Lasse Collin & Co
Licenza: Libero
Popolarità: 180

Rating: 3.5/5 (Total Votes: 2)

XZ Utils (xz-utils o semplicemente xz) è un progetto open source e completamente gratuito che fornisce tutte le utility essenziali per lavorare con i tarball XZ su qualsiasi sistema operativo GNU / Linux. Permette di estrarre archivi che finiscono nelle estensioni di file .xz o .lzma, nonché di comprimere file e cartelle con il metodo di compressione XZ, con conseguente archivio .xz, .lzma, tar.xz o tar.lzma.


Uno degli algoritmi di compressione più potenti

XZ è senza dubbio uno degli algoritmi di compressione più potenti al mondo, e funziona su sistemi GNU / Linux. È in grado di creare archivi che sono due o tre volte più piccoli di altri metodi di compressione popolari, come RAR, ZIP, GZ o BZ2. Per essere più precisi, gli archivi XZ sono più piccoli del 15% rispetto ai tarball bzip2 e con il 30% più piccoli dei file gzip.


Cosa c'è nella scatola?

XZ Utils o xz-utils o xz è il nome ufficiale del pacchetto, che può essere facilmente installato su molti sistemi operativi GNU / Linux dai loro repository software predefiniti. Comprende la libreria di compressione liblzma, lo strumento da riga di comando xz e lo strumento di sola decompressione xzdec.

Inoltre, viene fornito con un set di script di shell, tra cui xzgrep, xzegrep, xzfgrep, xzless, xzmore, xzcat, xzcmp e xzdiff, che ti permettono di visualizzare, confrontare e salvare gli archivi XZ, così come i componenti necessari per gestire gli archivi LZMA, che ora sono deprecati da XZ. Il comando XZ include diverse opzioni importanti, tra cui la possibilità di forzare la decompressione e la compressione.


Piattaforme supportate

Il software di compressione dati XZ è ufficialmente supportato su GNU / Linux, GNU / HURD, BSD (FreeBSD, OpenBSD, NetBSD, Dragonfly BSD e MirBSD), MINIX, Solaris, IRIX, AIX, QNX, Mac OS X, Haiku , HP-UX, Tru64, OpenVMS, OpenVOS, IBM OS / 2, DOS (FreeDOS e MS-DOS), nonché Microsoft Windows 95 e versioni successive.

Novità in questa versione:

  • liblzma:
  • Consenti 0 come limite di utilizzo della memoria invece di restituire LZMA_PROG_ERROR. Ora 0 viene trattato come se fosse stato specificato 1 byte, che è effettivamente uguale a 0.
  • Utilizza & quot; noexcept & quot; parola chiave anziché & quot; throw () & quot; nelle intestazioni pubbliche quando viene utilizzato un compilatore C ++ 11 (o uno standard più recente).
  • Aggiunta una correzione della portabilità per i recenti compilatori Intel C
  • I file di build di Microsoft Visual Studio sono stati spostati in windows / vs2013 e windows / vs2017.
  • XZ:
  • Correzione & quot; xz --list --robot missing_or_bad_file.xz & quot; che proverebbe a stampare una stringa unitaria e quindi a produrre output spazzatura. Poiché lo stato di uscita è diverso da zero, la maggior parte degli usi di tale comando non tenterà di interpretare l'output garbage.
  • & quot; xz --list foo.xz & quot; potrebbe stampare & quot; Errore interno (bug) & quot; in un caso in cui era stato impostato uno specifico limite di utilizzo della memoria.

Novità della versione nella versione:

  • XZ:
  • Chiudi sempre un file prima di provare ad eliminarlo per evitare problemi su alcune combinazioni di sistema operativo e file system.
  • Corretta la copia dei timestamp dei file su Windows.
  • Aggiunto il supporto sandbox sperimentale (disabilitato per impostazione predefinita) utilizzando Capsicum (FreeBSD & gt; = 10). Vedi --enable-sandbox in INSTALL.
  • La conformità C99 / C11 si risolve in liblzma. I problemi riguardano le build più semplici che utilizzano ottimizzazioni link-time.
  • Corretti bug nella funzione usata raramente lzma_index_dup ().
  • L'uso del codice SHA-256 esterno è ora disabilitato per impostazione predefinita. Può ancora essere abilitato passando --enable-external-sha256 per la configurazione. I motivi per disabilitarlo di default (vedi INSTALLAZIONE per maggiori dettagli) ...
  • Alcune implementazioni SHA-256 specifiche del sistema operativo sono in conflitto con OpenSSL e causano problemi nei programmi che si collegano sia a liblzma che a libcrypto. Almeno FreeBSD 10 e MINIX 3.3.0 sono interessati.
  • SHA-256 interno è più veloce del codice SHA-256 in alcuni sistemi operativi.
  • Modificato il rilevamento del numero di core della CPU per utilizzare sched_getaffinity () su GNU / Linux e GNU / kFreeBSD.
  • Correzioni al sistema di build e xz per rendere xz buildable anche quando encoder, decodificatori o threading sono stati disabilitati da libilzma usando le opzioni di configurazione. Queste correzioni hanno aggiunto due nuovi #define a config.h: HAVE_ENCODERS e HAVE_DECODERS.

Novità nella versione 5.2.2:

  • Corretti bug nel codice specifico QNX.
  • Omesso l'uso di pipe2 () anche se è disponibile per evitare problemi di portabilità con alcune vecchie combinazioni Linux e glibc.
  • Traduzione in tedesco aggiornata.
  • Aggiunti file di progetto per creare liblzma statico e condiviso (non l'intero XZ Utils) con Visual Studio 2013 aggiornamento 2 o successivo.
  • Documentato che la decompressione con thread non è stata ancora implementata. Una voce NEWS 5.2.0 che descrive il supporto multi-threading aveva erroneamente detto & quot; decompressione & quot; quando avrebbe dovuto dire & quot; compression & quot;.

Novità nella versione 5.2.1:

  • Corretto una regressione del rapporto di compressione in modalità veloce di LZMA1 e LZMA2. Il bug è presente nelle versioni 5.1.4beta e 5.2.0.
  • Risolto un problema di portabilità in xz che riguardava almeno OpenBSD.
  • Corretto xzdiff per essere compatibile con mktemp di FreeBSD che differisce dalla maggior parte delle altre implementazioni di mktemp.
  • Modificato il rilevamento del numero di core della CPU per utilizzare cpuset_getaffinity () su FreeBSD.

Novità nella versione 5.2.0:

  • Tutte le correzioni da 5.0.8
  • liblzma: risolto lzma_stream_encoder_mt_memusage () quando veniva usato un preset.
  • xzdiff: se mktemp non è installato, mkdir sarà usato come fallback per creare una directory temporanea. L'installazione di mktemp è ancora raccomandata.
  • Aggiornate traduzioni francesi, tedesche, italiane, polacche e vietnamite.

Novità della versione nella versione 5.0.7:

  • Tutte le correzioni da 5.0.6
  • liblzma: risolto l'uso dei preset nell'inizializzazione del codificatore thread.
  • xz --block-list e --block-size possono ora essere usati insieme in modalità single-threaded. In precedenza la combinazione funzionava solo in modalità multi-thread.
  • Aggiunto il supporto per LZMA_IGNORE_CHECK a liblzma e reso disponibile in xz come --ignore-check.
  • ottimizzazioni della velocità di liblzma:
  • L'inizializzazione di un nuovo encoder LZMA1 o LZMA2 è stata ottimizzata. (La velocità di reinizializzazione di un encoder già assegnato non è influenzata.) Questo aiuta a comprimere molti buffer di piccole dimensioni con lzma_stream_buffer_encode () e altre situazioni simili in cui uno stato dell'encoder già assegnato non viene riutilizzato. Questa accelerazione è visibile anche in xz se si comprimono molti piccoli file uno alla volta, invece di eseguire xz una volta e assegnare tutti i file come argomenti da riga di comando.
  • I confronti del buffer sono ora molto più rapidi quando è consentito l'accesso non allineato (configurato con --enable-unaligned-access). Ciò accelera significativamente la codifica. Esiste un codice specifico per l'arco per 32 bit e 64 bit x86 (32 bit richiede SSE2 per i migliori risultati e per il momento non è disponibile il rilevamento della CPU in fase di esecuzione). Per gli altri arch vi è solo un codice generico che probabilmente non è ottimale come potrebbero essere le soluzioni specifiche dell'arch.
  • Sono state apportate alcune ottimizzazioni della velocità al codice SHA-256. (Si noti che il codice SHA-256 incorporato non è utilizzato su tutti i sistemi operativi.)
  • liblzma può ora essere creato con MSVC 2013 update 2 o successivo usando windows / config.h.
  • È stata aggiunta la traduzione vietnamita.

Novità della versione nella versione 5.0.6:

  • liblzma: corretto l'uso dei preset nell'inizializzazione del codificatore thread.
  • xz --block-list e --block-size possono ora essere usati insieme in modalità single-threaded. In precedenza la combinazione funzionava solo in modalità multi-thread.
  • Aggiunto il supporto per LZMA_IGNORE_CHECK a liblzma e reso disponibile in xz come --ignore-check.
  • ottimizzazioni della velocità di liblzma:
  • L'inizializzazione di un nuovo encoder LZMA1 o LZMA2 è stata ottimizzata. (La velocità di reinizializzazione di un encoder già assegnato non è influenzata.) Questo aiuta a comprimere molti buffer di piccole dimensioni con lzma_stream_buffer_encode () e altre situazioni simili in cui uno stato dell'encoder già assegnato non viene riutilizzato. Questa accelerazione è visibile anche in xz se si comprimono molti piccoli file uno alla volta, invece di eseguire xz una volta e assegnare tutti i file come argomenti da riga di comando.
  • I confronti del buffer sono ora molto più veloci quando è consentito l'accesso non allineato (configurato con --enable-unaligned-access). Ciò accelera significativamente la codifica. Esiste un codice specifico per l'arco per 32 bit e 64 bit x86 (32 bit richiede SSE2 per i migliori risultati e per il momento non è disponibile il rilevamento della CPU in fase di esecuzione). Per gli altri arch vi è solo un codice generico che probabilmente non è ottimale come potrebbero essere le soluzioni specifiche dell'arch.
  • Sono state apportate alcune ottimizzazioni della velocità al codice SHA-256. (Si noti che il codice SHA-256 incorporato non è utilizzato su tutti i sistemi operativi.)
  • liblzma può ora essere creato con MSVC 2013 update 2 o successivo usando windows / config.h.
  • È stata aggiunta la traduzione vietnamita.

Programmi simili

Commenti a XZ Utils

I commenti non trovato
Aggiungi commento
Accendere le immagini!