Тебе было бы намного лучше исследовать подходящее пиннинг, понимаешь man apt_preferences
.
Давайте предположим, что вы находитесь на Oneiric и хотите получить эти пакеты от Precise.
Если вы прочитаете, man
то увидите, что я скопировал / вставил соответствующие разделы и просто изменил название релиза.
/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
Затем я скопировал /etc/apt/sources.list
к /etc/apt/sources.list.d/precise.list
и заменить все вхождения Oneiric с точным. Потом побежал apt-get update
и наконец apt-get upgrade
.
$ sudo 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
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, обязательно удалите этот precise.list
исходный файл, и ваша система попытается обновить его до последней версии. Кроме того, если вы решите выполнить dist-upgrade позже, вам нужно будет удалить весь файл prefs, и, вероятно, было бы неплохо удалить другие источники. Список, который меньше будет найдено для обновления, благодаря более высокому приоритету, означает, что нет пакетов для обновления.
Удачное закрепление не так сложно, вам просто нужно немного покопаться и поэкспериментировать. Все глаголы для и n=
т. Д. Найдены путем изучения apt-cache policy
.
Вот почему опытные админы разглагольствуют и бредят по поводу apt vs yum. Вы можете кратко обновлять сервисы и поддерживать их в актуальном состоянии.
Больше не нужно компилировать пакеты.
Я настоятельно рекомендую вам прочесть всю справочную страницу, освоиться с концепцией и прочитать другие руководства по точному закреплению, прежде чем продолжить это предложение. Удачи и приятного времяпровождения!
https://help.ubuntu.com/community/PinningHowto