Przydziel najwyższy priorytet mojemu lokalnemu repozytorium

39

Podsumowanie

Jak mogę ustawić apt-get, aby preferował lokalne pakiety repozytoriów zamiast ponownie pobierać tę samą wersję pakietu z oficjalnych repozytoriów? Lokalne repozytorium jest podpisane i zaufane. Wypróbowaliśmy już priorytet preferencji apt.


Pierwotne pytanie brzmiało: „Jak przypisać najwyższy priorytet lokalnemu repozytorium bez korzystania z pliku sources.list”

Mam skonfigurowane lokalne repozytorium z pobranymi pakietami. Używam go, aby uniknąć pobierania tych samych pakietów przez Internet, gdy muszę ponownie zainstalować Ubuntu. Jest to podstawowe repozytorium utworzone za pomocą apt-ftparchive packages . > Packages. Uczyniłem to zaufanym repozytorium, aby uniknąć ostrzeżenia „nieuwierzytelnione repozytorium”. ( Jeśli masz niezaufane repozytorium aptlub synapticspróbuj pobrać te same pakiety przez Internet, ponieważ jest to zaufane ).

Korzystam z tego lokalnego repozytorium od co najmniej 1 roku. Ale zawsze muszę umieścić linię mojego lokalnego repozytorium na górze sources.listpliku, aby z niej skorzystać. Ale to denerwujące, ponieważ muszę otworzyć terminal i pisać na nim za każdym razem, gdy ponownie instaluję Ubuntu, chociaż jest lepsze narzędzie software-properties-gtk. Nie mogę użyć tego narzędzia, ponieważ umieszcza ono linię źródłową na końcu `sources.list.

A prawdziwym problemem jest tym, apt czy synapticzawsze pobrać pakiet ze źródła, które jest wspomniano wcześniej, bez sprawdzania, czy pakiety są już dostępne w lokalnym repozytorium. Nie mam więc innego wyboru, jak umieścić lokalne źródło na początku sources.listrobienia terminalu (właściwie nie nienawidzę terminala, ale potrzebuję rozwiązania).

Próbowałem tej metody . Ale to mi nie pomaga.

Mój plik preferencji to /etc/apt/preferences.d/local-pin-900

    Package: *
    Pin: release o=Local,n=ubuntu-local
    Pin-Priority: 900

Mój plik wydania to

    Origin: Local
    Label: Local-Ubuntu
    Description: Local Ubuntu Repository
    Codename: ubuntu-local
    MD5Sum:
     ed43222856d18f389c637ac3d7dd6f85          1043412 Packages
     d41d8cd98f00b204e9800998ecf8427e                0 Sources

Kiedy włączę apt-preferencje, apt-cache policypoprawnie pokazuje preferencje, np. Pokazuje, że lokalne repozytorium ma najwyższy priorytet.

Ale kiedy to robię sudo apt-get install <package-name>, aptpróbuje pobrać go z Internetu. Ale kiedy umieszczam moje lokalne repo na górze, instaluje się z lokalnego repozytorium.

Więc moje pytanie jest -> „Czy to możliwe, aby wymusić skłonni do korzystania z lokalnym repozytorium kiedy pakiet jest dostępny w lokalnym repozytorium, bez wyraźnie umieszczając«lokalnego źródła»na szczycie mojej listy repozytorium (np sources.list pliku)? „

Edycja: dane wyjściowe apt-cache policy $package_namesą następujące

  
nautilus-wipe:
  Zainstalowano: (brak)
  Kandydat: 0,1.1-2
  Tabela wersji:
     0,1.1–2 0
        500 http://archive.ubuntu.com/ubuntu/ precision / universe i386 Packages
        Plik 900: / media / Main / Linux-Software / Ubuntu / Precise / Packages

To pokazuje, że moje lokalne repozytorium ma większe preferencje, chociaż nie jest to pierwsze, które znajduje się w sources.listpliku.

Oto wynik działania apt-get install nautilus-wipe

Czytanie list pakietów ... Gotowe
Budowanie drzewa zależności       
Odczytywanie informacji o stanie ... Gotowe
Zostaną zainstalowane następujące NOWE pakiety:
  nautilus-wipe
0 zaktualizowanych, 1 nowo zainstalowanych, 0 do usunięcia i 131 niezaktualizowanych.
Musisz zdobyć 30,7 kB archiwów.
Po tej operacji zostanie wykorzystane 150 kB dodatkowego miejsca na dysku.
„http://archive.ubuntu.com/ubuntu/pool/universe/n/nautilus-wipe/nautilus-wipe_0.1.1-2_i386.deb” nautilus-wipe_0.1.1-2_i386.deb 30730 MD5Sum: 7d497b8dfcefe1c0b51a45f3b046699

Wciąż próbuje pobrać plik z Internetu, choć myślę, że powinien być zadowolony z lokalnego.


Wynik użycia „” lub localhost, jak sugerował mediageek

Korzystanie z localhost nie ma wpływu. ale „” ma, ale nie różni się od mojej metody

    Package: *
    Pin: origin ""
    Pin-Priority: 1001

Użyłem ich przed opublikowaniem pytania. Ale znowu spróbowałem tego (na surowość). Ten sam wynik. apt-cache policypokazując, że moje lokalne repozytorium ma rzeczywiście najwyższy priorytet. ale kiedy próbowałem zainstalować, pojawia się komunikat „Potrzebuję uzyskać XXX / XXX KB archiwum”.

Anwar
źródło
Czy paczka w twoim lokalnym repozytorium była nowsza / równa paczce oficjalnej?
tumbleweed
Tak, oczywiście, zweryfikowałem to za pomocą apt-getpolecenia. Mówi: „Należy pobrać 0 kb”.
Anwar
Chcesz to zweryfikować za pomocąapt-cache policy
tumbleweed
Poprzedni komentarz był błędem. Myślałem, że podałem to w innym pytaniu (dotyczącym instalacji oprogramowania z centrum oprogramowania z lokalnego repozytorium). Tak, już to zweryfikowałem apt-cache policyi zauważyłem, że lokalne repozytorium ma wyższy priorytet. Ale nadal apt-getpróbuję zainstalować go z Internetu. Myślę, że po prostu nie jest możliwe bez użycia sources.listpliku.
Anwar
Pytałem, czy apt-cache policypokazałem, że wersja jest taka sama
tumbleweed

Odpowiedzi:

52

Krótka odpowiedź:

Plik preferencji APT / etc / apt / preferencje można wykorzystać do kontrolowania, które wersje pakietów zostaną wybrane do instalacji.

Oto plik /etc/apt/preferences, który apt-getdecyduje, którą wersję należy wybrać, jeśli istnieje wiele wersji pojedynczego pakietu. Dzięki temu każdy pakiet pochodzący z lokalnego repozytorium będzie miał pierwszeństwo przed innymi pakietami.

Opakowanie: *  
Pin: origin „”  
Priorytet pinów: 1001  

Nie będzie to kontrolować wersji, ale preferencji źródłowej, jeśli oba pakiety mają tę samą wersję. Jeśli chcesz przypisać najwyższy priorytet tej samej wersji pakietu w lokalnym repozytorium, wypisz je u góry do /etc/apt/sources.listpliku>

Odpowiedz na oryginalne pytanie:

Jak przypisać najwyższy priorytet lokalnemu repozytorium bez użycia pliku sources.list?

Nie ma możliwości przypisania najwyższego priorytetu lokalnemu repozytorium bez użycia sources.listpliku. musisz umieścić je na szczycie listy „sources.list”, jeśli chcesz przypisać najwyższy priorytet lokalnemu repozytorium.

Podsumowująca odpowiedź na to pytanie:

Jak mogę ustawić apt-get, aby preferował lokalne pakiety repozytoriów zamiast ponownie pobierać tę samą wersję pakietu z oficjalnych repozytoriów? Lokalne repozytorium jest podpisane i zaufane. Wypróbowaliśmy już priorytet preferencji apt.

Korzystając z /etc/apt/sources.listpliku, musisz umieścić linię lokalnego repozytorium na górze tego pliku. jak ten poniżej.

deb cdrom: [Kubuntu 12.04 LTS _Precise Pangolin_ - Release i386 (20120424)] / ścisłe główne ograniczone
plik deb: / media / Main / Precise-Debs-New /
plik deb: / media / Main / Linux-Software / Ubuntu / Precise /

deb http://archive.ubuntu.com/ubuntu precyzyjny wszechświat ograniczony wieloświat
deb-src http://archive.ubuntu.com/ubuntu precyzyjny wszechświat główny multiverse ograniczony #Dodane przez software-properties

# deb cdrom: [Xubuntu 12.04 LTS _Precise Pangolin_ - Release i386 (20120423.1)] / precyzyjny główny wszechświat ograniczony wszechświat
# deb cdrom: [Ubuntu 12.04 LTS _Precise Pangolin_ - Release i386 (20120423)] / ścisłe główne ograniczone

# deb http://archive.canonical.com/ubuntu precyzyjny partner
# deb-src http://archive.canonical.com/ubuntu precyzyjny partner
# deb http://extras.ubuntu.com/ubuntu precyzyjny główny
# deb-src http://extras.ubuntu.com/ubuntu dokładny główny

I tak, „apt_preference” nie ma nic wspólnego z wybieraniem instancji pakietów o tej samej wersji. Chodzi o to, że nie można użyć /etc/apt/preferencepliku, aby wymusić wybranie / użycie .debpliku z lokalnego repozytorium poprzez przypisanie najwyższego priorytetu do lokalnego. Ten plik (preferencja) służy do wybierania konkretnej wersji, a nie konkretnej instancji (plik .deb) tej samej wersji. W tym drugim przypadku musisz użyć /etc/apt/sources.listpliku z wyżej wymienioną metodą.


Wyjaśnienie:

Wydaje się, że wszyscy źle zrozumieliśmy apt_preferencecel, instrukcja apt_preference opisuje to w pierwszych 3 akapitach !!

Plik preferencji APT / etc / apt / preferencje można wykorzystać do kontrolowania, które wersje pakietów zostaną wybrane do instalacji.

Kilka wersji pakietu może być dostępnych do zainstalowania, gdy plik sources.list (5) zawiera odniesienia do więcej niż jednej dystrybucji (na przykład stabilnej i testowej). APT przypisuje priorytet każdej dostępnej wersji. Z zastrzeżeniem ograniczeń zależności, apt-get (8) wybiera wersję o najwyższym priorytecie instalacji. Plik preferencji APT domyślnie zastępuje priorytety, które APT domyślnie przypisuje do wersji pakietu, tym samym dając użytkownikowi kontrolę nad tym, który z nich zostanie wybrany do instalacji.

A bardzo ważny jest trzeci akapit

Kilka instancji tej samej wersji pakietu może być dostępnych, gdy plik sources.list (5) zawiera odwołania do więcej niż jednego źródła. W tym przypadku apt-get (8) pobiera instancję najwcześniej wymienioną w pliku sources.list (5). Plik preferencji APT nie wpływa na wybór instancji, a jedynie na wybór wersji .

Te kursywa zostały wykonane przeze mnie

Zobaczmy to na przykładzie:

Mam precyzyjną wersję compiz-fusion-plugins-extra, ale wyłączyłem ją dla celów demonstracyjnych

Oto plik /etc/apt/preferences, który apt-getdecyduje, którą wersję należy wybrać, jeśli istnieje wiele wersji pojedynczego pakietu. (W tym przykładzie compiz-fusion-plugins-extrama kilka wersji.

Opakowanie: *  
Pin: origin „”  
Priorytet pinów: 1001  

Ten plik mówi, apt-getaby zainstalować z lokalnego repozytorium dla wszystkich pakietów, które mają kilka wersji, istnieje w innym repozytorium.

Innymi słowy, jeśli mam pakiet xappsz wersją 1.0w moim lokalnym repozytorium, a ten sam pakiet xappsistnieje w repozytorium Precise z wyższą wersją, powiedzmy 2.0, apt-getże preferuje wersję z lokalnego repozytorium, tj 1.0. Wersję .

Oto mój /etc/apt/sources.listplik

deb http://archive.ubuntu.com/ubuntu precyzyjny wszechświat ograniczony wieloświat
deb-src http://archive.ubuntu.com/ubuntu precyzyjny wszechświat główny multiverse ograniczony #Dodane przez software-properties
deb http://security.ubuntu.com/ubuntu/ precyzyjny wszechświat zabezpieczeń wszechświat ograniczony
deb http://archive.ubuntu.com/ubuntu precyzyjne aktualizacje uniwersalny główny multiwers ograniczony
deb http://archive.ubuntu.com/ubuntu precyzyjne-backports wszechświat główny multiwers ograniczony

# deb http://archive.canonical.com/ubuntu precyzyjny partner
# deb-src http://archive.canonical.com/ubuntu precyzyjny partner
# deb http://extras.ubuntu.com/ubuntu precyzyjny główny
# deb-src http://extras.ubuntu.com/ubuntu dokładny główny


plik deb: / media / Main / Linux-Software / Ubuntu / Oneiric / #to jest repozytorium oniryczne.
plik deb: / media / Main / Linux-Software / Ubuntu / Natty / natty /
plik deb: / media / Main / Linux-Software / Ubuntu / Natty / kubuntu /
plik deb: / media / Main / Linux-Software / Ubuntu / Natty / natty_new /

Chociaż wcześniej wymieniłem repozytorium precyzyjne w pliku, nie powoduje apt-getto wybrania pakietu z tego repozytorium. Jak opisano w instrukcji

Plik preferencji APT nie wpływa na wybór instancji, a jedynie na wybór wersji.

Tak więc wynik polecenia apt-cache policy compiz-fusion-plugins-extrabył zgodny z oczekiwaniami, jak poniżej

anwar @ edubuntu-lenovo: / etc / apt $ apt-cache policy compiz-fusion-plugins-extra 
compiz-fusion-plugins-extra:
  Zainstalowano: (brak)
  Kandydat: 0.9.5.94-0ubuntu1 / ** wybór niższych wersji dla priorytetu ** /
  Tabela wersji:
     0.9.7.0 ~ bzr9-0ubuntu6 0
        500 http://archive.ubuntu.com/ubuntu/ precision / universe i386 Packages
     0.9.5.94-0ubuntu1 0
       Plik 1001: / media / Main / Linux-Software / Ubuntu / Oneiric / Packages
     0,9.4-0ubuntu3 0
       Plik 1001: / media / Main / Linux-Software / Ubuntu / Natty / natty / Packages

Tutaj wersja kandydacka to 0.9.5.94-0ubuntu1(która znajduje się w lokalnym repozytorium), a nie 0.9.7.0~bzr9-0ubuntu6 0, która znajduje się w repozytorium dokładnych. chociaż jeden z nich został wymieniony jako pierwszy w sources.listpliku.

Przykładowa apt-getpróba instalacji compiz-fusion-plugins-extrapo ustawieniu najwyższego priorytetu w lokalnym repozytorium.

anwar @ edubuntu-lenovo: ~ $ sudo apt-get install compiz-fusion-plugins-extra 
Czytanie list pakietów ... Gotowe
Budowanie drzewa zależności       
Odczytywanie informacji o stanie ... Gotowe
Następujące pakiety zostały automatycznie zainstalowane i nie są już wymagane:
  x11-apps x11-xfs-utils xinit x11-session-utils libfs6
Użyj polecenia „apt-get autorove”, aby je usunąć.
Zostaną zainstalowane następujące dodatkowe pakiety:
  compiz-core compiz-plugins-default compiz-plugins-extra
  compiz-plugins-main-default libdecoration0 xserver-xorg-core
  xserver-xorg-video-intel
Sugerowane pakiety:
  compizconfig-settings-manager xfonts-100dpi xfonts-75dpi
Następujące pakiety zostaną USUNIĘTE:
  compiz compiz-gnome compizconfig-backend-gconf edubuntu-desktop
  libcompizconfig0 ubuntu-desktop unity xorg xserver-xorg
  xserver-xorg-input-all xserver-xorg-input-evdev xserver-xorg-input-mouse
  xserver-xorg-input-synaptics xserver-xorg-input-vmmouse
  xserver-xorg-input-wacom xserver-xorg-video-all xserver-xorg-video-ati
  xserver-xorg-video-cirrus xserver-xorg-video-fbdev xserver-xorg-video-geode
  xserver-xorg-video-mach64 xserver-xorg-video-xesserver-xorg-video-neomagic
  xserver-xorg-video-nouveau xserver-xorg-video-openchrome
  xserver-xorg-video-qxl xserver-xorg-video-r128 xserver-xorg-video-radeon
  xserver-xorg-video-s3 xserver-xorg-video-savage
  xserver-xorg-video-siliconmotion xserver-xorg-video-sis
  xserver-xorg-video-sisusb xserver-xorg-video-tdfx xserver-xorg-video-trident
  xserver-xorg-video-vesa xserver-xorg-video-vmware
Zostaną zainstalowane następujące NOWE pakiety:
  compiz-fusion-plugins-extra compiz-plugins-extra
Następujące pakiety zostaną obniżone:
  compiz-core compiz-plugins-default compiz-plugins-main-default
  libdecoration0 xserver-xorg-core xserver-xorg-video-intel
0 uaktualnionych, 2 nowo zainstalowane, 6 obniżonych, 37 do usunięcia i 698 niezaktualizowanych.
Musisz uzyskać 0 B / 5,772 kB archiwów.
Po tej operacji zwolnione zostanie 8294 kB miejsca na dysku.
Czy chcesz kontynuować [T / n]? 

Dziwne !!!, Próbuje obniżyć już zainstalowane pakiety compiz precyzyjnie w celu rozwiązania zależności (pasujących do Oneirica) z nowo wybranymi compiz-fusion-plugins-extra!!!.

Bardziej niebezpieczne jest to, że próbuje usunąć pakiety sterowników karty graficznej (xserver-xorg -....), aby uniknąć konfliktu z nowymi kompilacjami.

(Prawdopodobnie, jeśli miałem je również w moim lokalnym repozytorium, mogą bezpiecznie chcieć obniżyć wersję. Ale ponieważ te pakiety są zwykle instalowane, nie pobrałem ich, więc nie mam ich w lokalnym repozytorium, stąd ten wynik) .

Wniosek : Tak więc /etc/apt/preferenceszaleca się używanie tylko z lokalnym repozytorium, jeśli masz pełne repozytorium w systemie lokalnym.

Co jeśli kilka wystąpień (plik .deb) tej samej wersji istnieje w wielu repozytoriach.

Które jest opisane w apt_preferenceinstrukcji

Kilka instancji tej samej wersji pakietu może być dostępnych, gdy plik sources.list (5) zawiera odwołania do więcej niż jednego źródła. W tym przypadku apt-get (8) pobiera instancję najwcześniej wymienioną w pliku sources.list (5).

Przykład przypadków użycia /etc/apt/preferencespliku:

Przykładem zmuszania apt-getdo wyboru wersji dostępnej z niestandardowego repozytorium zamiast standardowej wersji Ubuntu może być dystrybucja „Linux Mint”. Używają tego niestandardowego preferencepliku.

Opakowanie: *
Pin: zwolnij o = linuxmint
Priorytet pinów: 700

Opakowanie: *
Pin: origin packages.linuxmint.com
Priorytet pinów: 700

Opakowanie: *
Pin: release o = Ubuntu
Priorytet pinów: 500

To skutecznie powoduje, że dostarczają pakiety, gdy mają je w swoich repozytoriach. Ale jeśli ich nie mają, używają standardowego repozytorium Ubuntu.


Przykład działający apt-getpo ustawieniu najwyższego priorytetu dla lokalnego repozytorium

Chciałem tylko zainstalować kubuntu-desktop pakiet na Ubuntu, aby przetestować KDE. (Zapomniałem, ustawiłem preferencje za pomocą /etc/apt/preferencepliku) . Miałem iso instalatora kubuntu-12.04-alternate, więc pomyślałem, że mogę go użyć.

(po prawidłowym ustawieniu iso jako źródła repozytorium) uruchomiłem
sudo apt-get install kubuntu-desktop, a potem byłem zaskoczony, widząc wynik poniżej.

anwar @ edubuntu-lenovo: ~ $ sudo apt-get install kubuntu-desktop
Czytanie list pakietów ... Gotowe
Budowanie drzewa zależności       
Odczytywanie informacji o stanie ... Gotowe
Nie można zainstalować niektórych pakietów. Może to oznaczać, że masz
zażądał niemożliwej sytuacji lub jeśli używasz niestabilnej
dystrybucja, że ​​niektóre wymagane pakiety nie zostały jeszcze utworzone
lub został przeniesiony z Przychodzących.
Następujące informacje mogą pomóc rozwiązać problem:

Następujące pakiety mają niezaspokojone zależności:
 kubuntu-desktop: Zależy: język-selektor-kde, ale nie zostanie zainstalowany
                   Poleca: amarok, ale nie zostanie zainstalowany
                   Poleca: apturl-kde, ale nie zostanie zainstalowany
                   Poleca: gdebi-kde, ale nie zostanie zainstalowany
                   Zaleca: gpgsm, ale nie zostanie zainstalowany
                   Zaleca: ibus-qt4, ale nie zostanie zainstalowany
                   Poleca: jockey-kde, ale nie zostanie zainstalowany
                   Zaleca: wtyczki kdegraphics-strigi-plugins, ale nie zostaną zainstalowane
                   Poleca: kdepim-wizards, ale nie zostanie zainstalowany
                   Zaleca: kpackagekit, ale nie zostanie zainstalowany
                   Poleca: libreoffice-kde, ale nie będzie instalowane
                   Zaleca: tlen w stylu libreoffice, ale nie zostanie zainstalowany
                   Poleca: network-manager-pptp-kde, ale nie zostanie zainstalowany
                   Poleca: plazma-widget-facebook, ale nie zostanie zainstalowany
                   Poleca: plazma-widget-kimpanel, ale nie zostanie zainstalowany
                   Poleca: usb-creator-kde, ale nie zostanie zainstalowany
E: Nie można rozwiązać problemów, trzymałeś uszkodzone paczki.

Byłem zaskoczony wynikiem. nagle pamiętam, że ustawiłem preferencję ( do napisania tej odpowiedzi ), /etc/apt/preferenceaby ustawić najwyższy priorytet dla mojego lokalnego repozytorium.

więc uruchomiłem to: apt-cache policy kubuntu-desktopwynik był jak poniżej:

anwar @ edubuntu-lenovo: ~ $ apt-cache policy kubuntu-desktop 
kubuntu-desktop:
  Zainstalowano: (brak)
  Kandydat: 1.222.1kde47 ~ ppa2
  Tabela wersji:
     1,254 0
        500 cdrom: // Kubuntu 12.04 LTS _Precise Pangolin_ - Release i386 (20120424) / precision / main i386 Packages
        500 http://archive.ubuntu.com/ubuntu/ precision / main i386 Packages
     1.222.1kde47 ~ ppa2 0
       Plik 1001: / media / Main / Linux-Software / Ubuntu / Natty / natty / Packages
     1.222,1 0
       Plik 1001: / media / Main / Linux-Software / Ubuntu / Natty / natty / Packages
     1,222 0
       Plik 1001: / media / Main / Linux-Software / Ubuntu / Natty / kubuntu / Packages

W tym wyniku widzimy, że zarówno „cdrom”, jak i „dokładne repozytorium główne” ma wersję 1.254 , podczas gdy lokalne repozytorium ma wersję 1.222.1kde47 ~ ppa2 , która jest niższą wersją. Mimo że są one umieszczane przed lokalnymi w pliku sources.list, lokalne pakiety mają pierwszeństwo.

Aby wyraźnie zobaczyć, że apt-getrzeczywiście próbuje zainstalować z lokalnego, uruchomiłem synaptici dostałem to, co pokazuje, że system Apt uważa 1.222.1kde47 ~ ppa2 za wersję kandydującą do zainstalowania.

wprowadź opis zdjęcia tutaj

apt-cache policy kubuntu-desktopPokazuje też te same rzeczy

anwar @ edubuntu-lenovo: ~ $ apt-cache policy kubuntu-desktop
kubuntu-desktop:
  Zainstalowano: (brak)
  Kandydat: 1.222.1kde47 ~ ppa2
  Tabela wersji:
     1,254 0
        500 cdrom: // Kubuntu 12.04 LTS _Precise Pangolin_ - Release i386 (20120424) / precision / main i386 Packages
        500 http://archive.ubuntu.com/ubuntu/ precision / main i386 Packages
     1.222.1kde47 ~ ppa2 0
       Plik 1001: / media / Main / Linux-Software / Ubuntu / Natty / natty / Packages
     1.222,1 0
       Plik 1001: / media / Main / Linux-Software / Ubuntu / Natty / natty / Packages
     1,222 0
       Plik 1001: / media / Main / Linux-Software / Ubuntu / Natty / kubuntu / Packages

Aby rozwiązać ten problem, usunąłem /etc/apt/preferenceplik sudo rm /etc/apt/preference.

Potem znów to uruchomiłem apt-cache policy kubuntu-desktop. widząc tylko ten oczekiwany wynik.

anwar @ edubuntu-lenovo: ~ $ sudo rm / etc / apt / preferences
anwar @ edubuntu-lenovo: ~ $ sudo apt-cache policy kubuntu-desktop
kubuntu-desktop:
  Zainstalowano: (brak)
  Kandydat: 1,254
  Tabela wersji:
     1,254 0
        500 cdrom: // Kubuntu 12.04 LTS _Precise Pangolin_ - Release i386 (20120424) / precision / main i386 Packages
        500 http://archive.ubuntu.com/ubuntu/ precision / main i386 Packages
     1.222.1kde47 ~ ppa2 0
        500 plików: / media / Main / Linux-Software / Ubuntu / Natty / natty / Packages
     1.222,1 0
        500 plików: / media / Main / Linux-Software / Ubuntu / Natty / natty / Packages
     1,222 0
        500 plików: / media / Main / Linux-Software / Ubuntu / Natty / kubuntu / Packages

Ponownie uruchomiłem to. sudo apt-get install kubuntu-desktopaby zobaczyć wynik poniżej:

......... Niepotrzebne dane zostały usunięte .........

0 zaktualizowanych, 213 nowo zainstalowanych, 0 do usunięcia i 150 niezaktualizowanych.
Musisz uzyskać 0 B / 89,6 MB archiwów.
Po tej operacji zostanie wykorzystane 269 MB dodatkowego miejsca na dysku.
Czy chcesz kontynuować [T / n]? 

Możesz sprawdzić pełny wynik tutaj

Więc jestem prawie pewien części Objaśnienia.


Odniesienie 1: Podręcznik apt_preference

Odniesienie 2: Jak zachować określoną wersję zainstalowanych pakietów

Anwar
źródło
1
+1 za część „Co jeśli kilka wystąpień tej samej wersji” wyjaśnia zachowanie. Ale poczekam tylko do końca tygodnia, może ktoś ma lepsze wytłumaczenie. :)
Savvas Radevic
powinienem dodać przykład przy użyciu lokalnego repozytorium?
Anwar
Jezu ... Mam na myśli dzięki za dobrze wyjaśnioną odpowiedź, ale powinno to być CAŁKOWICIE o wiele prostsze. Dlaczego, u licha, nie można przypisać priorytetu, gdy uruchomione jest apt-add-repository?
Adam Plocher