Przyczyny błędów podczas uruchamiania programu yum oraz sposób działania programu yum.


Data publikacji:27 grudnia 2020 r.



INFOMARTION > Przyczyny błędów podczas uruchamiania programu yum oraz sposób działania programu yum.

Przegląd.

Dla tych, dla których yum nie działa dobrze, w tej sekcji wyjaśniono, jak działa yum.

Jeśli nie będzie działać prawidłowo, zostanie wyświetlony komunikat "Could not retrieve mirrorlist http://mirrorlist.centos.org/? ..." lub "curl#6 - "Could not resolve host: mirrorlist.centos.org; Unknown error"".

Prawdopodobnie wniosek jest taki, że ustawienia DNS i sieci nie są dobrze skonfigurowane.

Chciałbym wyjaśnić, jak działa yum i jak sobie z nim radzić.

Spis treści

  1. Co to jest yum?
  2. Przyczyny nieprawidłowego działania programu yum
  3. streszczenie

1. Co to jest yum?

Prawdopodobnie zwykle instalujesz różne rzeczy, wykonując polecenie takie jak "yum install httpd", ale gdybyś miał wyjaśnić działanie yum w kilku słowach, byłoby to narzędzie do zarządzania pakietami.

Jak już zapewne wiesz, yum pobiera swoje pliki z internetu.

1-1. Jak działa yum

Przybliżony opis tego procesu wygląda następująco.

・Wybierz serwer docelowy z informacji o repozytorium yum dla swojego serwera.

・Pozyskiwanie danych z serwera docelowego.

Informacje o repozytorium, które należy pobrać, znajdują się w pliku "/etc/yum.repos.d/". Informacje te są wykorzystywane do pobierania danych.

Następujące informacje znajdziesz w "/etc/yum.repos.d/".

[base]
name=CentOS-$releasever - Base
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os&infra=$infra
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

Powyższy adres 'mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os&infra=$infra' jest miejscem, gdzie można go pobrać. '$releasever', '$basearch' i '$infra' są zmiennymi, więc faktyczny adres URL to 'http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=os&infra=', jeśli odpowiada on mojemu środowisku. Rzeczywisty adres URL będzie miał postać "".

Uzyskanie dostępu do tego adresu URL w dowolnej przeglądarce spowoduje wyświetlenie następujących informacji.

http://ftp.riken.jp/Linux/centos/7.9.2009/os/x86_64/
http://ftp.nara.wide.ad.jp/pub/Linux/centos/7.9.2009/os/x86_64/
http://ftp.jaist.ac.jp/pub/Linux/CentOS/7.9.2009/os/x86_64/
http://mirrors.cat.net/centos/7.9.2009/os/x86_64/
http://ftp.iij.ad.jp/pub/linux/centos/7.9.2009/os/x86_64/
http://ftp.yz.yamagata-u.ac.jp/pub/linux/centos/7.9.2009/os/x86_64/
http://ty1.mirror.newmediaexpress.com/centos/7.9.2009/os/x86_64/
http://ftp-srv2.kddilabs.jp/Linux/packages/CentOS/7.9.2009/os/x86_64/
http://mirror.vastspace.net/centos/7.9.2009/os/x86_64/
http://mirror.nus.edu.sg/centos/7.9.2009/os/x86_64/

Pliki pakietów oprogramowania (pliki RPM) są pobierane z powyższego adresu URL.

2. Przyczyny nieprawidłowego działania programu yum

Chcielibyśmy rozważyć powody, dla których to nie działa, opierając się na sposobie działania programu yum.

2-1. przyczyna①Brak połączenia z siecią

Jak wyjaśniono wcześniej, yum udaje się na zewnętrzny serwer, aby pobrać pliki pakietów oprogramowania (pliki RPM). Dlatego nie można uruchomić programu yum, jeśli nie ma połączenia z Internetem.

'ping 8.8.8.8' (gdzie 8.8.8.8 to serwer DNS firmy Google). Sprawdź odpowiedź, uruchamiając coś takiego. Jeśli nie ma odpowiedzi, najprawdopodobniej jest to spowodowane brakiem połączenia z Internetem.

2-2. przyczyna②DNS nie jest skonfigurowany.

yum udaje się na zewnętrzny serwer, aby uzyskać pliki pakietów oprogramowania (pliki RPM), ale zamiast wpisywać bezpośrednio adres IP, używa adresu "http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=os&infra =", na przykład. Dlatego jeśli nie jest znana rozdzielczość nazwy (adres IP związany z) "mirrorlist.centos.org", yum zawiedzie.

Sprawdź odpowiedź, uruchamiając polecenie "ping google.com" lub podobne. Jeśli nie ma odpowiedzi, istnieje duże prawdopodobieństwo, że ustawienia DNS nie są dobrze skonfigurowane.

2-3. przyczyna③Brak informacji o repozytorium na własnym serwerze

Jak wyjaśniono w mechanizmie yum, yum szuka informacji o repozytorium na własnym serwerze, aby znaleźć miejsce, z którego może pobrać informacje. Jeśli jesteś podłączony do Internetu i masz skonfigurowany DNS, jest bardzo prawdopodobne, że ustawienia w "/etc/yum.repos.d/" są nieprawidłowe.

Jeśli opisano je w celach referencyjnych, nie będą działać bez następujących ustawień podstawowych.

[base]
name=CentOS-$releasever - Base
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os&infra=$infra
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

3. streszczenie

W tej sekcji opisano, jak radzić sobie z przypadkami, w których yum nie działa poprawnie po uruchomieniu.

W moim przypadku nie udało mi się nawiązać połączenia z powodu słabego rozwiązywania nazw DNS. Mam nadzieję, że będzie to pomocne dla tych, którzy mają problemy.

Dziękujemy, że oglądaliście do końca.