때때로 소프트웨어 업데이트를 사용할 때 yum update
업데이트할 패키지 요약에 "업데이트 중"과 "종속성 업데이트 중"이라는 두 가지 목록이 표시됩니다. "업데이트 종속성" 목록의 패키지는 이전에 설치되었습니다. 왜 이렇게 별도의 패키지 목록이 있는 걸까요? 이 패키지에 이는 무엇을 의미합니까?
답변1
이는 실제로 업데이트하려는 패키지의 런타임 종속성입니다. 즉, 요청한 소프트웨어가 해당 종속성에 대한 도우미 패키지를 사용하여 직접적으로 또는 간접적으로 사용한다는 의미입니다.
액세스하려는 패키지의 최신 버전은 때때로 해당 패키지가 의존하는 특정 소프트웨어 버전과 연결되어 있거나 특정 소프트웨어 버전을 염두에 두고 설계되었습니다. 따라서 "종속성 업데이트"는 해당 소프트웨어를 사용하기 위해 설치를 요청하는 것을 의미합니다. 필요/업데이트하려면 이러한 다른 패키지를 업그레이드해야 합니다. 그렇지 않으면 소프트웨어했다요청이 불규칙하게 동작할 수도 있습니다.
Windows 세계에서 유사한 개념은 특정 서비스 팩을 설치해야 하는 소프트웨어 제품 또는 패치입니다. 즉, 소프트웨어에는 런타임이 있습니다.의존이 서비스 패키지에.
보다 직접적인 예로, 많은 응용 프로그램은 glibc를 종속성으로 나열합니다. 현재 glibc 버전이 있지만 최신 버전에 대해 컴파일된 버전을 설치하려고 하면 yum은 (메타데이터를 통해) glibc를 업데이트해야 하는지 자동으로 파악합니다.그 다음에요청한 패키지를 설치합니다.
별도로 나열한 이유는 순전히 명확성을 위한 것입니다. 갑자기 많은 양의 소프트웨어를 설치하라는 메시지가 표시 되면 yum
"아니요, 아니요, 아니요. 전혀 그렇게 하라고 요청한 것이 아닙니다!"라고 말하고 뭔가 잘못되었다고 생각할 수 있습니다(예: 버그). 종속성으로 개별적으로 항목을 지정하면 "아니요, 모든 것이 괜찮습니다. 요청한 패키지를 얻으려면 이 패키지를 업데이트하면 됩니다."라는 사실을 알 수 있습니다.
IIRC에는 새 소프트웨어를 다른 방식으로 나열하는 "설치된 종속성" 범주도 있으므로 시스템 업데이트를 통해 도입된 시기와 설치된 패키지를 강제로 업데이트하는 시기를 확인할 수 있습니다.
답변2
"종속성 업데이트"는 바로 귀하의 요청이나 다른 종속성으로 인해 업데이트되는 패키지의 특정 버전 종속성으로 인해 업데이트되어야 하는 패키지입니다. 예를 들어 패키지 업데이트에는 이전에 없었던 새 패키지가 a
필요합니다 . d
사용 가능한 최신 버전의 패키지에는 d
버전 종속성 패키지가 있습니다 c
. c
버전 1이 설치되어 있지만 d
버전 1.2가 필요합니다. d
"종속성 설치" 및 c
"종속성 업데이트"도 마찬가지입니다.
답변3
- B 가
package A version 1
필요 합니다 .package
, version 1
package A
으로 업그레이드 중이지만version 2
이 패키지에는 가 필요합니다package B, version 2
.- 따라서 yum은 자동으로 업그레이드
package B
하고 업그레이드version 2
중임을 알려줍니다package B
.for dependencies