Il existe une approche alternative en ligne de commande pour obtenir l'historique d'installation.
Le gestionnaire de paquets apt
semble tout connecter /var/log/apt/history.log
et /var/log/apt/term.log
, y compris tout séparer par des horodatages. Les deux contiennent des informations similaires et utilisables mais term.log
sont à la fois plus verbeuses et n'indiquent pas explicitement ce qui a initié l'opération.
Journal d'historique
/var/log/apt/history.log
stocke un résumé concis de chaque apt
exécution. Voici un extrait de moi pour une installation manuelle:
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
Le Commandline:
champ indique ce qui a déclenché l'exécution, et dans le cas des installations effectuées par le gestionnaire de mise à jour, il devrait ressembler à quelque chose comme:
Commandline: aptdaemon role='role-commit-packages' sender=':1.131'
... et voici votre liste de packages, triés par date, méthode et action (installer / mettre à niveau / supprimer). Notez que si vous souhaitez renvoyer ces packages à apt-get remove ...
:
- Comme mentionné , cela supprime complètement les packages plutôt que de les annuler. Les informations contenues dans les journaux pourraient certainement être utilisées pour examiner les packages mis à niveau, mais les restaurer est une autre question.
Vous devrez supprimer les parenthèses, leur contenu et le séparateur de virgules de la liste via votre méthode préférée de manipulation de texte (par exemple sed
, vim
etc.). Donc, si je voulais supprimer les packages de l'extrait ci-dessus, je peux utiliser la ligne relativement directement:
sudo apt-get remove nautilus-dropbox:amd64 python-gpgme:amd64
Journal du terminal
Généralement, il /var/log/apt/term.log
est moins structuré mais, pour être complet, vous pouvez obtenir les mêmes informations. La sortie du terminal est à nouveau délimitée par des horodatages et les installations de packages peuvent être obtenues à partir de lignes de la forme suivante:
Selecting previously unselected package nautilus-dropbox.
Voici une façon d'imprimer une liste des packages installés sur le terminal pour l'ensemble du journal:
$ awk '/^Selecting/ {gsub(/\./,""); print $5}' /var/log/apt/term.log
Cela peut être adapté ou étendu pour obtenir des installations dans une plage de dates.
apt-get remove
:sed 's/ ([^)]*)//g' | sed 's/,//g')
.