Es gibt eine alternative Befehlszeilenmethode zum Abrufen des Installationsverlaufs.
Der Paketmanager apt
scheint alles einzuloggen /var/log/apt/history.log
und /var/log/apt/term.log
auch alles durch Datenstempel zu trennen. Beide enthalten ähnliche, verwendbare Informationen, term.log
sind jedoch ausführlicher und geben nicht explizit an, was den Vorgang initiiert 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 Commandline:
Feld gibt an, was den Lauf ausgelöst hat. Bei Installationen durch den Update-Manager 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 zurückgeben möchten apt-get remove ...
:
- Wie bereits erwähnt , werden Pakete vollständig entfernt, anstatt zurückgesetzt zu werden. Die Informationen in den Protokollen könnten sicherlich verwendet werden, um aktualisierte Pakete zu betrachten, ein Rollback ist jedoch eine andere Angelegenheit.
Hier finden Sie die Klammern Streifen aus müssen, deren Inhalt und Kommaseparator aus der Liste über Ihre bevorzugte Methode der Textbearbeitung (zB sed
, vim
etc.). 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 /var/log/apt/term.log
ist die Struktur weniger komfortabel, 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.
apt-get remove
:sed 's/ ([^)]*)//g' | sed 's/,//g')
.