Bir grup paketi eski sürüme geçirme


11

Belki bir PPA veya harici kaynaktan paketler yüklediniz (örneğin, Ubuntu depolarında bulunan bir paket için bir .deb indirdiniz.).
Sonra bu yükseltilmiş sürümleri resmi depolara bırakmaya karar veriyorsunuz.
İlk adım sources.list dosyasının girişlerini kaldırmaktır.

Tümünü mevcut en yüksek sürüme indirmenin bir yolu var mı? Belirli sürümleri yükleyebileceğinizi biliyorum

apt-get install [paket] = [sürüm]
Ama hepsini indirebilir misin?


Mevcut PPA uygulamalarını kaldırmak ve daha sonra bunları resmi depodan yüklemek için bir komut mu demek istediniz? Böyle bir şey yapardım sudo apt-get -y remove package1 package2 package3 && sudo apt-get install package1 package2 package3- sudo apt-get repocleanörneğin bunu yapmak gibi tek bir komut olduğuna inanmıyorum .
kingmilo

Bu yüzden depoladığım tüm paketleri depodan almam gerekiyor Mevcut en yüksek sürüme yükseltme yoktur (openSUSEs zypper ile yapabileceğiniz bir şeydir).
Manuel

Repoyu kaldırırsanız ve paket resmi depoda mevcutsa ve bu paket, eklediğiniz repoda bulunan paketten daha yüksek bir sürümse, bu paket resmi depodaki sürüme yükseltilir.
kingmilo

1
Evet, ama değilse? Yükseltme hiç sorun değil, sürüm düşürme.
Manuel

Yanıtlar:


16

Partiye biraz geç kaldım ama bir cevap ararken bu soruyu buldum ve şimdi paylaşmak için kendi cevabım var.

Bunu apt_preferences'ın gizemli dünyasında yapabileceğine inanıyorum.

/ Tmp / a_p (ya da her neyse) adında bir dosya yapmayı deneyin ...

Package: *
Pin: release a=*-backports
Pin-Priority: 100

Package: *
Pin: release n=*
Pin-Priority: 1001

O zaman koş:

sudo apt-get -o Dir::Etc::Preferences=/tmp/a_p dist-upgrade

Dosyanın ikinci bölümü temel olarak OP'nin istediği şeyi yapar, çünkü herhangi bir canlı depodaki tüm paketlerin önceliğini, bir sürüm düşürme olsa bile yüklemelerini sağlamak için kullanır.

İlk bölüm, ikinci bölümün tüm arka kapıların kurulumunu tetiklemesini önler. Bunu umursabilir ya da istemeyebilirsiniz. Neyin işe yaradığını görmek için uğraşmayı öneririm. apt-cache -o Dir::Etc::Preferences=/tmp/a_p policy somepkgA_p dosyasının belirli paketler üzerinde nasıl bir etkisi olduğunu görmek için kullanabilirsiniz .

TIM


6

Tamam, ne bulunursa komut dosyası ppa-purge

Bir PPA ve yükseltilmiş yazılım eklediyseniz, repoyu kaldırabilir ve bu adımda yükseltilmiş tüm paketleri eski sürüme geçirebilirsiniz.

ppa-purge [repo adı]

Bu başka bir kişi için yararlı mı?

Ancak, yüklü sürüm daha yüksek olsa bile mevcut en yüksek sürümü yükleyebiliyorsanız hala açıktır ...

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.