Computer >> 컴퓨터 >  >> 문제 해결 >> Linux

yum 'repo에 대한 유효한 baseurl을 찾을 수 없음' 오류 해결 방법

yum 'repo에 대한 유효한 baseurl을 찾을 수 없음' 오류 해결 방법

yum 패키지 관리자를 사용하는 리눅스 배포판에서는 운영체제 설치를 마친 직후 "Cannot find a valid baseurl for repo: base"라는 오류 메시지가 나타나는 경우가 있습니다. 이 오류는 Fedora, Red Hat, CentOS 배포판에서 가장 흔하게 발생하지만, 호환되는 SUSE 버전에서 yum을 업데이트하려고 할 때도 나타날 수 있습니다. 보통 업데이트를 시도할 때만 이 오류가 발생하는데, 다행히 비교적 간단한 방법으로 해결할 수 있습니다.

방법 1: yum이 baseurl을 찾도록 강제하기

이 오류 메시지는 어떤 이유로든 YUM(Yellowdog Updater, Modified) 시스템이 패키지 정보를 조회하는 데 사용하는 base 저장소에 접근하지 못하고 있다는 의미입니다. 오류를 재현하려면 sudo yum update 명령어를 실행하거나, root 계정으로 로그인한 상태라면 yum update만 입력하면 됩니다. 이번에 정상적으로 업데이트된다면 일시적인 네트워크 문제로 인한 오류이므로 별도의 조치가 필요 없습니다.

yum  repo에 대한 유효한 baseurl을 찾을 수 없음  오류 해결 방법

반대로 오류 메시지가 다시 나타난다면, 가장 먼저 네트워크에 연결되어 있는지 확인해야 합니다. 사실 인터넷 연결 끊김은 이 오류의 가장 흔한 원인입니다. 인터넷이 연결된 상태에서도 유효한 baseurl을 찾지 못한다면 ping mirrorlist.centos.org 명령어를 실행해 결과를 확인해 보세요. ping이 계속 실행되면 Ctrl+C를 눌러 중단한 뒤 결과를 살펴봅니다. CentOS가 아닌 Red Hat이나 Fedora를 사용 중이라면 오류 메시지에 표시된 미러 리스트 URL로 대신 ping을 보내면 됩니다.

서버에 ping이 전혀 응답하지 않는다면 서버 쪽에 일시적인 장애가 발생했을 가능성이 있으니 잠시 기다려야 할 수도 있습니다. 반면 로컬 네트워크에 문제가 있다면, 아래 이미지에 표시된 경로의 설정 파일을 열어 ONBOOT= 항목을 yes 또는 no로 변경해 보세요. 두 값 모두 한 번씩 시도해 보는 것이 좋습니다. 값을 지정한 후 ssh를 통하지 않고 로컬에서 작업 중이라면 sudo dhclient를 실행한 다음 yum 업데이트를 다시 시도합니다. 그래도 패키지 관리자가 업데이트되지 않으면 해당 파일을 다시 수정해 보세요.

yum  repo에 대한 유효한 baseurl을 찾을 수 없음  오류 해결 방법

설정 파일에는 NM_CONTROLLED라는 옵션도 있는데, 이 값을 no로 설정해야 합니다. 이렇게 할 경우 ONBOOT= 역시 no로 맞춰 주는 것이 좋습니다. 참고로 값을 no로 지정할 때는 반드시 소문자로 입력하세요. 일부 버전의 CentOS와 Fedora에서는 대소문자 구분이 적용될 수 있기 때문입니다.

파일 편집을 마쳤다면, 먼저 이더넷 케이블이 컴퓨터의 첫 번째 네트워크 인터페이스에 연결되어 있는지 확인한 뒤 ifdown eth0; ifup eth0 명령어로 네트워크를 재시작해 보세요. 예제처럼 CentOS 7을 사용한다면 파일 이름이 바뀌어 해당 파일을 찾지 못할 수도 있습니다. 이 경우 아래 이미지에 표시된 것과 유사한 패턴의 파일을 찾아보세요. CentOS 개발진이 최소 설치 코드를 개편하면서 일부 네트워크 인터페이스의 이름이 변경되었기 때문입니다.

yum  repo에 대한 유효한 baseurl을 찾을 수 없음  오류 해결 방법

모든 설정이 완료되면 yum 업데이트를 다시 실행하여 정상적으로 작동하는지 확인합니다.

방법 2: baseurl 항목의 주석 해제하기

드물지만 이 오류가 네트워크 문제가 아닌 원인으로 발생하는 경우도 있습니다. 네트워크 연결이 분명히 정상인데도 아무 방법을 써도 해결되지 않는다면, root 권한으로 즐겨 사용하는 텍스트 편집기로 아래 이미지에 표시된 파일을 열어 보세요. 앞서와 마찬가지로 CentOS가 아닌 다른 배포판을 사용한다면 파일 이름만 조금 변경하면 됩니다.

yum  repo에 대한 유효한 baseurl을 찾을 수 없음  오류 해결 방법

파일 안에서 다음과 같은 줄을 찾을 수 있을 것입니다.

baseurl=https://mirror.centos.org/centos/$releasever/os/$basearch/

이 줄이 # 기호 같은 주석 처리 플래그로 시작하지 않는지 확인하세요. 만약 #이 붙어 있다면 이를 제거하고 파일을 저장한 뒤 업데이트를 다시 시도합니다. 주석 플래그 때문에 이 줄이 숨겨져 있으면 시스템이 저장소 정보를 찾지 못해 업데이트가 불가능하지만, 주석을 제거하면 이번에는 정상적으로 업데이트가 진행될 것입니다.