dengan yum bagaimana Anda bisa menghapus paket tetapi tidak menghapus dependensinya pada saat yang sama?

13

Hari ini jika saya melakukannya $ yum remove packageAsaya disambut dengan:

Removing:
packageA                        noarch                 3.5.1.b37-15                                 @yumFS                 293 k
Removing for dependencies:
 packageB                      noarch                 3.5.1.b125-7                                 @yumFS                  87 M
..
Is this ok?

Saya ingin menghapus packageA tanpa menghapus packageB (dll) apakah ini mungkin?

rogerdpack
sumber
1
Mungkin ? Iya. Tetapi seluruh tujuan dari manajer paket adalah untuk mencegah hal ini. Google berkeliling untuk "RPM Hell" untuk ide bagus tentang apa yang Anda siapkan dengan melakukan hal seperti itu.
DopeGhoti

Jawaban:

18

Muncul mungkin , dengan menggunakan rpm:

$ rpm -e --nodeps packageA

walaupun jelas sangat berhati-hati, karena jika Anda menghapus paket dependensi dan tidak mengembalikannya yang dapat mengakibatkan hasil yang tidak terduga untuk paket yang masih bergantung padanya ...

rogerdpack
sumber
Pertanyaan tentang ini Saya mengalami masalah versi ketergantungan, peringatan itu Application built with libpng-1.6.16 but running with 1.5.13. Saya pikir saya hanya akan menukarnya, tetapi yumingin menghapus banyak hal jika saya pertama kali dihapus libpng. Jadi saya menggunakan pendekatan yang Anda tunjukkan di sini untuk menghapus keduanya libpngdan libpng-devel, kemudian membangun dan menginstal libpng-1.6.1dari sumber, dan masalah saya hilang. Sementara itu bekerja untuk perangkat lunak yang saya butuhkan segera (Mapnik), dapatkah saya percaya bahwa saya tidak merusak sesuatu yang lain di bagian hulu, misalnya sesuatu yang yumawalnya ingin dihapus bersama libpng?
Elrobis
Jadi tidak ada opsi paket untuk menginstal 1.6? Hmm firasat saya adalah mereka menggunakan perpustakaan bersama dan Anda baik, tetapi mereka tidak diuji oleh manajer paket juga jadi ... Saya tidak tahu bagaimana sistem manajemen paket bekerja.
rogerdpack
1

Saya menemukan itu mungkin untuk melakukan ini dengan yum seperti:

sudo yum remove --noautoremove <package name>
Jaime
sumber
2
Hmm ... Saya mencobanya di CentOS 6 dan 7 dan mendapat "tidak ada opsi seperti itu: --noautoremove" ada ide?
rogerdpack
3
Saya menggunakan fedora 29 ketika saya melakukan ini menguji paket baru yang saya buat. Hmm .. bertanya-tanya apakah ini hanya fedora.
Jaime