Ściągawka menedżera pakietów YUM na CentOS i RHEL

W tym artykule przyjrzymy się menedżerowi pakietów Yum, który pozwala kontrolować instalację, usuwanie i aktualizację programów (pakiety .RPM), automatycznie rozwiązywać zależności i zarządzać dodatkowymi repozytoriami. Ten artykuł o Yumie powinien być przede wszystkim interesujący jako ściągawka dla początkujących administratorów Linuksa..

Mniam (Yellowdog Updater Modified) to menedżer pakietów konsoli dla dystrybucji Linux opartych na pakietach RPM. (RedHat Package Manager) Obejmuje to tak popularne systemy operacyjne jak RedHat, CentOS, Fedora, Oracle Linux, Scientific Linux.

Treść

  • Mniam: instalowanie, aktualizowanie i odinstalowywanie pakietów
  • Mniam: historia i dzienniki instalowania / odinstalowywania pakietów
  • Dodatkowe przydatne opcje mniam
  • Plik konfiguracyjny /etc/yum.conf
  • Przydatne wtyczki mniam
  • Używanie yum przez proxy

Mniam: instalowanie, aktualizowanie i odinstalowywanie pakietów

Od czego zacząć Być może, jak w każdym innym przypadku, zaczynamy od pomocy:

mniam pomoc - pełna pomoc dla menedżera pakietów yum

Otwierając go, podświetlę główne polecenia:

mniam wszystko - wyczyść pamięć podręczną wszystkich pakietów (zwykle jest używana w przypadku problemów z yum).
mniam makecache - ponownie utwórz pamięć podręczną pakietów.
mniam repolist - wyświetla listę podłączonych repozytoriów, dane wyjściowe wyglądają następująco:

Załadowane wtyczki: najszybszy błąd Ładowanie prędkości lustra z buforowanego pliku hosta * podstawa: mirror.fasthost.ru * dodatki: mirror.fasthost.ru * aktualizacje: mirror.fasthost.ru repo id nazwa repozytorium status baza / 7 / x86_64 CentOS-7 - Baza 10,019 dodatki / 7 / x86_64 CentOS-7 - Dodatki 435 aktualizacje / 7 / x86_64 CentOS-7 - Aktualizacje 2500 repolist: 12 954 

W moim systemie są zainstalowane tylko standardowe repozytoria CentOS-7: Baza, Dodatki i Aktualizacje.

dostępna lista mniam - wyświetla wszystkie dostępne pakiety do instalacji.

zainstalowana lista mniam - lista wszystkich pakietów zainstalowanych w systemie.

jądro listy yum - wyświetla listę pakietów, które są częścią jądra Linux.

Możesz sprawdzić, czy konkretny pakiet jest zainstalowany w twoim systemie, na przykład apache:

lista mniam zainstalowana httpd

Załadowane wtyczki: najszybszy błąd Ładowanie prędkości lustra z buforowanego pliku hosta * podstawa: mirror.fasthost.ru * dodatki: mirror.fasthost.ru * aktualizacje: mirror.fasthost.ru Zainstalowane pakiety httpd.x86_64 2.4.6-89.el7.centos.1 @aktualizacje 

Możesz uzyskać bardziej szczegółowe informacje o pakiecie, na przykład otrzymamy dane o pakiecie MariaDB:

mniam informacje mariadb

Aby zainstalować pakiet, użyj polecenia yum install. Aby zainstalować serwer WWW Apache:

mniam zainstaluj httpd

Jeśli pojawi się błąd, gdy mniam Traceback (ostatnie ostatnie połączenie): thread.error: nie można rozpocząć nowego wątku, najprawdopodobniej nie masz wystarczającej ilości pamięci RAM. Spróbuj dodać pamięć RAM lub wyłącz wtyczki yum (w /etc/yum.conf, określ wtyczki = 0).

Przed zainstalowaniem pakietu możesz sprawdzić jego zależności i niezbędne pakiety za pomocą polecenia:

mniam deplist httpd

Jeśli chcesz zainstalować jakiś pakiet, ale nie pamiętasz jego pełnej nazwy, możesz użyć symbolu wieloznacznego *. Na przykład:

mniam zainstalować epel- *

Załadowane wtyczki: najszybszy błąd Ładowanie prędkości kopii lustrzanych z buforowanego pliku hosta * baza: centos.fasthost.ru * dodatki: centos.fasthost.ru * aktualizacje: centos.fasthost.ru Rozwiązywanie zależności -> Uruchamianie sprawdzania transakcji ---> Pakiet epel-release .noarch 0: 7-11 zostanie zainstalowany -> Zakończona zależność Rozwiązanie Zainstaluj 1 pakiet Całkowity rozmiar pliku do pobrania: 15 k Zainstalowany rozmiar: 24 k Czy to jest ok [r / d / N]: 

