Distribusi berbasis RPM seperti Red Hat mudah:
rpm -qa --last
Pada Debian dan distribusi berbasis dpkg lainnya, masalah khusus Anda juga mudah:
grep install /var/log/dpkg.log
Kecuali jika file log telah diputar, dalam hal ini Anda harus mencoba:
grep install /var/log/dpkg.log /var/log/dpkg.log.1
Secara umum, dpkg
dan apt
sepertinya tidak melacak tanggal pemasangan, terjadi karena tidak adanya bidang seperti itu di dpkg-query
halaman manual.
Dan akhirnya /var/log/dpkg.log.*
file lama akan dihapus oleh rotasi log, sehingga cara itu tidak dijamin memberi Anda seluruh sejarah sistem Anda.
Salah satu saran yang muncul beberapa kali (misalnya utas ini ) adalah untuk melihat /var/lib/dpkg/info
direktori. File-file di sana menyarankan Anda untuk mencoba sesuatu seperti:
ls -t /var/lib/dpkg/info/*.list | sed -e 's/\.list$//' | head -n 50
Untuk menjawab pertanyaan Anda tentang pilihan, berikut ini pass pertama.
buat daftar paket berdasarkan tanggal
$ find /var/lib/dpkg/info -name "*.list" -exec stat -c $'%n\t%y' {} \; | \
sed -e 's,/var/lib/dpkg/info/,,' -e 's,\.list\t,\t,' | \
sort > ~/dpkglist.dates
membangun daftar paket yang diinstal
$ dpkg --get-selections | sed -ne '/\tinstall$/{s/[[:space:]].*//;p}' | \
sort > ~/dpkglist.selections
bergabunglah dengan 2 daftar
$ join -1 1 -2 1 -t $'\t' ~/dpkglist.selections ~/dpkglist.dates \
> ~/dpkglist.selectiondates
Untuk beberapa alasan itu tidak mencetak banyak perbedaan bagi saya, jadi mungkin ada bug atau asumsi yang tidak valid tentang apa --get-selections
artinya.
Anda jelas dapat membatasi paket baik dengan menggunakan find . -mtime -<days>
atau head -n <lines>
, dan mengubah format output yang Anda inginkan, misalnya
$ find /var/lib/dpkg/info -name "*.list" -mtime -4 | \
sed -e 's,/var/lib/dpkg/info/,,' -e 's,\.list$,,' | \
sort > ~/dpkglist.recent
$ join -1 1 -2 1 -t $'\t' ~/dpkglist.selections ~/dpkglist.recent \
> ~/dpkglist.recentselections
untuk hanya daftar pilihan yang diinstal (diubah?) dalam 4 hari terakhir.
Anda mungkin bisa juga menghapus sort
perintah setelah memverifikasi urutan yang digunakan oleh dpkg --get-selections
dan membuat find
perintah lebih efisien.