YUM 플러그인 yum-fastestmirror는 어떻게 작동하나요?

YUM 플러그인 yum-fastestmirror는 어떻게 작동하나요?

명령을 실행할 때 YUM이 특정 서버를 계속해서 선택하는 것처럼 보였지만 yum update때로는 대체 서버를 전환하여 사용하는 경우도 있었습니다.

여기저기 살펴보니 yum-fastestmirror.

YUM과 이 플러그인은 어떻게 이를 수행합니까?

답변1

배경

플러그인냠 가장 빠른 거울개념은 매우 간단합니다. 단순히 각 이미지에 대해 YUM이 누적한 시간이 포함된 텍스트 파일을 유지 관리한 다음 YUM이 패키지를 다운로드하라는 요청을 받으면 다운로드 중에 가장 빠르게 나타나는 서버를 사용합니다.

시간은 다음 위치에 저장됩니다.

$ locate timedhosts.txt
/var/cache/yum/x86_64/7/timedhosts.txt

이 파일을 검사하면 각 호스트 이름 옆에 시간이 표시된 호스트 이름만 있음을 알 수 있습니다. 여기서는 가장 빠른 것부터 가장 느린 것 순으로 정렬합니다.

$ sort -k2,2 /var/cache/yum/x86_64/7/timedhosts.txt
mirror.atlanticmetro.net 0.00165295600891
mirror.cc.columbia.edu 0.00172901153564
ewr.edge.kernel.org 0.00207901000977
mirror.es.its.nyu.edu 0.00217700004578
mirror.siena.edu 0.00543117523193
mirror.pit.teraswitch.com 0.0140120983124
mirrors.rit.edu 0.0208911895752
mirror.clarkson.edu 0.0243170261383
mirror.linux.duke.edu 0.0244128704071
mirror.mia11.us.leaseweb.net 0.0328259468079
mirror.hackingand.coffee 0.0435431003571
ftp.ussg.iu.edu 0.0479228496552
mirror.genesishosting.com 0.0481269359589
repo1.ash.innoscale.net 0.050274848938
mirror.den1.denvercolo.net 0.0838551521301
mirror.keystealth.org 0.134334802628
centos.mirror.ndchost.com 0.140916824341

이제 다음 명령을 사용하여 특정 패키지를 다운로드하려는 경우 특정 패키지의 위치를 ​​물을 때 repoquery:

$ $ repoquery --location java-1.8.0-openjdk
http://mirror.atlanticmetro.net/centos/7.7.1908/updates/x86_64/Packages/java-1.8.0-openjdk-1.8.0.222.b10-1.el7_7.i686.rpm
http://mirror.atlanticmetro.net/centos/7.7.1908/updates/x86_64/Packages/java-1.8.0-openjdk-1.8.0.222.b10-1.el7_7.x86_64.rpm

구성

yum-fastestmirror 플러그인에는 자체 구성 파일도 있습니다.

$ more /etc/yum/pluginconf.d/fastestmirror.conf
[main]
enabled=1
verbose=0
always_print_best_host = true
socket_timeout=3
#  Relative paths are relative to the cachedir (and so works for users as well
# as root).
hostfilepath=timedhosts.txt
maxhostfileage=10
maxthreads=15
#exclude=.gov, facebook
#include_only=.nl,.de,.uk,.ie

이 파일을 통해 우리는 과거에 문제를 일으켰거나 어떤 이유로든 허용할 수 없는 것으로 간주되는 특정 이미지를 화이트리스트 및 블랙리스트에 추가하도록 플러그인에 지시할 수 있습니다.

인용하다

관련 정보