Bagaimana saya bisa melihat riwayat apt-get install
perintah yang telah saya jalankan secara manual?
Sepertinya saya bahwa semua metode yang tersedia menunjukkan semua yang telah diinstal langsung dari awal instalasi Ubuntu.
Bagaimana saya bisa melihat riwayat apt-get install
sejak saat proses instalasi sistem saya selesai?
dpkg
in/var/log/dpkg.log*
.apt-get install
perintah untuk menginstal paket, dan saya telah memberikan solusi yang memberikan informasi ini kecuali file history telah diubah dengan cara tertentu (misalnya: entri memiliki telah dihapus).Jawaban:
Saya pikir jawaban yang diberikan di sini oleh kos adalah cara terbaik yang pernah saya lihat sejauh ini. Meskipun seperti yang digunakan Pusat Perangkat Lunak
apt
, apa pun yang telah diinstal akan terdaftar juga.Perintahnya adalah:
sumber
zcat /var/log/apt/history.log.*.gz | cat - /var/log/apt/history.log | grep -Po '^Commandline:(?=.* install ) \K.*' | sed '1,4d'
:grep -Po '^Commandline:(?=.* install ) \K.*'
akan menyaring hanyaapt-get
perintah yang berisiinstall
dengan ruang terkemuka dan trailing,sed '1,4d'
mungkin tergantung pada instalasi tertentu; di tambang1,4
menghapus persis jumlah entri yang berasal dari Ubiquity, yang ingin Anda hapus. Beri tahu saya jika angkanya sama pada instalasi Anda, dengan begitu setidaknya kita memiliki data dasar: |apt-get -o APT::Status-Fd=4 -o APT::Keep-Fds::=5 -o APT::Keep-Fds::=6 -q -y --no-remove install linux-generic
dengan perintah baru. Apakah mereka garis Ubiquity?apt-get
frontend, selain dari Ubiquity yang hanya berjalan sekali (misalnyaaptdaemon
entri akan ditunjukkan oleh perintah itu juga). Namun taruhan terbaik adalah masih menggunakan perintah itu, yang setidaknya mengecualikan entri Ubiquity.Cukup ketik perintah berikut di terminal Anda untuk melihat semua instal log.
sumber
Untuk menyederhanakan jawaban @Arronical, Trik rapi yang saya pelajari baru-baru ini adalah Anda dapat menggunakannya
zcat -qf
untuk menyimpan file txt dan txt yang di-gzip.menjadi
Dari man zcat:
sumber
Berikut ini skrip yang hanya mencetak paket tingkat atas yang saat ini diinstal , di mana "paket tingkat atas" didefinisikan sebagai paket ATP yang tidak bergantung pada paket ATP lainnya. Jika program tingkat atas semacam itu diinstal oleh ATP atau manajer paket seperti sinaptik, maka mereka dipilih secara manual oleh pengguna.
Paket-paket dicetak dalam urutan terbalik dengan asumsi bahwa pengguna lebih cenderung menginginkan info yang lebih baru lebih cepat, dan karena programnya lambat.
Aliran program:
/var/lib/dpkg/info/
. Waktu mod file adalah waktu instalasi.$Pkg
, panggilan untukapt-cache rdepends $Pkg
meminta dependensi terbalik dari$Pkg
. Jika tidak ada dependensi, maka itu adalah paket tingkat atas dan info paket dicetak: nama tanggal waktu paketCatatan:
apt-cache rdepends $Pkg
yang dimaksudkan untuk mata manusia dan dapat berubah di versi apt masa depan.dpgk
file log sejarah tidak dapat diandalkan karena mereka akan diputar setelah mencapai volume tertentu.apt-chache
apt-cache rdepends ...
sangat lambat mungkin karena setiap panggilan dihitung dengan mengulangi semua dependensi. Oleh karena itu skrip di atas dimulai dari instalasi terbaru untuk menawarkan pengguna kepuasan instan sebanyak mungkin.--installed
bendera setelahapt-cache
cek bahwa paket dpkg-instal juga apt-instal. Jika pengguna atau perangkat lunak instalasi lain langsung memotong dan menggunakan dpkg secara langsung, itu mungkin. KASUS INI BELUM DIUJI, tetapi saya pikir sesuatu yang nyata akan dicetak dalam standar atau keluaran kesalahan/home
direktori cadangan yang termasuk perangkat lunak pihak ketiga tersebut, maka output ini akan sesuai.sumber
Jika Anda ingin melihat semua hal yang telah Anda instal dengan menjalankan:
Dan Anda belum mengacaukan riwayat bash, Anda juga tidak ingin melihat riwayat jenis instalasi ini untuk pengguna lain (atau semua pengguna) maka Anda bisa menjalankannya:
Dan itu seharusnya memberi Anda sebagian besar hasil yang relevan.
sumber
apt-get install
di dalamnya dalam.bash_history
file, atau menghapus file ini, perintah akan menunjukkan kepada Anda semua contoh ketika Anda telah menjalankan perintah dengan stringapt-get install
di dalamnya pada akun pengguna Anda (bahkan jika Anda jalankan perintah sebagai root dan karena itu tidak persis seperti akun pengguna Anda - yang menjalankan perintah dengansudo
).Jika Anda ingin histori
apt-get install
perintah, gunakan perintah berikut:Keluaran:
Untuk informasi lain, rujuk informasi tambahan .
Ada juga informasi instalasi yang lebih rinci di
/var/log/apt/
dalamhistory.log
danhistory.log.X.gz
file danterm.log
danterm.log.X.gz
fileJika Anda ingin riwayat hanya
apt-get
perintah yang disertakan, makasumber
apt-mark showmanual
menunjukkan semua paket yang diinstal ketika OS diinstal juga, bukan hanya yang benar-benar diinstal secara manual. Ini cara yang aneh untuk berperilaku!/var/log/apt/history.log
file yang serupa. Anda hanya mendapatkan daftar paket yang dipilih secara manual dan otomatis. Anda tidak memberikan apa pun sejarah kronologis apa yang diinstal, apa yang telah dihapus, apa yang upgrade, dll dari jawaban ini.apt -mark showmanual
? Saya tidak dapat melihatnya di halaman manual Ubuntu 16.04 LTS untukapt
: < manpages.ubuntu.com/manpages/xenial/en/man8/apt.8.html >.Untuk melihat apa yang telah Anda instal dan hapus, instal ulang, dll. Info lebih lanjut tentang perjalanan pemasangan apt-get.
Jawabannya dapat diubah menjadi alias:
sumber
Perhatikan bahwa beberapa argumen dapat diset sebelum menginstal, seperti yang dilakukan skrip virtualmin saat menginstal: apt-get -y install nama paket.
Jadi jika Anda ingin menangkap semua perintah instal, Anda perlu mengubah permintaan regex.
sumber