Wie man Pacman -Updates in Arch Linux rollt

Wie man Pacman -Updates in Arch Linux rollt

Arch Linux wird häufig für die Software und das Rolling -Release -Modell der Blutungskante gelobt. Wir diskutieren diese Merkmale in unserem Artikel, in dem Arch Linux und Manjaro verglichen werden. Zusätzlich zu diesem Lob hat Arch Linux auch den Ruf, instabil zu sein. Dieser Ruf ergibt sich aus der manchmal unvorhersehbaren Natur der Blutungs -Edge -Software. Die neueste Software von Upstream -Entwicklern kann Fehler enthalten, die während des ersten Tests nicht erkennbar waren. Infolgedessen ist das Risiko immer vorhanden, wenn die Aktualisierung mit dem Paketmanager aktualisiert wird, Pacman, kann unerwartete Ergebnisse führen. Diese können eine bestimmte Software umfassen, die nicht mehr ordnungsgemäß (oder überhaupt) funktioniert, oder sogar mehrere Anwendungen oder Desktop -Umgebungen, die nicht mehr wie erwartet funktionieren.

Sichern Sie Ihr GNU/Linux -System regelmäßig, ist der beste Schutz, um die Kopfschmerzen zu mildern, die dies verursachen kann. Es gibt keinen Mangel an Backup -Lösungen für Linux. Einige der Backup -Optionen umfassen DD, Backuppc, RSYNC, FSArchiver, RSNAPShot. Wenn Sie eine regelmäßige Backup -Lösung haben, kann es beruhigend sein zu wissen, dass Sie von einem Backup wiederherstellen können, falls a Pacman Update verursachte Probleme, aber es wäre ideal, wenn Sie nicht müssten. In diesem Artikel zeigen wir Ihnen, wie Sie sich zurückrollen können Pacman Aktualisierungen in Arch Linux. Es gibt zwei Möglichkeiten, dies zu erreichen. Ein Weg ist über die Pacman Cache; der andere ist die Verwendung der Verwendung der Arch Linux Archiv. Wir werden beide Methoden diskutieren.

In diesem Tutorial lernen Sie:

  • So rollen Sie Arch -Linux -Updates mit dem Pacman -Cache Rollback -Updates
  • So Rollback -Arch -Linux -Updates mit dem Arch -Linux -Archiv rollen
Wie man Pacman -Updates in Arch Linux rollt

Softwareanforderungen und Konventionen verwendet

Softwareanforderungen und Linux -Befehlszeilenkonventionen
Kategorie Anforderungen, Konventionen oder Softwareversion verwendet
System Arch Linux
Software Pacman
Andere Privilegierter Zugriff auf Ihr Linux -System als Root oder über die sudo Befehl.
Konventionen # - Erfordert, dass die angegebenen Linux -Befehle mit Root -Berechtigungen entweder direkt als Stammbenutzer oder mithilfe von verwendet werden können sudo Befehl
$ - Erfordert, dass gegebene Linux -Befehle als regelmäßiger nicht privilegierter Benutzer ausgeführt werden müssen

So rollen Sie Arch -Linux -Updates mit dem Pacman -Cache Rollback -Updates

Jedes Mal, wenn Sie ein Paket installieren oder aktualisieren Pacman speichert dieses Paket in /var/cache/pacman/pkg/. Pacman ermöglicht es Ihnen auch, ein Paket über die manuell zu aktualisieren -U Flagge. Wie sich herausstellt, kann diese Upgrade -Methode auch zur Installation einer älteren Version des Pakets verwendet werden, wodurch das Paket effektiv herabstuft.

Herabstufung eines einzelnen Pakets

Angenommen, Sie haben Ihr System gerade über die aktualisiert $ sudo pacman -Syu Befehl und dann öffnen Sie sich Feuerfuchs Um im Internet zu durchsuchen, nur um zu erkennen, dass es jetzt abstürzt, während es noch nie zuvor hatte. Sie können problemlos herabstufen Feuerfuchs In der vorherigen Version, die Sie mit dem Pacman -Cache installiert hatten.

Untersuchen Sie zunächst die Feuerfuchs Pakete aufgeführt in /var/cache/pacman/pkg/

$ ls/var/cache/pacman/pkg/Firefox* 

Sie sollten die neueste Version sehen, auf die Sie gerade aktualisiert wurden, und alle früheren Versionen, die Sie installiert hatten. In unserem Beispiel ist dies die Ausgabe, die wir erhalten.

