Question Où puis-je consulter mon historique de mise à jour?


Y a-t-il un endroit où je peux regarder quelles mises à jour j'ai installées?


108
2017-11-21 19:10


origine




Réponses:


Vous pouvez lire le history.log déposer dans /var/log/apt.

Par exemple. less /var/log/apt/history.log.


99
2018-03-26 07:40





10.10, Centre logiciel Ubuntu a une liste de toutes les mises à jour que vous avez téléchargées dans le passé.

enter image description here


44
2017-11-21 19:24



+1 Cette réponse fonctionne aussi sur des versions plus récentes. - James Bradbury
@JamesBradbury Cette option a disparu de Ubuntu 16.04 - feeela


/ var / log / apt contient un historique des installations de paquets. Cependant, par défaut, il est géré par logrotate qui compresse et élimine les anciennes entrées.


23
2017-11-21 19:17



Est-ce que c'est le meilleur endroit pour vérifier l'historique sur Ubuntu Server? - Brettski


Sur 10.04 Cliquez sur (Système> Administration> Gestionnaire de packages Synaptic> Fichier> Historique)


21
2017-11-21 19:15



Tout ce que j'obtiens, c'est une liste de paquets que j'ai installés via Synaptic, elle ne montre pas tous les paquets que j'ai mis à jour via Update Manager. - Isaiah


Comme alternative à la réponse de lgarzo, vous pouvez grep ce qui vous intéresse de /var/log/dpkg.log. Par exemple, si vous voulez voir tout ce que vous avez installé ou mis à niveau hier, vous pouvez exécuter:

cat /var/log/dpkg.log | grep "^2012-03-25.*\ installed\ "

Une chose à noter: cela listera également les paquets installés manuellement (sudo dpkg -i ...), qui n'apparaitra pas dans l'histoire d'apt.

Encore mieux, utilisez zgrep s'il est installé pour que vous puissiez également trouver des lignes dans les fichiers compressés.

zgrep "^2012-03-25.*\ installed\ " /var/log/dpkg.log*

14
2018-03-26 07:54





Il est maintenant possible de le faire également via le centre logiciel! Accédez à l'historique et vous pouvez afficher toutes vos mises à jour et installations.

Software Center History


11
2017-11-21 19:25



Je suppose que c'est 10.10? - vrcmr
Bien sûr. Je ne pense pas que cela était disponible dans les distributions précédentes ... - Nick Pascucci


Il nous est devenu utile d’avoir une réponse un peu plus facile et plus précise à la question "Quand est-ce la dernière fois que nous avons modifié cette chose?". Alors je mets ça ensemble. Je l'ai testé les 12.04 et 14.04 et 16.04. Il renvoie des réponses raisonnablement précises à cette question. Note: "raisonnablement précis" n'est probablement pas "complètement exact". Note: "pour cette question" seulement.

sortie de l'échantillon:

xenial% 9: ./linuxpatchdate 
2016-07-19 54
2017-02-24 363
2017-03-08 7
2017-03-09 2

sous-programmes et programme:

#!/usr/bin/perl

#------------------ subroutines --------------------

sub parseRecord {
    my $sdate = "";
    my $useful = 0;
    my $packages = 0;
    my @ptmp;
    while (my $recordLine = shift() ) {

       if ($recordLine =~ m/^Start-Date: ([\d\-]*).*/) {
          $sdate = $1;
       }
       elsif ($recordLine =~ m/^Commandline:.*upgrade/) {
          $useful = 1;
       }
       elsif ($recordLine =~ m/^Install: (.*)/) {
          $recordLine =~ s/\([^\)]*\)//g;
          @ptmp = split(/,/,$recordLine);
          $packages = $packages + $#ptmp + 1;
       }
       elsif ($recordLine =~ m/^Upgrade: (.*)/) {
          $recordLine =~ s/\([^\)]*\)//g;
          @ptmp = split(/,/,$recordLine);
          $packages = $packages + $#ptmp + 1;
       }
    }



    if ($useful) {
       return ($sdate,$packages);
    }
    else {
       return ("0",0);
    }
}


#------------------ main program --------------------

@lines = split(/\n/,`/bin/zcat -f /var/log/apt/history.log  /var/log/apt/history*gz`);
my %patchHash;
my $line;
my @inputLines;
my $pushDate = "";
my $pushNum = "";

foreach $line (@lines) {
    # all records separated by blank lines
    if ($line !~ /./) {
       # no-op
    }
    elsif ($line =~ m/^Start-Date: ([\d\-]*).*/) {
       @inputLines = ();
       push (@inputLines, $line);
    }
    elsif ($line =~ m/^End-Date: ([\d\-]*).*/) {
       ($pushDate, $pushNum) = parseRecord(@inputLines);
       if ($pushNum != 0) {
          $patchHash{$pushDate} += $pushNum;
       }
    }
    else {
       push (@inputLines, $line);
    }
}

foreach $pushDate (sort(keys(%patchHash))) {
   print "$pushDate $patchHash{$pushDate}\n";
}

1
2018-03-10 23:40