debian.org / О Debian Где взять Debian Поддержка Уголок разработчика Новости Wiki

Автор Тема: [Решено]apt, тонкая настройка. Один пакет из jessie установить в wheezy.  (Прочитано 7434 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн GRAY_BW

  • Новичок форума
  • Topic Author
  • Сообщений: 9
Здравствуйте.
Прошу прощения за лень, возможно получу ответ быстрее чем от google.

Возможно ли установить один пакет из ветки jessie в wheezy без обновления и изменения дистрибутива? (dist-upgrade очень не хочется)
Возникла необходимость в racket_5.3.4+r2+dfsg1-2_i386.deb, версия 5.2.1 (wheezy) не подходит. На первый взгляд, зависимые библиотеки совместимы.
http://packages.debian.org/jessie/racket
Обстоятельства такие: проект в "альфе" и пока не требует заморозки платформы (racket); пока проект не добрался до релиз кандидата, нужно чтоб несколько машин, у участвующих в проекте, обновлялись автоматически, не изменяя пакетной базы стабильного дистрибутива (wheezy).
Есть ли в source.list какая нибудь возможность указать на конкретный пакет другой ветки? Если предложите более адекватное решение, буду весьма признателен.

Заранее спасибо.
« Последнее редактирование: 06 Июль 2013, 01:49:30 от GRAY_BW »
 

Онлайн qupl

  • Главный модератор
  • Ветеран
  • *****
  • Сообщений: 4541
  • memento mori
  • Jabber: qupl@jabber.ru
Re: Один пакет из jessie установить в wheezy
« Ответ #1 : 03 Июль 2013, 06:31:12 »
GRAY_BW,  если нет проблем с зависимостями, то установить пакет и потом через aptitude указать, что он не будет обновляться (hold).

Оффлайн GRAY_BW

  • Новичок форума
  • Topic Author
  • Сообщений: 9
Re: Один пакет из jessie установить в wheezy
« Ответ #2 : 03 Июль 2013, 12:02:35 »

Решено. Большое спасибо за помощь участникам форума qupl и Tammy!


У меня получилось немного по другому. Возможно кому нибудь поможет.
Использовал документацию с:
Debian AptPreferences.
DotDeb repo Instructions
Install Java from Webupd8
Debian JavaPackage

Напомню, задача была такая.
Установить версии пакетов из разных репозитариев на несколько серверов с сохранением стандартной процедуры обновления пакетов
sudo apt-get update && sudo apt-get upgrade.
Требуется nginx v.1.4.+, потому что стандартный из дистрибутива не подходит по причине HTTP 1.0 в режиме реверсивного прокси (websocket не получится).
Используемый репозитарий DotDeb.Org для установки nginx содержит также пакеты php5-*, которые устанавливать не нужно, необходимо оставить php5-* из стабильной ветки wheezy.
Установить на серверы Java 1.7.0 JDK с сохранением стандартной процедуры замен версий update-alternatives --config java
Установить на серверы платформу Racket из testing ветки Debian которая будет обновляться до заморозки версий перед выпуском стабильного Debian Jessie.

Итак, для установки:
  • nginx 1.4.+ выбран репозитарий dotdeb.org
  • Java выбран репозитарий webupd8.org
  • Racket выбран репозитарий Debian Jessie (testing)
Установка ключа подписи пакетов от webupd8.org
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys EEA14886


Добавление репозитария webupd.org. Предпочитаемым редактором создайте файл webupd8team-java.list в каталоге /etc/apt/sources.list.d/ с таким содержимым:# Oracle Java from ubuntu ppa repo
deb http://ppa.launchpad.net/webupd8team/java/ubuntu precise main
deb-src http://ppa.launchpad.net/webupd8team/java/ubuntu precise main

Установка ключа подписи пакетов от dotdeb.org
wget -O http://www.dotdeb.org/dotdeb.gpg | sudo apt-key add -


Добавление репозитария dotdeb.org. Cоздайте файл dotdeb-nginx.list в каталоге /etc/apt/sources.list.d/ с таким содержимым:# Dotdeb repository
deb http://packages.dotdeb.org wheezy all
deb-src http://packages.dotdeb.org wheezy all

Добавление репозитария Debian Jessie (testing). Cоздайте файл debian-testing.jessie.list в каталоге /etc/apt/sources.list.d/ с таким содержимым:
# Debian Jessie repo
deb http://debian.netcologne.de/debian/ jessie main non-free contrib

Теперь можно сделать обновление списка пакетов
sudo apt-get update #примечание! upgrade делать рано.
Поглядим как выглядит политика установки
sudo apt-cache policy
из вывода в консоль интересны следующие строчки

 500 http://ppa.launchpad.net/webupd8team/java/ubuntu/ precise/main i386 Packages
     release v=12.04,o=LP-PPA-webupd8team-java,a=precise,n=precise,l=Oracle Java (JDK) 6 / 7 / 8 Installer PPA,c=main
 500 http://packages.dotdeb.org/ wheezy/all i386 Packages
     release o=packages.dotdeb.org,a=stable,n=wheezy,l=packages.dotdeb.org,c=all
     origin packages.dotdeb.org
 500 http://debian.netcologne.de/debian/ jessie/main i386 Packages
     release o=Debian,a=testing,n=jessie,l=Debian,c=main
     origin debian.netcologne.de
 500 http://debian.netcologne.de/debian/ wheezy/main i386 Packages
     release v=7.1,o=Debian,a=stable,n=wheezy,l=Debian,c=main
     origin debian.netcologne.de

Обратите внимание на число 500, в данном выводе оно указывает на приоритет репозитария в политике установки, который рекомендуется изменять в пределах 100-900. Чем меньше число, тем ниже приоритет. Красным, отмечен параметр который понадобится в тонкой настройке политик.

Добавление конфигурационного файла тонкой настройки политик пакетного менеджера.
Cоздайте файл 13FineTuning в каталоге /etc/apt/preferences.d/ с таким содержимым:Package: *
Pin: release  o=Debian,a=testing,n=jessie
Pin-Priority: 400

Package: php5-*
Pin: release o=Debian,a=stable,n=wheezy
Pin-Priority: 600

Package: nginx*
Pin: release o=packages.dotdeb.org,a=stable,n=wheezy
Pin-Priority: 620

Package: racket*
Pin: release  o=Debian,a=testing,n=jessie
Pin-Priority: 600

Package: libffi6
Pin: release  o=Debian,a=testing,n=jessie
Pin-Priority: 600
Пояснение к содержимому файла.
Package: имя_пакета_или_маска #описание целевого пакета или группы по маске
Pin: release идентификатор #отношение к определённому репозитарию
Priority: Число #Вес приоритета. Рекомендуемый диапазон 100-900
Взглянем на изменение политики для платформы Racket
sudo apt-cache policy racket
Выглядит примерно так
racket:
  Installed: (none) 
  ## Эта строка говорит, что пакет ещё не установлен
  Candidate: 5.3.4+r2+dfsg1-2
  Package pin: 5.3.4+r2+dfsg1-2
  Version table:
     5.3.4+r2+dfsg1-2 600
## Здесь видно, что пакет имеет вес 600
        ## и будет установлен вместо стандартного с весом 500,
        ## тогда как остальные пакеты из репозитария имеют вес 400

        400 http://debian.netcologne.de/debian/ jessie/main i386 Packages
     5.2.1+g6~92c8784+dfsg2-2+deb7u1 600
        500 http://debian.netcologne.de/debian/ wheezy/main i386 Packages


Теперь можно посмотреть что произойдёт в случае upgrade системы. !!!Важно!!! Не забудьте флаг -s. Он означает симуляцию процесса установки, -s (Simulation.No-act.)
sudo apt-get dist-upgrade -s
Или установки конкретного пакета.
sudo apt-get install -s racket

Вывод в консоли покажет вам, что будет происходить в процессе обновления системы.

Если всё так, как вы задумывали, тогда запустите предыдущую команду без флага -s.
Успехов вам в использовании Debian!
« Последнее редактирование: 05 Июль 2013, 13:32:14 от GRAY_BW »
 

Оффлайн Tammy

  • Местный житель
  • ***
  • Сообщений: 201
Re: Один пакет из jessie установить в wheezy
« Ответ #3 : 03 Июль 2013, 23:22:45 »
Возможно ли установить один пакет из ветки jessie в wheezy без обновления и изменения дистрибутива? (dist-upgrade очень не хочется)
Создай /etc/apt/apt.conf
Содержащий APT::Default-Release "stable";

И добавь в sorce.list или в /etc/apt/sources.list.d/какое_нибудь_название.list
deb http://ftp.ru.debian.org/debian stable main contrib non-free
deb http://ftp.ru.debian.org/debian testing main contrib non-free

Пакеты из Wheezy ставить как обычно, а из Jessie
apt-get -t testing install имя_требуемого_пакета
Или в synaptic можно выбрать требуемую версию
 

Русскоязычное сообщество Debian GNU/Linux

Re: Один пакет из jessie установить в wheezy
« Ответ #3 : 03 Июль 2013, 23:22:45 »


Теги:
 

Как деплоить/инсталить пакет который не должен прерывать режим работы ?

Автор kred

Ответов: 2
Просмотров: 1860
Последний ответ 30 Ноябрь 2011, 19:24:50
от dimas000
[Решено] Debian/kFreeBSD igmpproxy и Errno(45). Похоже нужно пересобрать ядро.

Автор 315th

Ответов: 3
Просмотров: 2123
Последний ответ 05 Январь 2014, 23:53:41
от sunny_side
Как установить патч x86-reboot-Add-ASRock-Q1900DC-ITX-mainboard-reboot-q.patch

Автор lamokk

Ответов: 2
Просмотров: 1206
Последний ответ 25 Декабрь 2015, 05:46:57
от ihammers
Сборка ядра под intel atom [Решено]

Автор seisros

Ответов: 41
Просмотров: 11568
Последний ответ 27 Август 2013, 12:43:36
от w285
Firefox 17.0.8 [РЕШЕНО]

Автор s7x8dn

Ответов: 23
Просмотров: 2201
Последний ответ 09 Июнь 2015, 14:29:59
от sidbar