/var/cache/pacman/pkg/Firefox-81.0.1-1-X86_64.pkg.Teer.ZST/VAR/Cache/Pacman/PKG/Firefox-83.0-2-X86_64.pkg.Teer.ZST 

Wir wissen, dass wir von der Version aktualisiert wurden 81.0.1-1 Zu 83.0-2 und vermuten, dass es möglicherweise ein Problem verursacht hat. Um diese Theorie zu testen, rollen Sie einfach in die Version zurück 81.0.1-1 Verwenden des Pacman -Cache mit dem folgenden Befehl.

$ sudo pacman -u/var/cache/pacman/pkg/Firefox -81.0.1-1-X86_64.pkg.Teer.ZST 


Sie sehen die folgende Ausgabe.

Pakete laden… Warnung: Downgrading Package Firefox (83.0-2 => 81.0.1-1) Auflösen von Abhängigkeiten… nach widersprüchlichen Paketen suchen… Pakete (1) Firefox-81.0.1-1 Gesamtgröße installiert: 206.76 MIB NET -Upgradegröße: -0.13 MIB :: Fahren Sie mit der Installation fort? [Y/n] 

Sobald Sie tippen y Um fortzufahren, erhalten Sie die zuvor installierte Version von Feuerfuchs installiert und kann es öffnen, um festzustellen, ob das Problem behoben wurde.

Herabstufung mehrerer Pakete

Mit dem Pacman -Cache können Sie mehrere Pakete herabstufen, indem Sie sie als separate Argumente vorlegen Pacman -U.
Zum Beispiel

$ sudo pacman -u/var/cache/pacman/pkg/Firefox -81.0.1-1-X86_64.pkg.Teer.ZST/VAR/Cache/Pacman/PKG/ALSA-LIB-1.2.3.2-1-X86_64.pkg.Teer.ZST/var/cache/pacman/pkg/adwaita-icon-theem-3.38.0-1-any.pkg.Teer.ZST 

Bei der Herabstufung mehrerer Pakete kann es vorteilhaft sein, sich zum Umzug in die /var/cache/pacman/pkg Verzeichnis, damit Sie nicht den vollständigen Pfad jedes Pakets eingeben müssen, das Sie herabstufen möchten.

$ cd/var/cache/pacman/pkg $ sudo pacman -U Firefox -81.0.1-1-X86_64.pkg.Teer.Zst alsa-lib-1.2.3.2-1-X86_64.pkg.Teer.Zst Adwaita-Icon-Teme-3.38.0-1-any.pkg.Teer.ZST 

Höchstwahrscheinlich glauben Sie, dass die Herabstufung einer großen Anzahl von Paketen auf diese Weise gelinde gesagt wäre. Möglicherweise befinden Sie sich in Situationen, in denen Sie vermuten, dass 20 verschiedene Pakete möglicherweise ein Problem verursachen könnten, oder Sie haben keine Ahnung, welche Pakete ein Problem verursachen, und Sie möchten alle herabstufen. Diese Szenarien sind möglicherweise besser für die Verwendung des Arch Linux Archiv, Bevor wir dadurch diskutieren, sollten wir einige Beispiele für Situationen untersuchen, in denen wir eine Lösung für die Verwendung der verwenden konnten Pacman Cache Zu diesem Zweck, ohne jeden Paketnamen manuell eingeben zu müssen.

Herabstufung mehrerer verwandter Pakete mit einem ähnlichen Namensschema

Angenommen, Sie haben gerade Ihre Maschine mit Strom versorgt, nachdem Sie sie für ein paar Wochen nicht verwendet haben. Sie aktualisieren Ihr System über die $ sudo pacman -Syu Der Befehl und Sie bemerken, dass alle Ihre QT -basierten Anwendungen nicht korrekt funktionieren, aber alle anderen Apps sind. Weil viele der grundlegenden QT -Pakete und Bibliotheken haben Qt Im Dateinamen und es ist sehr unwahrscheinlich, dass Nicht-QT-Pakete dies im Dateinamen haben. Es ist möglich, nur die QT-Updates vom letzten System-Upgrade zu rollen.

Wann immer Sie ein Update verwenden, Pacman Eine Aufzeichnung von genau dem, was Sie aktualisiert haben und wann innehielt /var/log/pacman.Protokoll. Eine Beispielzeile folgt unten.