Jeśli wpiszesz po prostu:

mniam zainstalować epel

Brak dostępnego pakietu epel. Błąd: nic nie można zrobić 

Niestety paczka nie jest widoczna.

Yum pozwala zainstalować wiele pakietów jednocześnie:

mniam zainstaluj httpd php wget rsyslog

Zainstaluj ponownie pakiet:

Ponownie zainstaluj proftpd

Aby usunąć zainstalowany pakiet za pomocą yum, użyj parametru usuń:

mniam usuń httpd

Ale przed odinstalowaniem dowolnego pakietu zaleca się najpierw sprawdzić, czy nie ma zależności (istnieją pakiety, których usunięcie pociąga za sobą usunięcie wielu innych pakietów, co w rezultacie prowadzi do niesprawności systemu):

mniam deplist proftpd

Znajdź paczkę według nazwy lub opisu:

mniam szukaj nginx

Korzystając z opcji zapewnia, możesz znaleźć pakiety zawierające określony plik, na przykład:

yum zapewnia * / squid.conf

Możesz zaktualizować wszystkie zainstalowane pakiety za pomocą polecenia:

mniam aktualizacja

Możesz zaktualizować tylko określony pakiet, podając jego nazwę:

mniam aktualizuj php

Sprawdź, czy dostępnych aktualizacji systemu można dokonać za pomocą polecenia:

mniam sprawdź aktualizację

Uzyskaj informacje o dostępnych aktualizacjach bezpieczeństwa:

mniam aktualizacja listy bezpieczeństwa

Zdarzają się przypadki, gdy po aktualizacji pakietu lub usługi pojawiają się problemy. Na przykład po aktualizacji php Twoja witryna przestała działać. Możesz zwrócić poprzednią wersję pakietu, wycofując zainstalowany pakiet za pomocą yum:

mniam obniżyć perl

Chciałem również zwrócić uwagę na grupową instalację pakietów za pomocą grouplist. Repozytorium ma predefiniowane grupy pakietów z różnymi zestawami programów. Możesz wyświetlić listę dostępnych grup:

mniam grouplist

Rozważ przykład arkusza grupy „Web Web”. Uzyskaj informacje o grupie i zawartych w niej pakietach:

yum groupinfo „Podstawowy serwer WWW”

Podczas sprawdzania widzimy, że zestaw pakietów i usług zostanie zainstalowany dla serwera WWW.

I kolejny przydatny arkusz grupy, Narzędzia administracji systemu:

yum groupinfo „Narzędzia administracji systemu”

Jak widać, ten arkusz zawiera pakiety, które będą przydatne do monitorowania i debugowania..

Możesz ustawić listę grup za pomocą polecenia:

yum groupinstall „Narzędzia administracyjne systemu”

Zainstalowane pakiety będą znajdować się w osobnym bloku „Zainstalowane grupy”:

Mniam: historia i dzienniki instalowania / odinstalowywania pakietów

Możesz wyświetlić informacje o historii instalacji pakietów yum (lista transakcji) za pomocą polecenia:

mniam lista historii

Dane wyjściowe składają się z 5 kolumn, pierwsza wyświetla identyfikator transakcji, za pomocą którego można zobaczyć wszystkie informacje (zainstalowane pakiety, zależności):

Na przykład:

mniam informacje o historii 10

Ponadto możesz anulować tę transakcję za pomocą polecenia:

mniam historia cofnąć 10

W moim przypadku 4 pakiety zostałyby usunięte:

Ponadto wszystkie informacje dotyczące historii instalacji / usuwania pakietu przez menedżera yum można wyświetlić w dzienniku /var/log/yum.log:
cat /var/log/yum.log

