Cara Melumpuhkan Kemas Kini Pakej Menggunakan YUM/DNF di RHEL Linux
- 3646
- 143
- Noah Torp
DNF (Dandified YUM) adalah versi generasi akan datang dari YUM (Yellowdog Updater, Modified), adalah pengurus pakej lalai sumber terbuka untuk pengedaran Linux berasaskan Hat Red, yang digunakan untuk mendapatkan, memasang, menaik taraf, mengeluarkan, mengeluarkan, dan memohon pakej dari repositori perisian rasmi dan repositori pihak ketiga.
Semasa mengemas kini sistem, kadang -kadang, kami tidak mengemas kini pakej tertentu seperti Pelayan Apache (Http), Mysql, Php, atau mana -mana aplikasi utama lain, kerana mengemas kini perisian sedemikian boleh memecahkan aplikasi web yang sedang berjalan pada pelayan dan menyebabkan masalah utama. Adalah disyorkan untuk menghentikan kemas kini untuk perisian sedemikian sehingga aplikasi ditambal dengan kemas kini baru.
Dalam artikel ini, kami akan menunjukkan kepada anda bagaimana kami dapat mengecualikan (melumpuhkan) kemas kini pakej tertentu menggunakan Yum dan DNF Pengurus Pakej mengenai pengagihan berasaskan RPM seperti RHEL, Centos, Fedora, Rocky Linux, dan Almalinux. Kami juga boleh mengecualikan atau melumpuhkan kemas kini pakej tertentu dari mana-mana repositori pihak ketiga.
Sintaks yang tidak termasuk adalah seperti yang berikut.
tidak termasuk = pakej pakej1 pakej*
Di atas tidak termasuk Arahan ditakrifkan dalam /etc/yum.Conf atau /etc/dnf/dnf.Conf fail konfigurasi dengan senarai pakej untuk mengecualikan dari kemas kini atau pemasangan.
Sintaks di atas akan mengecualikan "pakej","Pakej1", Dan senarai"pakej"Kemas kini atau memasang. Setiap kata kunci harus dipisahkan dengan ruang untuk pengecualian pakej.
Cara mengecualikan pakej dalam yum atau dnf
Untuk mengecualikan (melumpuhkan) kemas kini pakej tertentu, buka fail yang dipanggil /etc/yum.Conf atau /etc/dnf/dnf.Conf Dengan pilihan editor anda.
# vi /etc /yum.conf atau # vi/etc/dnf/dnf.Conf
Tambahkan baris berikut di bahagian bawah fail dengan tidak termasuk Kata kunci seperti yang ditunjukkan di bawah.
[Utama] cacheedir =/var/cache/yum/$ basearch/$ releasever keepcache = 0 debuglevel = 2 logfile =/var/log/yum.log exactarch = 1 Obsoletes = 1 gpgCheck = 1 plugin = 1 installOnly_limit = 5 bugtracker_url = http: // bugs.Centos.org/set_project.php?projek_id = 16 & ref = http: // bugs.Centos.org/bug_report_page.php?kategori = yum distroverpkg = centos-release # Ini adalah lalai, jika anda membuat yum yang lebih besar ini tidak akan melihat jika metadata # lebih baru di jauh dan oleh itu anda akan "memperoleh" jalur lebar yang tidak perlu # muat turun metadata baru dan "bayar" untuknya dengan yum tidak mempunyai maklumat # yang betul. # Itu esp. penting, mempunyai metadata yang betul, untuk pengagihan seperti # fedora yang tidak menyimpan pakej lama di sekitar. Sekiranya anda tidak menyukai pemeriksaan ini # mengganggu penggunaan baris arahan anda, lebih baik mempunyai sesuatu # secara manual periksa metadata sekali sejam (yum-updatesd akan melakukan ini). # metadata_expire = 90m # letakkan repos anda di sini atau dalam fail berasingan bernama fail.repo # in /etc /yum.repos.d ## tidak termasuk kemas kini pakej berikut ## tidak termasuk = httpd php mysql
Dalam contoh di atas, garis tidak termasuk akan melumpuhkan kemas kini untuk "httpd""php"Dan"mysql"Pakej. Mari cuba memasang atau mengemas kini salah satu daripada mereka menggunakan Yum Perintah seperti yang ditunjukkan di bawah.
# yum update httpd atau # dnf update httpd
Output sampel
Plugin yang dimuatkan: Fastestmirror Memuatkan Kelajuan Cermin Dari Hostfile Cached * Base: Centos.01link.HK * Tambahan: Centos.01link.HK * Kemas kini: Cermin.Hns.jaring.Dalam asas | 3.7 kb 00:00 Ekstra | 3.0 kb 00:00 kemas kini | 3.5 kb 00:00 Kemas kini/primer_db | 2.7 MB 00:16 Menyediakan proses kemas kini Tiada pakej yang ditandakan untuk kemas kini
Cara mengecualikan pakej dari repo epel
Untuk mengecualikan pakej pemasangan atau kemas kini dari Epel repositori, kemudian buka fail yang dipanggil /etc/yum.repos.d/epel.repo.
# vi /etc /yum.repos.d/epel.repo
Tambahkan baris Exclude dengan menentukan pakej untuk dikecualikan daripada kemas kini.
[Epel] Nama = Pakej Tambahan untuk Enterprise Linux 6 - $ Basearch #BaseUrl = http: // muat turun.Fedoraproject.org/pub/epel/6/$ basearch mirrorList = https: // cermin.Fedoraproject.org/metalink?repo = epel-6 & arch = $ Basearch failOverMethod = Priority Enabled = 1 gpgCheck = 1 gpgkey = file: /// etc/pki/rpm-gpg/rpm-gpg-stoke-epel-6 ## tidak termasuk kemas kini pakej berikut ## tidak termasuk = perl php python
Sekarang cuba mengemas kini fail yang ditentukan di atas dari Epel repositori menggunakan YUM/DNF arahan seperti yang ditunjukkan.
# DNF Update Perl PHP Python atau # YUM UPDATE PERL PHP PYTHON
Output sampel
Pemeriksaan Tamat Metadata Terakhir: 0:00:37 lalu pada hari Rabu 17 November 2021 03:41:28 pagi EST. Pakej Perl tersedia, tetapi tidak dipasang. Tiada Perlawanan untuk Argumen: Perl Tiada Perlawanan untuk Argumen: PHP Tidak Perlawanan untuk Argumen: Python Ralat: Tiada pakej yang ditandakan untuk menaik taraf.
Anda juga boleh menggunakan YUM/DNF Pilihan baris arahan untuk mengecualikan pakej tanpa menambahkannya ke fail repositori.
# yum --exclude = httpd update atau # dnf --exclude = httpd update
Untuk mengecualikan senarai pakej, gunakan arahan seperti berikut.
# yum --exclude = mysql \* --exclude = httpd \* update atau # dnf --exclude = mysql \* --exclude = httpd \* update
Dengan cara ini, anda boleh mengecualikan kemas kini untuk sebarang pakej yang anda mahukan. Terdapat banyak cara lain yang boleh anda lakukan, sebagai contoh, baru -baru ini kami telah menyusun artikel mengenai 4 cara berguna untuk menyekat/melumpuhkan atau mengunci pakej tertentu menggunakan perintah yum di Linux.
- « Cara Memasang Zend Opcache di Debian dan Ubuntu
- Alat terbaik untuk dipasang pada pemasangan linux segar »