YUM 업데이트에서 특정 리포지토리 제외


13

RHEL 5.5에서 시스템 전체 yum 업데이트를 수행 중이며 IUS EPEL 저장소에 누락 된 종속성 오류가 발생했습니다.

php53-mcrypt-5.3.3-4.ius.el5.x86_64 from installed has depsolving problems
--> Missing Dependency: php53-common = 5.3.3-4.ius.el5 is needed by package php53-mcrypt-   5.3.3-4.ius.el5.x86_64 (installed)
Error: Missing Dependency: php53-common = 5.3.3-4.ius.el5 is needed by package php53-mcrypt-5.3.3-4.ius.el5.x86_64 (installed)

이 종속성 문제를 건너 뛰기 위해 IUS EPEL 저장소를 무시하고 다른 모든 저장소 에 대해 YUM 업데이트를 실행하는 방법 이 있습니까?

설명

Redhat Network에서만 업데이트를 설치하려고합니다. 레포 이름을 찾을 수 없으므로 sudo yum --disablerepo=* --enablerepo=rhel update사용중인 yum 버전이 뒤에 나열된 여러 리포지토리를 지원하지 않기 때문에 같은 작업을 수행 할 수 없습니다 --disablerepo.

최신 정보

내 임시 해결 방법은 실행하는 것 sudo yum --exclude=php53* update입니다. 더 좋은 방법이 있다고 확신합니다. 이 더 좋은 방법은 실제 문제를 해결하는 것을 포함하므로 IUS Community Project 에도 버그를 제기했습니다 .

업데이트 # 2

의존성 문제를 발견 한 것 같습니다 . 여전히 실행 가능한 해결 방법이 있어야한다고 생각합니다.

감사!


설명을 반영하기 위해 답변을 업데이트했습니다.
plasmid87

답변:


21

비활성화 repo 스위치를 사용해보십시오.

--disablerepo=REPONAME

최신 정보

현재 "알려진"(활성화 및 비활성화) 모든 리포지토리를 찾으려면 :

yum repolist all

그런 다음 위의 패키지에 대해 슬픔을 일으키는 저장소를 찾으려면 다음을 시도하십시오.

yum list php53-mcrypt-5.3.3-4.ius.el5.x86_64 --showduplicates

그러면 위의 패키지를 제공하는 리포지토리가 표시됩니다 (로컬에 설치된 패키지를 표시하려면 목록에도 "설치됨"이 표시됨).

disable repo 스위치를 사용하여 저장소를 알고 있으면 disable 스위치를 다시 시도하십시오.

yum update --disablerepo=[from above]

위 단계에서 생략하려는 저장소를 단일화하는 데 실패한 경우, 저장소 정의의 RHEL 기본 위치 인 /etc/yum.repos.d/를 살펴보십시오 . 이 디렉토리에 있으면 모든 비표준 RHEL 기본 및 업데이트 저장소 파일을 찾고 enabled = 0을 포함하십시오 ( 예 :

[repo]
enabled=0

도움이 되었기를 바랍니다.


여러 리포지토리를 지정할 수 있으면 작동 할 수 있습니다. 나는 시도 --disablerepo=epel --disablerepo=ius하고 --disablerepo=epel,ius.
Robin

yum repolist allepos, ius 및 rhel-x86_64-server-5 만 사용할 수 있음을 보여줍니다. 귀하의 --showduplicates명령 프로그램을 패키지하는 IUS의 REPO에서 설치한다. 그래서 다음을 시도했지만 sudo yum --disablerepo=* --enablerepo=rhel-x86_64-server-5 update여전히 동일한 패키지에서 종속성 오류가 발생합니다. 또한 enabled=0/etc/yum.repos.d/ 에서 설정 을 변경하여 repos를 비활성화하려고 시도했습니다.
Robin

IUS 저장소를 설치할 때 기본적으로 활성화되도록 구성되어 있다고 생각합니다. 대신 sudo yum update --disablerepo=ius다른 모든 리포지토리가 기본적으로 활성화되어 있다고 가정합니다. 그렇지 않으면 sudo yum update --exclude=php53-mcrypt-5.3.3-4.ius.el5.x86_64이 패키지를 완전히 건너 뛰십시오.
plasmid87

이러한 옵션 중 어느 것도 작동하지 않습니다. 뭔가 빠졌습니다.
Robin

그런 다음 업데이트 프로세스의 일부로 업그레이드 된 패키지가 필요한 것이 있다고 상상할 수 있습니다. 실행 sudo yum deplist php53-mcrypt-5.3.3-4.ius.el5.x86_64하면 해당 특정 패키지에 대한 모든 종속성 및 공급자가 표시됩니다. PHP 패키지와 RHEL에 대한 경험에서 이것은 일반적인 문제입니다. 당면한 문제에서 벗어나고 싶지 않지만 Remi 가 PHP에 가장 적합한 패키지를 제공한다는 것을 알았 으므로 repos로 옮긴 후에 PHP와의 종속성 문제가 없었습니다.
plasmid87

1

가장 쉬운 방법은 /etc/yum.repos.d/에서 원치 않는 저장소로 리눅스를 주석 처리하는 것입니다.


1

yum 명령 행에서 여러 저장소를 비활성화 할 수 있습니다.

yum update --disablerepo=myrepo1 --disablerepo=myrepo2 --disablerepo=myrepo3

그러나 그렇게하면 원하는 저장소를 명시 적으로 활성화해야합니다.

yum update --disablerepo=myrepo1 --disablerepo=myrepo2 \
           --disablerepo=myrepo3 --enablerepo=TheRepoIWant

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.