Debian: Czy jest możliwe / bezpieczne instalowanie pakietów ze starszej wersji repozytorium?


21

Obecnie prowadzę testy Debiana (Wheezy) i próbuję uruchomić SCIM . Chcę zainstalować pakiet scim-pinyin , ale nie ma takiego pakietu w repozytorium testowym, chociaż był on w poprzednim stabilnym repozytorium (Squeeze). Kopia pakietu jest niestabilna, ale nie dla mojej architektury (amd64).

Patrząc na wersje pakietów, zauważam, że wersja w stabilnych repozytoriach jest taka sama jak w wersji niestabilnej. W związku z tym mam dwa pytania:

  1. Czy jest jakiś powód, dla którego nie mogę zainstalować pakietu ze starszego repozytorium, ponieważ zakładam, że większość pakietów Squeeze prawdopodobnie będzie spełniała swoje zależności w testowanych wersjach pakietów?

  2. Jaki jest najlepszy sposób na osiągnięcie tego? (Dodaj repozytorium Squeeze do sources.list? Pobierz pakiet Squeeze i zainstaluj go ręcznie?)


Kiedyś zainstalowałem pakiet od Lenny'ego na Squeeze. Myślę, że to był lib2c.so. Wszystko działało dobrze, ale miałem i nadal mam złe przeczucia. Najpierw usunąłem bieżące repozytorium Squeeze, dodałem Lennysa (przejrzałem adres URL serwerów archiwizujących), zainstalowałem pakiet nessesary i wróciłem do repozytorium Squeeze, usuwając Lennysa.
TheMeaningfulEngineer

2
Zobacz także bugs.debian.org/cgi-bin/bugreport.cgi?bug=659310 ... wygląda na to, że być może nie powinieneś chcieć go instalować.
derobert

Sprawdź moją odpowiedź poniżej; również to pytanie SU może ci pomóc.
Emanuel Berg

Zasadniczo najlepszą opcją jest ponowna kompilacja na platformie, na której go używasz. Daje to najlepszą szansę na udane użycie. Powiedziawszy to, prawdopodobnie został usunięty z Debiana z ważnego powodu, więc sprawdziłbym lepsze alternatywy.
Faheem Mitha

Odpowiedzi:


15

W takim przypadku tak , jest to możliwe i bezpieczne.

Jako debian przechowuj drzewo zależności dla każdego żądanego pakietu.

W ogóle istnieje ryzyko, że niektóre biblioteki nie mogłyby istnieć w dwóch różnych wersjach razem w tej samej instalacji, z powodu konfliktu (rezerwacja portu, sterownik urządzenia i tak dalej). W takiej sytuacji aptpowstrzymałbym cię i poprosił o to, co robić. (Wróć w tym przypadku z innym pytaniem UL ;-)

Możesz dodać squeeze.listdosource.list.d

( Uwaga! Nowe wersje APT zignorują nazwę pliku nie kończącą się na „ .list”.):

cat <<eof >/etc/apt/sources.list.d/squeeze.list
deb http://ftp.be.debian.org/debian/ squeeze-updates main contrib
deb-src http://security.debian.org/ squeeze/updates main contrib
eof

dodaj defaultdyrektywę do/etc/apt/apt.conf.d/

cat <<eof >/etc/apt/apt.conf.d/99squeeze
APT::Default-Release "wheezy";

Następnie użyj -tprzełącznika do apt-get w celu zastąpienia domyślnej konfiguracji:

apt-get -t squeeze install scim-pinyin

To ma sens. Ostatecznie, dzięki informacjom w linku opublikowanym przez @derobert, zdecydowałem się nie instalować SCIM i zamiast tego użyłem fcitx, który jest dostępny w wheezy. Znalazłem więc rozwiązanie mojego problemu, ale po drodze nauczyłem się czegoś nowego - dzięki.
FixMaker,

1
Chciałbym zaznaczyć, że dodane pliki sources.list.dsą teraz ignorowane, chyba że mają listrozszerzenie pliku. Tak więc w moim przypadku plik byłby/etc/apt/sources.list.d/squeeze.list
carandraug

Próbowałem skopiować i wkleić to w Buster, aby móc użyć niektórych pakietów stretch. Okazało się, że nie potrzebowałem „aktualizacji” - wyglądał mój plik stretch.list: deb http://deb.debian.org/debian/ stretch main contrib non-free deb-src http://deb.debian.org/debian stretch main contrib non-freei domyślna dyrektywa w sprawie wersji oczywiście zmieniła się na"buster"
mozboz

6

Zrobiłem to raz - to była przeglądarka obrazów gliv, której chciałem, ponieważ może ona wyświetlać pokazy slajdów, ale najnowsza wersja (w Debianie sid) miała błąd i zakończyła się przy starcie. Po „obniżeniu oceny” działało.

W /etc/apt/sources.list, powiedzmy, że wygląda to tak:

deb http://ftp.de.debian.org/debian sid main contrib non-free
# deb http://ftp.de.debian.org/debian wheezy main contrib non-free
# deb http://ftp.de.debian.org/debian squeeze main contrib non-free

W tym przypadku, to bym odkomentowaniu ostatnie dwa wiersze, a następnie uruchomić sudo aptitude update, a następnie aptitude versions PACKAGE. Znajdź wersję, którą lubię i uruchom sudo aptitude install PACKAGE=VERSION(wpisz wersję dokładnie tak, jak w drugiej kolumnie wyników aptitude).

Po /etc/apt/sources.listzakończeniu mogę chcieć przywrócić, więc wędruję po jednym wydaniu Debiana naraz.


Chciałbym móc zaakceptować obie odpowiedzi, ponieważ obie mają sens. Dzieki za sugestie.
FixMaker,

@Lorax: Nie ma problemu, to częsta sytuacja na stronach SX.
Emanuel Berg

Ta odpowiedź pomogła mi rozwiązać inny niepowiązany problem z biblioteką. Dzięki.
Dark Star1

Ta odpowiedź pomogła mi rozwiązać inny niepowiązany problem z biblioteką. Dzięki.
Dark Star1
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.