03 września 11:06:38 Zainstalowano: mpfr-3.1.1-4.el7.x86_64 03 września 11:06:38 Zainstalowano: libmpc-1.0.1-3.el7.x86_64 03 września 11:06:38 Zainstalowano: libquadmath -4.8.5-36.el7_6.2.x86_64 wrz 03 11:06:38 Zainstalowano: apr-1.4.8-3.el7_4.1.x86_64 wrz 03 11:06:38 Zainstalowano: m4-1.4.16-10 .el7.x86_64 wrz 03 11:06:38 Zainstalowano: apr-util-1.5.2-6.el7.x86_64 wrz 03 11:06:38 Zainstalowano: unzip-6.0-19.el7.x86_64 wrz 03 11:06: 38 Zainstalowano: łata-2.7.1-10.el7_5.x86_64 03 września 11:06:38 Zainstalowano: 1: perl-Błąd-0.17020-2.el7.noarch 03 września 11:06:38 Zainstalowano: boost-system-1.53 .0-27.el7.x86_64 wrz 03 11:06:38 Zainstalowano: perl-Thread-Queue-3.02-2.el7.noarch 03.03 11:06:38 Zainstalowano: avahi-libs-0.6.31-19.el7 .x86_64 wrz 03 11:06:38 Zainstalowano: boost-thread-1.53.0-27.el7.x86_64 wrz 03 11:06:38 Zainstalowano: zip-3.0-11.el7.x86_64 wrz 03 11:06:38 Zainstalowano: boost-thread-1.53.0-27.el7.x86_64 : libgfortran-4.8.5-36.el7_6.2.x86_64 03.03 11:06:39 Zainstalowano: cpp-4.8.5-36.el7_6.2.x86_64 

Dodatkowe przydatne opcje mniam

Narzędzie yum ma kilka przydatnych opcji, z których często korzystasz podczas zarządzania pakietami. Aby podczas instalowania lub usuwania pakietów, po wprowadzeniu polecenia nie podejmować żadnych działań, można skorzystać z tej opcji -y, na przykład:

mniam aktualizuj -y mniam instaluj httpd -y

Aby odpowiedzieć „nie” na żądanie, musisz określić opcję:

--zakładać

Użyj yum bez wtyczek lub wyłącz określoną wtyczkę:

--noplugins

--disableplugin = najszybszy błąd

Włącz wyłączoną wtyczkę:

--enableplugin = najszybszy błąd

Włącz wyłączone repozytorium:

Aktualizacja yum -enablerepo = atomowa

Wyłącz określone repozytorium:

Aktualizacja yum -disablerepo = atomowa

Plik konfiguracyjny /etc/yum.conf

Plik konfiguracyjny mniam - /etc/yum.conf.

Główne parametry pliku konfiguracyjnego:

cachedir- lokalna pamięć podręczna pakietów (domyślnie / var / cache / yum)

plik dziennika- ścieżka do pliku dziennika yum

przestarzałe - aktualizuj lub nie, nieaktualne pakiety (1-tak, 0-nie)

gpgcheck - weryfikacja podpisu paczki przed instalacją (1-tak, 0-nie)

Keepcache - pamięć podręczna (1-tak, 0-nie)

cachedir - katalog do przechowywania pamięci podręcznej (domyślnie / var / cache / yum)

poziom debugowania - poziom debugowania od 1 do 10

wtyczki - włącza wtyczki yum (1-tak, 0-nie)

bugtracker_url - link, w którym zostaną zarejestrowane mniam błędy

installonly_limit - maksymalna liczba wersji, które można zainstalować dla jednego pakietu.

Przydatne wtyczki mniam

Po co są wtyczki yum? Podobnie jak gdzie indziej, uprość naszą pracę.

Niektóre popularne wtyczki i ich opis:

mniam plugin-najszybszy błąd - wtyczka do pomiaru prędkości serwerów lustrzanych i zapewniająca najszybszą instalację pakietów.

yum-plugin-security - wtyczka, która zawiera listę aktualizacji związanych tylko z bezpieczeństwem systemu.

mniam-plugin-klucze - pozwala pracować z kluczami klucze, klucze-informacje, klucze-dane, klucze-usuń

Katalog, w którym przechowywane są wszystkie wtyczki / etc / yum /

yum-plugin-versionlock - pozwala zablokować aktualizację określonych pakietów

Aby wyświetlić listę dostępnych wtyczek yum, wykonaj:

mniam szukaj mniam plugin