[2020-11-30T05: 39: 16-0500] [ALPM] Aktualisierte QT5-XMLpattern (5.15.1-1 -> 5.15.2-1) 


Wir können dieses Protokoll verwenden, um uns dabei zu helfen, nur die QT -Pakete systematisch herunterzustufen Pacman.Protokoll Diese zeigen Pakete, die QT im Dateinamen enthalten, die heute aktualisiert wurden und eine Textmanipulation ausführen und sie dann als Argumente für Pacman -U in a for Loop. Das folgende Beispiel wird davon ausgegangen, dass das aktuelle Datum der 30. November 2020 ist. Passen Sie das Datum entsprechend an, wenn Sie ihn verwenden möchten.

$ grep -a qt/var/log/pacman.Protokoll | GREP 2020-11-30> /TMP /QTUPDATES.txt $ awk 'print $ 4' /tmp /qtupdates.txt> /tmp /line1; awk 'print $ 5' /tmp /qtupdates.txt | sed 's/(/ -/g'>/tmp/line2 $ paste/tmp/line1/tmp/line2>/tmp/line $ tr -d "[: leer:]"/tmp/pakete $ cd/var/ Cache/Pacman/PKG/$ für i in $ (cat/tmp/pakete); tun sudo pacman -noconfirm -U "$ i"*; 

Herabstufung aller aktualisierten Pakete

Angenommen, Sie haben gerade Ihre Maschine mit Strom versorgt, nachdem Sie sie für ein paar Wochen nicht verwendet haben. Sie aktualisieren Ihr System über die $ sudo pacman -Syu Befehl und dann bemerken Sie, dass sich Ihr gesamtes System ungewöhnlich langsam anfühlt. Sie haben keine Ahne.

Dies erfordert eigentlich keinen Aufwand als das vorherige Beispiel. Sie führen dieselben Schritte aus, außer dass Sie die verwenden Pacman.Protokoll Datei, um die Namen von allen Paketen abzuholen, die heute aktualisiert wurden, nicht nur solche, die zu einem bestimmten Namensschema passen. Dies funktioniert für eine beliebige Anzahl von Paketen, die im Wesentlichen als großer Rückgängigschalttaste fungieren Pacman. Das folgende Beispiel wird davon ausgegangen, dass das aktuelle Datum der 30. November 2020 ist. Passen Sie das Datum entsprechend an, wenn Sie ihn verwenden möchten.

$ grep -a upgrade/var/log/pacman.Protokoll | GREP 2020-11-30> /TMP /LastUpdates.txt $ awk 'print $ 4' /tmp /lastUpdates.txt> /tmp /line1; awk 'print $ 5' /tmp /lastUpdates.txt | sed 's/(/ -/g'>/tmp/line2 $ paste/tmp/line1/tmp/line2>/tmp/line $ tr -d "[: leer:]"/tmp/pakete $ cd/var/ Cache/Pacman/PKG/$ für i in $ (cat/tmp/pakete); tun sudo pacman -noconfirm -U "$ i"*; 

So Rollback -Arch -Linux -Updates mit dem Arch -Linux -Archiv rollen

Das Arch Linux -Archiv ist ein offizielles Archiv, das Schnappschüsse früherer Versionen von Paketen enthält. Diese werden im Verzeichnis der Pakete der Website gespeichert. Die Nutzung der Verwendung von zwei potenziellen Vorteilen Arch Linux Archiv über dem Pacman Cache. Zuerst die Pacman Cache Nimmt Platz für Ihren lokalen Speicherplatz ein. Infolgedessen werden einige Leute sich dafür entscheiden, ihren Cache regelmäßig zu klären. Zweitens stellt das Archiv alle früheren Versionen eines Pakets zur Verfügung, nicht nur die, die Sie zuvor installiert hatten.

Herabstufung eines einzelnen Pakets

Um ein Paket in eine frühere Version herabzustufen, finden Sie es zuerst im Archiv und verwenden Sie dann Pacman Um diese spezifische Version herabzustufen. Wenn wir unser vorheriges Beispiel für das Herunterfahren erneut untersuchen Feuerfuchs, Wir sind nicht mehr auf die Herabstufung von der Version beschränkt 83.0-2 Zu 81.0.1-1. Wie Sie aus dem Firefox -Archiv sehen können, haben wir auch die Möglichkeit, die folgenden Zwischenversionen herabzustufen: 81.0.2-1, 82.0-1, 82.0.2-1, 82.0.3-1, 83.0-1.

