it-swarm-tr.com

Güncelleme geçmişime nereden bakabilirim?

Hangi güncellemeleri yüklediğime bakabileceğim bir yer var mı?

138
vrcmr

history.log dosyasını /var/log/apt içinde okuyabilirsiniz.

Örneğin. less /var/log/apt/history.log.

130
lgarzo

10.10'da, Ubuntu Yazılım Merkezi , geçmişte indirdiğiniz tüm güncellemelerin bir listesine sahiptir.

enter image description here

45
Isaiah

/ var/log/apt, paket kurulumlarının bir geçmişini içerir. Bununla birlikte, varsayılan olarak, eski girişleri sıkıştırıp yaşlandıran logrotate tarafından yönetilir.

25
msw

10.04'te (Sistem> Yönetim> Synaptic Paket Yöneticisi> Dosya> Geçmiş) öğesine tıklayın.

21
vrcmr

Lgarzo'nun cevabına bir alternatif olarak, /var/log/dpkg.log içinden neyle ilgilendiğinizi grep ile yapabilirsiniz. Örneğin, dün kurduğunuz veya yükselttiğiniz her şeyi görmek isterseniz, koşabilirsiniz:

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

Unutulmaması gereken bir şey: bu ayrıca, apt tarihinde görünmeyecek olan el ile kurulmuş paketleri de (Sudo dpkg -i ...) listeler.

Zgrep'i daha da iyi kullanın, eğer yüklüyse gzip dosyalarında da satırlar bulabilirsiniz.

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

Bunu artık yazılım merkezinden de yapmak mümkün! Geçmişe gidin ve tüm güncellemelerinizi ve kurulumlarınızı görüntüleyebilirsiniz.

Software Center History

11
Nick Pascucci

"Bu şeyi en son ne zaman geçirdik?" Sorusuna biraz daha kolay ve doğru bir cevap vermemiz faydalı oldu. Bu yüzden bunu bir araya getirdim. 12.04 ve 14.04 ve 16.04'te test ettim. Bu soru için oldukça doğru cevaplar verir. Not: "makul derecede doğru" muhtemelen "tamamen doğru" değildir. Not: Sadece "bu soru için".

örnek çıktı:

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

alt yordamlar ve program:

#!/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";
}
3
JsinJ