업데이트를 설치하기 위해 터미널에서 apt를 사용합니다. 사용해보면 apt-get -f install
보여요
0 upgraded, 7 newly installed, 428 to remove and 3 not upgraded.
4 not fully installed or removed.
Need to get 5691kB of archives.
After this operation, 451MB disk space will be freed.
Do you want to continue [Y/n]?
428 패키지를 삭제하고 싶지 않습니다. 이들은 다른 응용 프로그램과 연결되어 있습니다. (일부 패키지는 Ruby1.8, Perl, Python 라이브러리 등입니다.) 428개 패키지를 제거하지 않고 7개 패키지를 설치하려면 어떻게 해야 합니까?
답변1
그런 다음 종속성이 무엇인지 확인해야 합니다.
이런 일이 발생하는 이유는 단 하나입니다. 명시적으로 설치를 요청한 패키지가 다수의 다른 패키지가 의존하는 패키지와 충돌합니다.
즉, 428개 패키지는 libfoo
무엇을 하든 libfoo
제거되므로 다른 모든 패키지는 .~ 해야 하다제거됩니다.
$20는 Ubuntu와 다른 것 사이에 리포지토리를 혼합하거나 주요 배포판의 리포지토리를 혼합한다는 의미입니다. Debian, Mint 또는 PPA 소스가 있습니까?
답변2
적절한 핀 사용
http://jaqque.sbih.org/kplug/apt-pinning.html
어떤 패키지에 이러한 모든 종속성이 있는지 정확히 파악하는 데 시간이 걸릴 수 있지만 고정하면 나머지는 그대로 유지됩니다.
그러나 aptitude를 사용하면 이를 식별하고 고정하는 것이 더 쉬울 수 있습니다.
답변3
$ apt-get Upgrade package1 package2 ..를 입력할 수 있습니다. 여기서 package1, package2는 apt-get이 삭제하려는 모든 패키지입니다. 목록이 길면 목록을 복사하여 파일에 붙여넣으세요. "apt-get Upgrade" 이전에 제거하려는 모든 패키지의 줄을 추가하고 입력하세요. 파일을 저장하고 실행합니다: $ . /문서