Jak wyłączyć aktualizacje pakietów za pomocą YUM/DNF w Rhel Linux

Jak wyłączyć aktualizacje pakietów za pomocą YUM/DNF w Rhel Linux

DNF (Dandified Yum) to wersja Nowej Generacji Yum (YellowDog Updater, Modified), jest domyślnym menedżerem pakietu open source dla dystrybucji Linux opartych na czerwonym kapeluszu, który służy do uzyskania, instalowania, aktualizacji, usuwania, usuwania, oraz zapytania z oficjalnych repozytoriów oprogramowania i repozytoriów stron trzecich.

Czasami aktualizując system, nie aktualizujemy niektórych pakietów, takich jak Serwer Apache (Http), Mysql, Php, lub jakakolwiek inna ważna aplikacja, ponieważ aktualizacja takiego oprogramowania może przełamać obecnie uruchomione aplikacje internetowe na serwerze i powodować poważne problemy. Zaleca się zatrzymanie aktualizacji takiego oprogramowania, dopóki aplikacja nie zostanie załatana z nowymi aktualizacjami.

W tym artykule pokażemy Ci, w jaki sposób możemy wykluczyć (wyłączyć) niektóre aktualizacje pakietów za pomocą Mniam I DNF Menedżer pakietów w dystrybucjach opartych na RPM, takich jak Rhel, Centos, Fedora, Rocky Linux, I Almalinux. Możemy również wykluczyć lub wyłączyć niektóre aktualizacje pakietów z jakichkolwiek repozytoriów stron trzecich.

Składnia wykluczania byłaby następująca.

exclude = pakiet pakietów 1 pakiety* 

Powyższe wykluczać dyrektywa jest zdefiniowana w /etc/mniam.conf Lub /etc/dnf/dnf.conf plik konfiguracyjny z listą pakietów do wykluczenia z aktualizacji lub instalacji.

Powyższa składnia wyklucza „pakiet„”pakiet1„I lista„pakiet”Aktualizacje lub instalacje. Każde słowo kluczowe powinno być oddzielone przestrzenią dla wykluczenia pakietów.

Jak wykluczyć pakiety w Yum lub DNF

Aby wykluczyć (wyłączyć) określone aktualizacje pakietów, otwórz plik wywołany /etc/mniam.conf Lub /etc/dnf/dnf.conf z wyborem edytora.

# vi /etc /yum.conf lub # vi/etc/dnf/dnf.conf

Dodaj następujący wiersz u dołu pliku za pomocą wykluczać Słowo kluczowe, jak pokazano poniżej.

[Main] buforedir =/var/cache/yum/$ basearch/$ releasever keepCache = 0 debuglevel = 2 logfile =/var/log/yum.Log Exactarch = 1 Obsoletes = 1 gpgcheck = 1 wtyczki = 1 instaltonly_limit = 5 BugTracker_Url = http: // błędy.Centos.org/set_project.php?projekt_id = 16 i ref = http: // błędy.Centos.Org/bug_report_page.php?kategoria = yum distroverpkg = centos-release # to jest domyślne, jeśli uczynisz ten większy mni Nowe metadane i „Pay” za to przez Yum, nie mając prawidłowych informacji #. # To ESP. ważne, aby mieć prawidłowe metadane, dla dystrybucji takich jak # fedora, które nie utrzymują starych pakietów. Jeśli nie podoba ci się ten sprawdzanie # Zakotykowanie użycia wiersza poleceń, o wiele lepiej jest mieć coś # Ręcznie sprawdź metadane raz w godzinę (zrobi to Yum-updatesd). # metadata_expire = 90m # Umieść swoje repozytorium tutaj lub w osobnych plikach o nazwie plik.repo # in /etc /yum.repozytorium.D ## Wyłącz następujące aktualizacje pakietów ## exclude = httpd php mysql

W powyższym przykładzie linia wykluczać Wyłączy aktualizacje dla „httpd”„php" I "Mysql”Pakiety. Spróbujmy zainstalować lub aktualizować jedną z nich za pomocą Mniam polecenie, jak pokazano poniżej.

# Aktualizacja Yum HTTPD lub # DNF Aktualizacja HTTPD 
Przykładowy wyjście
Załadowane wtyczki: FastestMirror Ładowanie prędkości lustra z buforowanego pliku hosta * Baza: centos.01 -link.HK * dodatki: centos.01 -link.HK * Aktualizacje: Mirrors.HNS.internet.w bazie | 3.7 kb 00:00 dodatków | 3.0 kb 00:00 Aktualizacje | 3.5 KB 00:00 Aktualizacje/Primary_db | 2.7 MB 00:16 Konfigurowanie procesu aktualizacji Brak pakietów oznaczonych do aktualizacji

Jak wykluczyć pakiety z EPEL Repo

Aby wykluczyć pakiety instalacji lub aktualizacji z Epel repozytorium, a następnie otwórz plik wywołany /etc/mniam.repozytorium.D/epel.Repo.

# vi /etc /yum.repozytorium.D/epel.Repo

Dodaj linię wykluczając, określając pakiety, które mają być wykluczone z aktualizacji.

[epel] Nazwa = dodatkowe pakiety dla Enterprise Linux 6 - $ basearch #baseurl = http: // pobierz.Fedoraproject.org/pub/epel/6/$ basearch luster = https: // lusterka.Fedoraproject.org/metalink?Repo = Epel-6 & Arch = $ Basearch FailoverMethod = Priorytet Enabled = 1 gpgCheck = 1 gpgkey = plik: /// etc/pki/rpm-gpg/rpm-gpg-key-epel-6 ## Wyłącz następujące aktualizacje pakietów ## Wyklucz = Perl Php Python

Teraz spróbuj zaktualizować wyżej określone pliki z Epel Repozytorium za pomocą Yum/DNF polecenie jak pokazano.

# DNF Aktualizacja Perl Php Python lub # Yum Update Perl Php Python
Przykładowy wyjście
Ostatnie metadane wygaśnięcie Kontrola: 0:00:37 temu w środę 17 listopada 2021 03:41:28 EST. Pakiet Perl dostępny, ale nie zainstalowany. Brak dopasowania do argumentu: Perl Brak dopasowania do argumentu: PHP Brak dopasowania do argumentu: Python Błąd: Brak pakietów oznaczonych do aktualizacji. 

Możesz także użyć Yum/DNF Opcja wiersza polecenia, aby wykluczyć pakiety bez dodawania ich do plików repozytorium.

# yum -exclude = httpd aktualizacja lub # dnf -exclude = httpd aktualizacja 

Aby wykluczyć listę pakietów, użyj polecenia w następujący sposób.

# yum --xclude = mysql \* --exclude = httpd \* aktualizacja lub # dnf --xclude = mysql \* --exclude = httpd \* aktualizacja 

W ten sposób możesz wykluczyć aktualizacje dla dowolnych pakietów, które chcesz. Istnieje wiele innych sposobów, aby to zrobić, na przykład ostatnio opracowaliśmy artykuł na 4 przydatne sposoby blokowania/wyłączenia lub zablokowania niektórych pakietów za pomocą Polecenie Yum w Linux.