Как сохранить сервер Ubuntu без & ldquo; -updates & ldquo; релиз

Короче говоря:

Кто-нибудь там, на котором работают серверы Ubuntu, пытается сделать это с отключенным выпуском "-updates" (например, в точных обновлениях)? Если да, то как вы работаете с точечными выпусками Ubuntu (которые включают в себя пакеты из -updates)?

Это характерно для конкретных случаев, и я ничего не нашел в своих поисках. Пожалуйста, укажите мне на любой предыдущий вопрос или, возможно, на более подходящий форум для этого.

Не так коротко:

Мне кажется, что весь смысл в том, чтобы иметь -ddates в качестве отдельного релиза, это не использовать его, а устанавливать только обновления, связанные с безопасностью. Это то, что мы пытаемся сделать в нашей компании.

Конечно, вам может понадобиться пакет от -updates, и мы делаем. Поэтому мы оставляем -updates в sources.list, но прикрепляем его к -10 (приоритет «вообще не использовать»). Конкретные пакеты, которые нам нужны из -updates, затем прикрепляются с более высоким приоритетом, поэтому они выбираются. У нас эта настройка уже автоматизирована. Это работает хорошо ... большую часть времени.

Проблема возникает, если кто-то использует образ / компакт-диск точечной версии Ubuntu (например, 12.04.2) для установки новой машины. Точечные выпуски включают пакеты -updates до этого времени. Когда я пытаюсь установить какой-то новый пакет (после отключения / закрепления -updates), и этот пакет зависит от одного из тех пакетов -updates, которые поставлялись с точечным выпуском, я могу получить поврежденный пакет. Как в этом случае:

# apt-get install vim-nox -s
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 vim-nox : Depends: vim-common (= 2:7.3.429-2ubuntu2) but 2:7.3.429-2ubuntu2.1 is to be installed
           Depends: vim-runtime (= 2:7.3.429-2ubuntu2) but 2:7.3.429-2ubuntu2.1 is to be installed
E: Unable to correct problems, you have held broken packages.

Он пытается установить vim-nox из «точного», но vim-common и vim-runtime из точного-обновления уже установлены (при базовой установке, прежде чем я смогу изменить что-либо), и поэтому он ломается.

Приспособление к приоритетам apt_preference мне не помогло. Зависимости AFAICT не влияют на алгоритм приоритета / выбора apt, поэтому он не справится с работой.

Конечно, я могу просто запретить использование изображений с точечным выпуском, но это как-то досадно. В мире все более и более готовых образов для каждого типа платформы виртуализации, если я хочу использовать их (даже если только для тестирования), я должен искать старые, иногда устаревшие (или несуществующие) образы, сделанные до первого Точка выпуска.

Кто-нибудь здесь прошел через это?

3
задан 19 September 2013 в 01:22

2 ответа

Короче говоря:

Только закомментируйте -updates записи в вашем sources.list. Или закрепить их.

Не слишком коротко:

Кажется, вы хотите немного испортить ваши настройки пиннинга . Если вы хотите, чтобы вы могли установить это, если вам нужно установить пакет из репозитория no -updates, вы можете установить основной репозиторий с приоритетом> 1000 контактов. Это скажет apt-get при необходимости понизить версию пакетов, чтобы получить их из этой версии:

Обратите внимание, что приоритет выше 1000 позволит даже понизить версию независимо от версии приоритетного пакета. Это означает, что вы можете использовать приоритет 1001 для стабильного источника, если вы хотите перейти на стабильные версии пакетов, которые вы установили (скажем, из тестирования) в системе.

В качестве примера рассмотрим мои собственные предпочтения apt-pinning:

cat /etc/apt/preferences.d/pinning
Package: iceweasel*
Pin: release a=experimental
Pin-Priority: 1990

apt-cache policy iceweasel
iceweasel:
  Installed: 25.0~a2+20130830004004-1~bpo70+1
  Candidate: 25.0~a2+20130906004001-1
  Package pin: 25.0~a2+20130906004001-1
  Version table:
     25.0~a2+20130906004001-1 1990
        500 http://mozilla.debian.net/ experimental/iceweasel-aurora i386 Packages
 *** 25.0~a2+20130830004004-1~bpo70+1 1990
        100 /var/lib/dpkg/status
     17.0.8esr-2 1990
        500 http://ftp.us.debian.org/debian/ testing/main i386 Packages

Как вы можете видеть, apt предпочтет, чтобы пакет iceweasel происходил из ветви experimental вместо testing и, если необходимо, он понизит пакет, чтобы соответствовать этому предпочтению.

0
ответ дан 19 September 2013 в 01:22

Попробуйте очистить vim и начать все сначала - у меня получилось

sudo apt-get remove vim-common
sudo apt-get clean && sudo apt-get purge
sudo apt-get update && sudo apt-get install vim 
0
ответ дан 19 September 2013 в 01:22

Другие вопросы по тегам:

Похожие вопросы: