Установите другую версию пакета
Я использую lucid сервер и установил tomcat. Установленная версия - 6.0.24-2ubuntu1.6.
Это версия, к которой я привязан? Можно ли установить более свежую версию? Один доступный от Maverick - 6.0.28.
Может быть, я могу добавить источник, чтобы обеспечить мою установку lucid с этой версией? В пользовательском интерфейсе менеджера пакетов я могу "принудительно установить версию". Возможно ли принудительное использование версии из альтернативы командной строки?
3 ответа
Короткий ответ:
Используя закрепление, вы можете выбрать, какие пакеты поступают от maverick, и автоматически получить их зависимости, и поддерживать их в актуальном состоянии с помощью вашего менеджера пакетов. https://help.ubuntu.com/community/PinningHowto
Длинный ответ скопирован с /questions/189747/ustanovit-paketyi-iz-bolee-novoj-versii-bez-sborki-podhodyaschee-zakreplenie/189751#189751:
Тебе было бы намного лучше исследовать подходящее пиннинг, см.
man apt_preferences
,Итак, давайте предположим, что вы находитесь на Oneiric и хотите получить эти пакеты от Precise.
Если вы прочитаете человека, вы увидите, что я скопировал / вставил соответствующие разделы и просто изменил название выпуска
/ и т.д. / APT / предпочтения
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
Затем я скопировал мой
/etc/apt/sources.list
в/etc/apt/sources.list.d/precise.list
и заменил все вхождения oneiric точными. Потом побежалapt-get update
и наконец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)
По какой-то причине pcscd и opensc не были установлены, возможно потому, что они не были установлены с самого начала, поэтому не было ничего для обновления, нет ничего сложного, я могу установить именно эту версию, используя точную ссылку, как эта.
$ apt-get install opensc pcscd -t precise
Обратите внимание на использование -t,
packagename/precise
также будет работать.и есть пакеты, которые вы хотите, из последнего выпуска, и только те пакеты, они также будут обновляться автоматически. Если вы не хотите их больше, просто удалите записи из
/etc/apt/preferences
и в следующий раз вы запуститеapt-get upgrade
они будут удалены. Если вы удалите весь файл prefs, убедитесь, что вы удалили и этот файл sources.list, и ваша система попытается обновить его до последней версии. Кроме того, если вы решите выполнить dist-upgrade позже, вам нужно будет удалить весь файл prefs, и, вероятно, было бы неплохо удалить другие источники. Список, который меньше будет найдено для обновления, благодаря более высокому приоритету, означает, что нет пакетов для обновления.Удачное закрепление не так сложно, вам просто нужно немного покопаться и поэкспериментировать. Все глаголы для
n=
и т. д. найдены путем изученияapt-cache policy
,Вот почему опытные админы разглагольствуют и бредят по поводу apt vs yum. Вы можете кратко обновлять сервисы и поддерживать их в актуальном состоянии.
Больше не нужно компилировать пакеты.
Я настоятельно рекомендую вам прочесть всю справочную страницу, освоиться с концепцией и прочитать другие руководства по точному закреплению, прежде чем продолжить это предложение. Удачи и приятного времяпровождения!
Вы можете принудительно установить версию в командной строке с помощью apt-get install somepackage=someversion, но вы не можете запросить версию, которой нет в репозиториях, о которых apt знает, что обычно означает выпуск, на котором вы находитесь.
Вы можете попробовать вручную загрузить Maverick Deb с панели запуска и установить его. Иногда это работает, но иногда это зависит от новых версий различных библиотек и поэтому не будет устанавливаться. Другой вариант - загрузить последний исходный код и скомпилировать его самостоятельно.
У lucid есть только 6.0.24, и это вряд ли изменится. Редко сообщать о программном обеспечении, таком как Tomcat, к более старому выпуску.
Но все же вы можете запустить последнюю версию Tomcat, используя двоичные пакеты Tomcat. Я использую это.