So komprimieren Sie Archive mit allen CPU-Kernen mit Tar

Cum se comprimă arhivele folosind toate nucleele procesorului cu Tar
⏱️ 6 min read

Wenn Sie jemals große Volumes mit komprimieren mussten tarSie werden wissen, wie schmerzhaft es sein kann. Es geht oft sehr langsam und Sie finden sich schlagen Strg + C. um die Aufgabe zu beenden und sie einfach zu vergessen. Es gibt jedoch einige andere Tools, die tar verwenden kann, und sie sind eine großartige Möglichkeit, die heutigen Multithread-CPUs zu nutzen und die Teerarchivierung zu beschleunigen. Dieser Artikel zeigt Ihnen, wie Sie tar dazu bringen, alle Kerne beim Komprimieren von Archiven unter Linux zu verwenden.

Grundlegendes zu und Installieren der Tools

Die drei hier in Frage kommenden Hauptwerkzeuge sind pigz, pbzip2 und pxz. Es gibt einige subtile Unterschiede zwischen den Werkzeugen, aber die Unterschiede liegen zwischen gzip, bzip2 und xz. In dieser jeweiligen Reihenfolge erhöhen sich die Komprimierungsstufen, was bedeutet, dass ein mit gzip komprimiertes Archiv größer ist als ein mit xz komprimiertes Archiv, aber gzip benötigt natürlich weniger Zeit als xz. bzip2 ist irgendwo in der Mitte.

Das “p”, mit dem die Namen der einzelnen Tools beginnen, bedeutet “parallel”. Parallelisierung ist etwas, das im Laufe der Jahre immer relevanter geworden ist – wie gut sich etwas über alle CPU-Kerne erstreckt. Bei CPUs wie den Epyc- und Threadripper-Leitungen von AMD, die 64 Kerne und 128 Threads erreichen können, ist es wichtig zu verstehen, welche Anwendungen dies nutzen können. Diese Komprimierungsfunktionen sind Hauptkandidaten.

Um die Tools zu installieren, können Sie sich einfach an Ihre Repos wenden.

Dieser Artikel konzentriert sich aus Gründen der Konsistenz auf pxz. Sie können dieses Tutorial für pigz lesen.

Archiv mit Teer komprimieren

Die Syntax von tar ist ziemlich einfach. Um ein Verzeichnis einfach zu komprimieren, können Sie einen Befehl wie den folgenden verwenden:

Der erste verwendet gzip, der zweite bzip2 und der dritte xz. Der Dateiname und das Verzeichnis variieren je nachdem, was Sie tun, aber ich habe den Linux-Kernel von GitHub in mein Verzeichnis “/ home” gezogen und werde ihn verwenden. Also werde ich weitermachen und diesen Befehl mit dem starten time Befehl an der Vorderseite, um zu sehen, wie lange es dauert. Sie können auch sehen, dass xz den höchsten Prozentsatz meiner CPU auf diesem System beansprucht, aber nur einen Kern auf 100 Prozent fixiert.

Teer Alle Kerne Teer Xz
Teer alle Kerne Htop 1

Und wie Sie sehen, hat es sehr lange gedauert, bis mein alternder i7-2600 Linux 5.10-rc3 komprimiert hat (ungefähr 28 Minuten).

Teer alle Kerne Xz Zeit

Hier bieten sich diese parallelen Komprimierungswerkzeuge an. Wenn Sie eine große Datei komprimieren und sie schneller erledigen möchten, kann ich diese Tools nicht genug empfehlen.

Verwenden paralleler Komprimierungswerkzeuge mit Teer

Sie können tar entweder anweisen, ein Komprimierungsprogramm mit dem zu verwenden --use-compression-program Option, oder Sie können ein etwas einfacheres Befehlsflag von verwenden -I. Ein Beispiel für die Syntax eines dieser Tools lautet wie folgt:

Lassen Sie es uns testen und sehen, wie lange mein System benötigt, um den Linux-Kernel mit Zugriff auf alle acht Threads meiner CPU zu komprimieren. Du kannst meine sehen htop Anzeige, die alle Threads anzeigt, die aufgrund von pxz zu 100 Prozent ausgelastet sind.

Teer Alle Kerne Teer Pxz
Teer alle Kerne Htop 2

Sie können sehen, dass das Komprimieren dieses Archivs wesentlich weniger Zeit in Anspruch nahm (ungefähr sieben Minuten!), Und das mit Multitasking. Ich habe eine virtuelle Maschine im Hintergrund und surfe gerade im Internet. Der Linux Kernel Hardware Scheduler gibt Ihnen das, was Sie für Ihre persönlichen Sachen benötigen. Wenn Sie also Ihre verlassen haben pxz Wenn Sie den Befehl ausführen, ohne dass andere Dinge auf Ihrem System ausgeführt werden, können Sie ihn möglicherweise schneller ausführen.

Teer alle Kerne Pxz Zeit

Anpassen der Komprimierungsstufen mit pigz, pbzip2 und pxz

Sie können pxz auch Komprimierungsstufen übergeben, um die Datei noch kleiner zu machen. Dies erfordert mehr RAM, CPU und Zeit, aber es lohnt sich, wenn Sie wirklich eine kleine Datei benötigen. Hier ist ein Vergleich der beiden Befehle und ihrer Ergebnisse nebeneinander.

Teer Alle Kerne Teer Pxz 9
Teer alle Kerne Pxz 9 Zeit
Vergleich der Kompression aller Teerkerne

Die Komprimierung ist nicht viel größer und die Zeit ist es nicht unbedingt wert, aber wenn jedes Megabyte zählt, ist es immer noch eine großartige Option.

Ich hoffe, Ihnen hat dieser Leitfaden zur Verwendung aller Kerne zum Komprimieren von Archiven mit tar gefallen. Schauen Sie sich auch einige unserer anderen Linux-Inhalte an, z. B. wie man einen neuen PC für Linux baut, Apt beherrscht und ein Apt-Guru wird und wie man Arch Linux auf einem Raspberry Pi installiert.

Verbunden:

Join our Newsletter and receive offers and updates! ✅

0 0 votes
Article Rating
Avatar of Routech

Routech

Routech is a website that provides technology news, reviews and tips. It covers a wide range of topics including smartphones, laptops, tablets, gaming, gadgets, software, internet and more. The website is updated daily with new articles and videos, and also has a forum where users can discuss technology-related topics.

Das könnte dich auch interessieren …

Abonnieren
Benachrichtige mich bei
guest
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x