=================================================== ====================== Dopasowane N / S: yum-plugin ===================== =================================================== PackageKit-yum-plugin.x86_64: Powiedz PackageKit, aby sprawdzał dostępność aktualizacji, gdy yum wyjdzie z fusioninventory-agent-yum-plugin.noarch: Poproś agenta FusionInventory o wysłanie spisu, gdy yum wyjdzie z kabi-yum-plugins.noarch: Jądro Linux CentOS ABI yum plugin yum-plugin-aliases.noarch: Yum plugin, aby włączyć filtry aliasów yum-plugin-auto-update-debug-info.noarch: Yum plugin, aby umożliwić automatyczne aktualizacje zainstalowanych pakietów debuginfo yum-plugin-changelog.noarch: Yum plugin do przeglądania dzienników zmian pakietów przed / po aktualizacji yum-plugin-copr.noarch: yum plugin, aby dodać polecenie copr yum-plugin-najszybciejmirror.noarch: Yum plugin, który wybiera najszybsze repozytorium z listy kopii lustrzanych yum-plugin-filter-data.noarch: Yum plugin do listy filtrów na podstawie danych pakietu yum-plugin-fs-snapshot.noarch: Yum plugin do automatycznego tworzenia migawek twojego f ilesystems podczas aktualizacji yum-plugin-keys.noarch: Yum plugin do radzenia sobie z kluczami do podpisywania yum-plugin-list-data.noarch: Yum plugin do listy danych zbiorczych yum-plugin-local.noarch: Yum plugin do automatycznego zarządzania lokalnymi repo. pobranych pakietów yum-plugin-merge-conf.noarch: Wtyczka Yum do scalania zmian konfiguracji podczas instalowania pakietów yum-plugin-ovl.noarch: Wtyczka Yum do obejścia nakładek wydaje problemy wtyczki po transakcji-transakcyjnej.noarch: Mniam plugin do uruchamiania dowolnych poleceń, gdy niektóre pkgs działają na yum-plugin-priority.noarch: plugin nadający priorytet pakietom z różne repo yum-plugin-protectbase.noarch: Wtyczka Yum do ochrony pakietów przed niektórymi repozytoriami. yum-plugin-ps.noarch: Yum plugin do przeglądania procesów, w odniesieniu do pakietów yum-plugin-remove-with-leaves.noarch: Yum plugin do usuwania zależności, które nie są już używane z powodu usunięcia yum-plugin-rpm -warm-cache.noarch: Wtyczka Yum do wcześniejszego dostępu do plików rpmdb w celu rozgrzania dostępu do db yum-plugin-show-leaves.noarch: Wtyczka Yum, która pokazuje nowo zainstalowane pakiety liści yum-plugin-tmprepo.noarch: Wtyczka Yum dodać tymczasowe repozytoria yum-plugin-tsflags.noarch: Yum plugin, aby dodać tsflags za pomocą opcji wiersza polecenia yum-plugin-upgrade-helper.noarch: Yum plugin, aby pomóc w aktualizacji do następnej wersji dystrybucyjnej yum-plugin-Verify.noarch: Yum wtyczka, aby dodać polecenie weryfikacji i opcje yum-plugin-versionlock.noarch: Yum wtyczka do zablokowania aktualizacji określonych pakietów 

Możesz zainstalować wybraną wtyczkę za pomocą polecenia yum install, jak każdy inny pakiet:

mniam zainstaluj yum-plugin-changelog

yum -y zainstaluj yum-versionlock

Aby zablokować aktualizację pakietu za pomocą wtyczki:

mniam wersja lock nginx

Lista zablokowanych pakietów:

mniam lista blokady wersji

Usuń pakiet z zablokowanych:

yum versionlock usuń nginx

Jeśli w pewnym momencie nie musisz używać określonej wtyczki, możesz ją wyłączyć, dodając prefiks, gdy yum jest wywoływany:

--disableplugin = najszybszy błąd

Lub wyłącz wszystkie wtyczki zainstalowane w systemie:

--noplugins

Używanie yum przez proxy

Yum używa protokołu HTTP / 1.1 do pracy z repozytoriami programów. Jeśli twój serwer Linux ma dostęp do Internetu tylko przez serwer proxy HTTP, możesz podać nazwę serwera proxy w pliku konfiguracyjnym /etc/yum.con w sekcji [main]:

proxy = http: // nazwa serwera proxy: 3128

Jeśli serwer proxy wymaga autoryzacji, dodaj linie:

proxy_proxy_username = użytkownik
proxy_password = pass

Aby sprawdzić yum przez serwer proxy, użyj polecenia

mniam wyczyść wszystko &&mych szukaj nginx

Do weryfikacji podałem publiczny serwer proxy z Niemiec, a podczas instalacji działała wtyczka najszybszy błąd, znalazłem lustra, z których prędkość będzie wyższa:

Jeśli potrzebujesz używać proxy tylko dla niektórych repozytoriów, nie musisz edytować pliku /etc/yum.conf i określać ustawienia proxy w pliku konfiguracyjnym repozytorium /etc/yum.repos.d/your_config.repo.

W tym artykule przyjrzeliśmy się podstawowym funkcjom menedżera rpm dla pakietu yum na Linux CentOS / RHEL. W następnym artykule porozmawiamy więcej o zarządzaniu repozytoriami w Yum. Spotkaj się, spróbuj użyć mniam w swojej pracy.