Heruntergrade auf Feuerfuchs Ausführung 83.0-1 Verwendung der Arch Linux Archiv Geben Sie den folgenden Befehl ein.

$ sudo pacman -u https: // Archiv.Archlinux.org/pakete/f/Firefox/Firefox-83.0-1-X86_64.pkg.Teer.ZST 


Downgrade alle Pakete auf ein früheres Datum herab

Eine weitere Option, die Sie bei der Verwendung der verfügbaren Optionen zur Verfügung haben Arch Linux Archiv soll alle Pakete in Ihrem System in die "aktuelle" Version wiederherstellen, die in den Repositorys zu einem bestimmten Zeitpunkt vorhanden war. Dies kann nützlich sein, wenn Sie jetzt Probleme mit Ihrem Arch -System stoßen, aber Sie erinnern sich, dass Sie vor einigen Wochen diese Probleme nicht hatten. Im folgenden Beispiel werden wir alle Pakete auf den 10. November 2020 herabstufen.
Um die Pakete herabzustufen, müssen wir Pacman wissen lassen, dass wir das Archiv -Repo durch Bearbeiten verwenden möchten /etc/pacman.D/MirrorList.
Bevor Sie Änderungen an der Datei vornehmen, wird empfohlen, sie zu sichern, damit wir problemlos zum Strom zurückkehren können MirrorList Datei, wenn wir möchten.

$ sudo cp /etc /pacman.D/MirrorList ,.Bak 

Bearbeiten Sie als nächstes Ihre /etc/pacman.D/MirrorList Datei mit Ihrem Editor Ihrer Wahl:

$ sudo vim /etc /pacman.D/MirrorList 

und ändern Sie den Inhalt in Folgendes.

### Arch Linux Repository MirrorList ### zum Downgrade auf den 10. November 2020 Server = https: // Archiv erstellt.Archlinux.org/repos/2020/10/11/$ repo/os/$ arch 

Um jetzt die Downgrade der Pakete abzuschließen, geben Sie den folgenden Befehl ein.

$ sudo pacman -yyuu 

Abschluss

In diesem Artikel haben wir zwei Methoden zur Rollback- oder Downgrade -Pakete in Arch Linux untersucht, die Pacman Cache und das Arch Linux Archiv. Sie sind beide mächtige Methoden, die ihre eigenen Vorteile haben. Lassen Sie uns kurz über diese Vorteile nachdenken, wenn wir diesen Artikel abschließen.

Der Hauptvorteil der Verwendung der Pacman Cache ist, dass keine Internetverbindung oder Herunterladen von Paketen erforderlich ist, da es lokal gespeichert ist. Infolgedessen ist der Herabstufungsprozess schneller. Ein weiterer Vorteil ist, dass die Pacman Cache Enthält Versionen von Paketen, die Sie zuvor in Ihrem System installiert haben. Daher haben Sie höchstwahrscheinlich eine Vorstellung davon, wie gut sie funktionierten. Ein dritter Vorteil besteht darin, dass Sie mehrere Pakete herabstufen können, ohne Konfigurationsdateien bearbeiten zu müssen.

Der Hauptvorteil der Verwendung der Arch Linux Archiv ist, dass Sie auf jede Version eines Pakets herabstufen können, unabhängig davon, ob Sie es zuvor jemals installiert hatten. Ein weiterer Vorteil besteht darin, dass es keinen lokalen Speicher aufnimmt. Wenn Sie also einen geringen Speicher haben und Ihren Pacman -Cache löschen möchten, wissen Sie, dass es eine weitere praktikable Option zum Herunterfahren gibt. Ein dritter Vorteil besteht.

Verwandte Linux -Tutorials:

  • Dinge zu installieren auf Ubuntu 20.04
  • Manjaro Linux Installation
  • Manjaro Linux -Anfängerhandbuch
  • Beste Linux -Distribution für Entwickler
  • Manjaro Linux Windows 10 Dual Start
  • Manjaro Linux gegen Arch Linux
  • Hinzufügen von Blutungskanten -Repo zu Kali Linux
  • So aktualisieren und aktualisieren Sie Manjaro Linux
  • Erstellen Sie Manjaro Linux bootable USB
  • Installieren Sie Manjaro in VirtualBox