CentOS는 dnf가 특정 위치에서 미러를 사용하도록 강제합니다.

CentOS는 dnf가 특정 위치에서 미러를 사용하도록 강제합니다.

CentOS 8을 사용합니다.

dnf필요한 미러 목록을 수동으로 관리할 필요 없이 특정 위치 근처에서만 미러를 강제로 사용하고 싶습니다 . 그래서 수정하고 싶습니다 /etc/yum.repo.d/.

예 를 들어 /etc/yum.repo.d/CentOS-Linux-BaseOS.repo기본 상태는 다음과 같습니다.

[baseos]
name=CentOS Linux $releasever - BaseOS
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=BaseOS&infra=$infra
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial

mirrorlist.centos.org위치별 필터링을 지정하기 위해 쿼리할 때 다음과 같은 매개변수가 있는지 알고 싶습니다 .

mirrorlist=http://mirrorlist.centos.org/?country=us&other-params-ommitted

( country=해봤는데 아무것도 안됨)

이 사이트의 API에 대한 관련 문서를 찾을 수 없습니다.

답변1

그래서 이 질문을 게시하기 전에 더 깊이 파고들어 스스로 답을 얻었으므로 여기에 있습니다.

"Centos Mirror List API"를 검색해서 찾았습니다.웹 서비스용 코드 저장소. 소스를 파고들어 이 코드를 찾았습니다.여기:

  ip=request.remote_route[-1]
  cc=request.query.cc
  debug=request.query.debug
  remote_ip = ipaddr.IPAddress(ip)
  mirrorlistpage = "https://www.centos.org/download/mirrors/"
  if branch == "altarch":
    mirrorlistpage = "https://www.centos.org/download/altarch-mirrors/"

  region = None
  if len(cc) == 5 and cc[2:3] == "-":
    country = cc[:2]
    region = cc[3:]
  elif len(cc) > 0:
    country = cc
  else:
    try:
      country = geodb.city(ip).country.iso_code.lower()
      if country == 'us' or country == 'ca':
        try:
          region = geodb.city(ip).subdivisions.most_specific.iso_code
        except:
          pass
    except:
      country = 'fallback'

cc매개변수는 다음 URL을 사용하여 테스트한 결과 원하는 이미지를 얻은 것 같습니다 .


편집하다

제가 잘못된 문서를 읽었다는 사실이 밝혀져 좀 당황스럽습니다.

관련 정보