it-swarm.com.de

Wie kann ich alle Updates entfernen, die nach einem bestimmten Datum installiert wurden?

Ich habe dem Update-Manager die Installation von 200 Mib-Updates gestattet, und ich denke, dass dieses Update meinen Grafiktreiber auf ein Problem stößt. Ich brauche also eine Möglichkeit, um die seit dem 30. Mai 12 installierten Updates (oder ein anderes Datum) zu entfernen. Wenn ich sie manuell entfernen muss (im Fall der Deinstallation nacheinander), werden Sie gebeten, mir die entsprechenden Anweisungen zu geben.

12
creative

Es gibt eine alternative Befehlszeilenmethode zum Abrufen des Installationsverlaufs.

Der Paketmanager apt scheint alles in /var/log/apt/history.log und /var/log/apt/term.log zu protokollieren, einschließlich der Trennung von allem durch Datenstempel. Beide enthalten ähnliche, verwendbare Informationen, aber term.log ist ausführlicher und gibt nicht explizit an, was den Vorgang ausgelöst hat.

Verlaufsprotokoll

/var/log/apt/history.log speichert eine kurze Zusammenfassung jedes apt Laufs. Hier ist ein Ausschnitt von mir für eine manuelle Installation:

Start-Date: 2014-08-22  17:17:52
Commandline: apt-get install nautilus-dropbox
Install: nautilus-dropbox:AMD64 (1.6.1-1), python-gpgme:AMD64 (0.3-0ubuntu3, automatic)
End-Date: 2014-08-22  17:19:13

Das Feld Commandline: gibt an, was den Lauf ausgelöst hat. Bei Installationen, die vom Update Manager durchgeführt wurden, sollte es ungefähr so ​​aussehen:

Commandline: aptdaemon role='role-commit-packages' sender=':1.131'

... und es gibt eine Liste der Pakete, sortiert nach Datum, Methode und Aktion (installieren/aktualisieren/entfernen). Beachten Sie Folgendes, wenn Sie diese Pakete an apt-get remove ... zurückgeben möchten:

  • Wie erwähnt , werden durch dieses Paket vollständig entfernt , anstatt sie zurückzusetzen. Die Informationen in den Protokollen könnten sicherlich verwendet werden, um aktualisierte Pakete zu betrachten, obwohl das Zurücksetzen eine andere Sache ist.
  • Sie müssen die Klammern, ihren Inhalt und das Komma-Trennzeichen über die von Ihnen bevorzugte Methode der Textbearbeitung (z. B. sed, vim usw.) aus der Liste streichen. Wenn ich also die Pakete aus dem obigen Snippet entfernen möchte, kann ich die Zeile relativ direkt verwenden:

    Sudo apt-get remove nautilus-dropbox:AMD64 python-gpgme:AMD64
    

Terminal-Protokoll

Im Allgemeinen ist /var/log/apt/term.log weniger komfortabel aufgebaut, der Vollständigkeit halber können Sie jedoch die gleichen Informationen erhalten. Die Terminalausgabe wird wieder durch Zeitstempel begrenzt, und Paketinstallationen können aus Zeilen der folgenden Form abgerufen werden:

Selecting previously unselected package nautilus-dropbox.

Das Folgende ist eine Möglichkeit, eine Liste der installierten Pakete für das gesamte Protokoll auf dem Terminal zu drucken:

$ awk '/^Selecting/ {gsub(/\./,""); print $5}' /var/log/apt/term.log

Dies kann angepasst oder erweitert werden, um Installationen in einem Datumsbereich zu erhalten.

8
Electric Head

Hinweis: Im Gegensatz zu Windows wird ein Update in Ubuntu normalerweise deinstalliert Paket/Programm und wird nicht einfach auf die vorherige Version zurücksetzen (oder zurückstufen).

Sie können das Ubuntu Software Center öffnen und auf Verlauf klicken

enter image description here

Sobald Sie dies getan haben, klicken Sie auf Aktualisierungen. Daraufhin werden alle Aktualisierungen angezeigt, die auf Ihrem System installiert sind. Sobald Sie herausgefunden haben, welche Updates entfernt werden müssen, müssen Sie dies manuell tun.

enter image description here

Zum Entfernen können Sie Synaptic Package Manager verwenden. Wenn Sie es nicht installiert haben, können Sie es von

4
Mitch