Zainstaluj inną wersję pakietu

9

Korzystam z przejrzystego serwera i zainstalowałem tomcat. Zainstalowana wersja to 6.0.24-2ubuntu1.6.

Czy to jest wersja, z którą jestem związany? Czy można zainstalować nowszą wersję? Ten dostępny od indywidualisty to 6.0.28.

Może mogę dodać źródło, aby zapewnić mi przejrzystą instalację tej wersji? W interfejsie użytkownika menedżera pakietów mogę „wymusić wersję”. Czy można również wymusić wersję z alternatywnej linii poleceń?

Michael Wiles
źródło

Odpowiedzi:

6

Krótka odpowiedź:

Korzystając z przypinania, możesz wybrać, które pakiety pochodzą od indywidualnego użytkownika, i automatycznie uzyskać ich zależności oraz aktualizować je za pośrednictwem menedżera pakietów. https://help.ubuntu.com/community/PinningHowto

Długa odpowiedź została skopiowana z https://askubuntu.com/a/103338/42024 :

Lepiej byłoby odkryć trafne przypinanie, patrz man apt_preferences.

Załóżmy więc, że korzystasz z Oneiric i chcesz uzyskać te pakiety od Precise.

Jeśli czytasz mężczyznę, zobaczysz, że skopiowałem / wkleiłem odpowiednie sekcje i właśnie zmodyfikowałem nazwę wydania

/ etc / apt / preferences

Package: libccid
Pin: release n=precise
Pin-Priority: 990

Package: libpcsclite*
Pin: release n=precise
Pin-Priority: 990

Package: libusb*
Pin: release n=precise
Pin-Priority: 990

Package: opensc
Pin: release n=precise
Pin-Priority: 990

Package: pcscd
Pin: release n=precise
Pin-Priority: 990


Explanation: Uninstall or do not install any Ubuntu-originated
Explanation: package versions other than those in the oneiric release
Package: *
Pin: release n=oneiric
Pin-Priority: 900

Package: *
Pin: release o=Ubuntu
Pin-Priority: -10

Potem skopiował moje /etc/apt/sources.listsię /etc/apt/sources.list.d/precise.listi zastępuje wszystkie wystąpienia sid z precyzyjne. Potem pobiegł apt-get updatei wreszcie apt-get upgrade.

# apt-get upgrade
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages will be upgraded:
  libpcsclite1 libusb-0.1-4 libusb-1.0-0 libusbmuxd1
4 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Need to get 86.0 kB of archives.
After this operation, 88.1 kB disk space will be freed.
Do you want to continue [Y/n]? y
Do you want to continue [Y/n]? y
Get:1 http://us.archive.ubuntu.com/ubuntu/ precise/main libusb-0.1-4 amd64 2:0.1.12-20 [17.6 kB]
Get:2 http://us.archive.ubuntu.com/ubuntu/ precise/main libusb-1.0-0 amd64 2:1.0.9~rc3-2 [30.9 kB]
Get:3 http://us.archive.ubuntu.com/ubuntu/ precise/main libpcsclite1 amd64 1.7.4-2ubuntu1 [23.5 kB]
Get:4 http://us.archive.ubuntu.com/ubuntu/ precise/main libusbmuxd1 amd64 1.0.7-2 [14.1 kB]
Fetched 86.0 kB in 0s (124 kB/s) 

Z jakiegoś powodu, pccd i opensc nie zostały zainstalowane, prawdopodobnie dlatego, że nie zostały zainstalowane na początku, więc nie było nic do uaktualnienia, nic wielkiego, mogę zainstalować dokładnie tę wersję, używając dokładnych takich referencji.

$ apt-get install opensc pcscd -t precise

Zwróć uwagę na użycie -t , packagename/preciserównież by działało.

i są pakiety, które chcesz, z najnowszej wersji, i tylko te pakiety , będą one również aktualizowane automatycznie. Jeśli nie chcesz ich więcej, po prostu usuń wpisy z, /etc/apt/preferencesa przy następnym uruchomieniu apt-get upgrade zostaną usunięte. Jeśli usuniesz cały plik prefs, pamiętaj również o usunięciu tego pliku źródłowego precision.list, a nasz system spróbuje zaktualizować do najnowszego zestawu pakietów. Również, jeśli zdecydujesz się na późniejszą aktualizację, będziesz musiał usunąć cały plik prefs i prawdopodobnie dobrym pomysłem byłoby usunięcie innych źródeł. Lista mniej aktualizacji, dzięki wyższemu priorytetowi, że istnieją brak pakietów do aktualizacji.

Apt przypinanie nie jest takie trudne, wystarczy trochę wkopać i poeksperymentować. Wszystkie czasowniki dla n=etc można znaleźć, sprawdzając apt-cache policy.

Dlatego doświadczeni administratorzy rant i rave o apt vs yum. Możesz zwięźle aktualizować usługi i aktualizować je w czysty, deterministyczny i łatwy do utrzymania sposób.

Nigdy więcej kompilowania pakietów.

Zdecydowanie zalecamy przeczytanie całej strony podręcznika i zapoznanie się z tą koncepcją oraz przeczytanie innych przewodników na temat trafnego przypinania przed kontynuowaniem tej propozycji. Powodzenia i miłej zabawy!

https://help.ubuntu.com/community/PinningHowto

Jayen
źródło
To dało mi bardziej kompletną odpowiedź: askubuntu.com/questions/103320/…
François Beausoleil
2

Możesz wymusić wersję w wierszu poleceń za pomocą apt-get install somepackage = someversion, ale nie możesz poprosić o wersję, której nie ma w repozytoriach, o których wie apt, co zwykle oznacza wydanie, w którym jesteś.

Możesz spróbować ręcznie pobrać indywidualny deb ze startera i zainstalować go. Czasami to działa, ale czasami zależy to od nowszych wersji różnych bibliotek, więc nie można zainstalować. Inną opcją jest pobranie najnowszego źródła i samodzielne skompilowanie.

psusi
źródło
dzięki, postaram się go zdobyć od indywidualisty ... to może działać dobrze, ponieważ tak naprawdę nie ma żadnych zależności
Michael Wiles
1

lucid ma tylko 6.0.24 dostępne i jest mało prawdopodobne, aby się zmienić. Rzadko sprowadza się oprogramowanie takie jak tomcat do starszej wersji.

Nadal jednak możesz uruchomić najnowszą wersję tomcat za pomocą pakietów binarnych tomcat. Używam tego.

aneeshep
źródło