Yum은 어떤 저장소가 특정 패키지를 제공하는지 알려줄 수 있습니까?
-
10-07-2019 - |
문제
희망의 짧은 버전의 질문 : 특정 패키지가 설치된 컴퓨터에 있다면 해당 패키지가 제공 한 구성된 저장소 중 어느 것이 있는지 알려주는 yum 명령이 있습니까? (또는 교대로, 어떤 저장소가 설치되지 않은 패키지를 제공 할 것인지.)
배경 몇 가지 상황이 필요한 경우 : 우리는 우리가 얻는 yum 리포지토리의 미로가 있습니다. 특정 RPM 패키지가 설치된 컴퓨터와 명백히 불충분 한 리포지토리가있는 다른 기계가 구성되어 있으므로 해당 컴퓨터에 원하는 패키지를 설치할 수 없습니다. 새로운 기계에 최소한의 필요한 저장소를 추가해야합니다. 한 기계에서 다른 기계로 리포지토리를 산탄 당 할 수는 없습니다. 그리고 나가서 RPM을 잡는 것은 이것이 재현 가능하기 때문에 선택 사항이 아닙니다.
해결책
yum list packagename
패키지가 출력의 세 번째 열에있는 리포지토리가 표시됩니다.
이미 설치된 패키지의 경우 세 번째 열에는 "설치된"이 표시되므로 작동하지 않습니다. 이 경우 "rpm -qi packagename"을 수행 할 수 있습니다. 일반적으로 공급 업체, 패키지 및 빌드 호스트 태그는 패키지가 속한 저장소에 표시됩니다. 또한 패키지 버전 번호에 추가 된 일부 리포 기호가 추가되는 경우가 일반적입니다.
다른 팁
repoquery -i {packagename}
이것은 당신에게 실제 리포 이름을 제공합니다. repoquery는 yum-utils에 의해 제공됩니다.
당신이 사용할 수있는 yum -v search
그것은 당신에게 페포와 함께 패키지를 보여줄 것입니다. --showduplicates
해당 패키지의 모든 버전이 표시됩니다.
단일 패키지의 경우 다음과 함께 찾을 수 있습니다.
PACKAGE=ruby-enterprise
repoquery --qf "%{repoid}" $PACKAGE
바꾸다 $ 패키지 관심있는 패키지 이름으로.
특정 저장소에서 온 모든 패키지를
REPO=ruby-enterprise-opt
repoquery --repoid=$REPO -a --qf "%{name}" | sort > repo_packages
rpm -qa --qf "%{name}\n" | sort > installed_packages
comm -1 -2 repo_packages installed_packages
바꾸다 $ repo 당신이 관심있는 저장소의 ID로; 사용 가능한 모든 리포지토리의 ID를 yum repolist
.
주어진 설치된 패키지의 저장소를 발견하는 몇 가지 방법은 다음과 같습니다.
rpm -qi {packagename}
또는
repoquery -i {packagename}
참조 :
yum reinstall [package_name]
그런 다음 확인을 요청하면 시스템을 변경하지 않도록 N을 선택할 수 있습니다.
센토의 샘플 출력 :
Resolving Dependencies
--> Running transaction check
---> Package mc.x86_64 1:4.6.1a-35.el5 set to be updated
--> Finished Dependency Resolution
Dependencies Resolved
==============================================================================================================================================
Package Arch Version Repository Size
==============================================================================================================================================
Reinstalling:
mc x86_64 1:4.6.1a-35.el5 base 2.1 M
Transaction Summary
==============================================================================================================================================
Remove 0 Package(s)
Reinstall 1 Package(s)
Downgrade 0 Package(s)
Total download size: 2.1 M
Is this ok [y/N]: