bagaimana cara menghapus semua paket tergantung yang diinstal saat menghapus paket dalam centos 7?

8

Saya menggunakan CentOS 7. Saya menginstal okular, yang merupakan penampil PDF, dengan perintah:

sudo yum install okular

Seperti yang Anda lihat pada gambar di bawah, ini menginstal 37 paket dependen untuk menginstal okular.

dependensi yang diinstal

Tetapi saya tidak puas dengan fitur aplikasi dan saya memutuskan untuk menghapusnya. Masalahnya adalah jika saya menghapusnya dengan perintah:

sudo yum autoremove okular

Ini hanya menghapus empat paket dependen.

paket yang dihapus dengan autoremove

Dan jika saya menghapusnya dengan perintah:

sudo yum remove okular

Ini menghapus hanya satu paket yang okular.x86_64.

Sekarang, pertanyaan saya adalah apakah ada cara untuk menghapus semua 37 paket yang diinstal dengan perintah atau apakah saya harus menghapus semuanya satu per satu?

ukll
sumber

Jawaban:

17

Secara pribadi, saya tidak suka plugin yum karena mereka tidak sering bekerja, menurut pengalaman saya.

Anda dapat menggunakan yum historyperintah untuk melihat riwayat yum Anda.

[root@testbox ~]# yum history
Loaded plugins: product-id, rhnplugin, search-disabled-repos, subscription-manager, verify, versionlock
ID     | Login user               | Date and time    | Action(s)      | Altered
----------------------------------------------------------------------------------
19 | Jason <jason>  | 2016-06-28 09:16 | Install        |   10

Anda dapat menemukan info tentang transaksi dengan melakukan yum history info <transaction id>. Begitu:

yum history info 19akan memberi tahu Anda semua paket yang diinstal dengan transaksi 19 dan baris perintah yang digunakan untuk menginstal paket. Jika Anda ingin membatalkan transaksi 19, Anda akan menjalankan yum history undo 19.

Atau, jika Anda hanya ingin membatalkan transaksi terakhir yang Anda lakukan (Anda menginstal paket perangkat lunak dan tidak menyukainya), Anda bisa melakukan yum history undo last

Jason Powell
sumber
Pertama, terima kasih atas jawaban Anda yang luar biasa. Dan kedua, ketika saya melakukannya sudo yum history, itu hanya menunjukkan tindakan dengan id 30 hingga 49. Apakah ada cara untuk melihat semua tindakan sejarah (termasuk dengan id 1-29)?
ukll
1
Sama-sama! Ya, ada cara untuk menunjukkan semua sejarah Anda. Lakukan saja yum history list all.
Jason Powell
8

yum remove package_name hanya akan menghapus paket itu dan semua dependensinya.

yum autoremove akan menghapus dependensi yang tidak digunakan

Untuk menghapus paket dengan dependensinya, Anda perlu menginstal yumplugin bernama:remove-with-leaves

Untuk menginstalnya ketik:

yum install yum-plugin-remove-with-leaves

Untuk menghapus package_namejenis:

yum remove package_name --remove-leaves
GAD3R
sumber
Saya mencoba jawaban Anda, itu tidak berhasil.
ukll