관련 없는 패키지에서 충족되지 않은 종속성을 수정하지 않고 *apt를 어떻게 사용합니까?

관련 없는 패키지에서 충족되지 않은 종속성을 수정하지 않고 *apt를 어떻게 사용합니까?

keybaseCLI를 설치했지만 불행 keybase하게도 패키지에는 libadwaita, GTK 및 기타 여러 가지 거대한 GUI 항목이 필요한 GUI 클라이언트도 포함되어 있습니다. 이로 인해 설치한 패키지 수와 WSL이 사용하는 디스크 공간이 엄청나게 늘어납니다. 이 때문에 모든 GUI 종속성을 가져오는 것을 피하기 위해 수동으로 설치하여 keybase부풀림 dpkg -i없이 CLI를 사용할 수 있었습니다.

그러나 이로 인해 apt작동이 중단되었습니다. 다른 패키지를 설치하려고 하면(심지어 와 전혀 관련이 없는 패키지라도 keybase) 다음 오류 메시지가 나타납니다.

Reading package lists... Done
Building dependency tree
Reading state information... Done
You might want to run 'apt --fix-broken install' to correct these.
The following packages have unmet dependencies:
 keybase : Depends: libappindicator1 but it is not going to be installed or
                    libayatana-appindicator1 but it is not going to be installed
           Depends: libgconf-2-4 but it is not going to be installed
           Depends: libgtk-3-0 but it is not going to be installed
E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).

내가 찾은 유일한 해결책은 를 사용 keybase하여 일시적으로 제거하고 명령을 dpkg실행한 apt다음 keybase다시 설치하는 것입니다. 하지만 저는 이 솔루션이 마음에 들지 않습니다. keybase시스템을 계속 유지하고 싶습니다 . apt이러한 충족되지 않은 종속성을 무시할 수 있는 방법이 있습니까 ? 또는 중단하지 않고 시스템에서 충족되지 않은 종속성을 유지하는 방법이 있습니까 apt?

답변1

시스템에 충족되지 않은 종속성이 있는 경우 Apt를 사용하여 소프트웨어를 업그레이드하거나 설치할 수 없습니다.

  • "업그레이드에 사용할 수 없습니다."에는 보안 패키지 업그레이드가 포함됩니다. 종속성이 충족되지 않은 시스템은~ 아니다보안 업데이트를 받습니다. 따라서 대부분의 사용자가 시스템을 이 상태로 두는 것은 현명하지 않습니다.

대부분의 우분투 사용자의 경우,충족되지 않은 종속성Ubuntu가 아니거나 잘못된 버전의 소프트웨어를 설치할 때 발생합니다. Ubuntu가 아니거나 잘못된 버전의 패키지를 제거하면 문제가 해결됩니다.

용감한 고급 사용자를 위한, Apt 및 dpkg에는 제한된 재정의를 허용하는 옵션이 있습니다 --force(참조 ). man dpkg이는 우분투 이전 시대의 유산이며 오늘날에는 거의 사용되지 않지만... 당신이 찾고 있는 것일 수도 있습니다. 예를 들어, --force-depends-version:

종속 버전: 종속성을 확인할 때 버전을 신경 쓰지 않습니다. 이는 사전 종속 및 종속 필드에 영향을 미칩니다.

경고: Force는 매우 주의해서 사용해야 하며 업스트림 릴리스에서 종속성 문제가 해결될 때까지 일시적으로만 사용해야 합니다. Apt와 dpkg는 잘못된 버전의 패키지에 대해 계속해서 격렬하게 (그리고 정확하게!) 불평할 수 있습니다. 다른 부작용이 발생할 수 있습니다.

  • 강제 패키지를 영구적인 솔루션으로 사용하지 마십시오. 그것은 눈물과 깨진 시스템으로 끝날 것입니다. deb 패키지가 아닌 영구적인 솔루션이 필요한 경우 소스, 대체 애플리케이션 및/또는 대체 패키징 방법에서 빌드하는 방법을 살펴보세요. 강제 패키지가 설치된 시스템을 릴리스 업그레이드하지 마십시오. 이러한 패키지로 인해 릴리스 업그레이드가 크게 실패할 수 있습니다.

관련 정보