LINUX.ORG.RU
решено ФорумAdmin

запрет прозрачной установки пакетов

 , ,


0

3

Я добавляю две репы в систему.

  1. jessie main contrib non-free
  2. multimedia

В репе1 нет mplayer. В репе2 есть mplayer. Я делаю: apt-get install mplayer и пакет устанавливается с репа2. Как этого избежать ? Я хочу, чтобы пакет ставился только с помощью apt-get install -t multimedia mplayer. Как это сделать ?

★★★★

APT-pinning замечательно работает в подобных случаях. Требуется в /etc/apt/preferences выставить приоритет <100 для репы 2. Как сделать - man apt_preferences

madarexxx ()
Ответ на: комментарий от bryak

что значит «удалить репу2» ?

тоже что и «добавить» только наоборот

amorpher ★★★★★ ()
Ответ на: комментарий от anonymous

Кажется с приоритетом ниже 100 репозиторий используется только при явном указании что нужно использовать именно его.

MrClon ★★★★★ ()
Ответ на: комментарий от MrClon

причём тут ставить из него? вопрос был что такое «удалить», а на свой вопрос ТС ответил изначально

В репе1 нет mplayer. В репе2 есть mplayer. Я делаю: apt-get install mplayer и пакет устанавливается с репа2. Как этого избежать ?Я хочу, чтобы пакет ставился только с помощью apt-get install -t multimedia mplayer. Как это сделать ?

неясно зачем тему только создавал

amorpher ★★★★★ ()
Ответ на: комментарий от amorpher

Я так понял ему надо что-бы apt-get install -t multimedia mplayer работало а apt-get install mplayer нет. Если удалить multimedia из списка реп то оба варианта перестанут работать (если mplayer нет в основном репозитории).

MrClon ★★★★★ ()
Ответ на: комментарий от MrClon

он сам не понял что хотел, т. к. mplayer у него есть только во 2-й репе (multimedia)
чушь короче
если про какие другие пакеты, то пусть пинит нужные или алиасы делает

amorpher ★★★★★ ()
Ответ на: комментарий от amorpher

Как я понял он хотел что-бы пакеты из multimedia ставились только если явно указано что нужно ставить из multimedia. Это можно сделать приоритетами.

MrClon ★★★★★ ()
Ответ на: комментарий от MrClon

Хорошо, пишу в /etc/apt/preferences

Package: *
Pin: release a=stable
Pin-Priority: 900

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

Проверяю:

apt-cache policy

Package files:
 100 /var/lib/dpkg/status
     release a=now
 500 http://ftp.us.debian.org/debian/ jessie/non-free Translation-en
 500 http://ftp.us.debian.org/debian/ jessie/main Translation-en
 500 http://ftp.us.debian.org/debian/ jessie/contrib Translation-en
 990 http://ftp.us.debian.org/debian/ jessie/non-free i386 Packages
     release v=8.3,o=Debian,a=stable,n=jessie,l=Debian,c=non-free
     origin ftp.us.debian.org
 990 http://ftp.us.debian.org/debian/ jessie/contrib i386 Packages
     release v=8.3,o=Debian,a=stable,n=jessie,l=Debian,c=contrib
     origin ftp.us.debian.org
 990 http://ftp.us.debian.org/debian/ jessie/main i386 Packages
     release v=8.3,o=Debian,a=stable,n=jessie,l=Debian,c=main
     origin ftp.us.debian.org
 990 http://ftp.us.debian.org/debian/ jessie/non-free amd64 Packages
     release v=8.3,o=Debian,a=stable,n=jessie,l=Debian,c=non-free
     origin ftp.us.debian.org
 990 http://ftp.us.debian.org/debian/ jessie/contrib amd64 Packages
     release v=8.3,o=Debian,a=stable,n=jessie,l=Debian,c=contrib
     origin ftp.us.debian.org
 990 http://ftp.us.debian.org/debian/ jessie/main amd64 Packages
     release v=8.3,o=Debian,a=stable,n=jessie,l=Debian,c=main
     origin ftp.us.debian.org
Pinned packages:

Что-то я не наблюдаю, чтобы выставились приоритеты. Или надо на ftp://ftp.us.debian.org отдельный создавать Pin ?

bryak ★★★★ ()
Ответ на: комментарий от bryak

А это потому, что ты не читаешь документацию, а в ней написано, что эти пришпиленные приоритеты работают только если в /etc/apt.conf (ну или где-то в дебрях директории /etc/apt.conf.d) не указан выпуск по умолчанию, вроде

APT::Default-Release "stable";

TeopeTuK ★★★★ ()
Ответ на: комментарий от TeopeTuK

ну так стоит это в /etc/apt/apt.conf. Короче. Я добавил deb-multimedia. Установил smplayer(который поставился с репы debian). Потом я попробовал поставить apt-get install -t multimedia mplayer, apt мне сказал, что записи мультимедиа нет в apt.conf. Далее я сделал apt-get upgrade и...И(млять) оно проапгрейдилось с...deb-multimedia вот лог

Я более чем уверен в том, что все тут проставили эти стандартные настройки в апт и подключивши какую-нибудь репу - подсасывают с этой репы кучу пакетов, заменяя стабильный(хе-хе)

А это потому, что в дебиане подключаемые репы имеют приоритет 990, а стабильная репа - 500

apt-cache policy
Package files:
 100 /var/lib/dpkg/status
     release a=now
 990 ftp://ftp.deb-multimedia.org/ jessie/non-free i386 Packages
     release o=Unofficial Multimedia Packages,a=stable,n=jessie,l=Unofficial Multimedia Packages,c=non-free
     origin ftp.deb-multimedia.org
 990 ftp://ftp.deb-multimedia.org/ jessie/main i386 Packages
     release o=Unofficial Multimedia Packages,a=stable,n=jessie,l=Unofficial Multimedia Packages,c=main
     origin ftp.deb-multimedia.org
 990 ftp://ftp.deb-multimedia.org/ jessie/non-free amd64 Packages
     release o=Unofficial Multimedia Packages,a=stable,n=jessie,l=Unofficial Multimedia Packages,c=non-free
     origin ftp.deb-multimedia.org
 990 ftp://ftp.deb-multimedia.org/ jessie/main amd64 Packages
     release o=Unofficial Multimedia Packages,a=stable,n=jessie,l=Unofficial Multimedia Packages,c=main
     origin ftp.deb-multimedia.org
 990 http://www.deb-multimedia.org/ jessie/non-free i386 Packages
     release o=Unofficial Multimedia Packages,a=stable,n=jessie,l=Unofficial Multimedia Packages,c=non-free
     origin www.deb-multimedia.org
 990 http://www.deb-multimedia.org/ jessie/main i386 Packages
     release o=Unofficial Multimedia Packages,a=stable,n=jessie,l=Unofficial Multimedia Packages,c=main
     origin www.deb-multimedia.org
 990 http://www.deb-multimedia.org/ jessie/non-free amd64 Packages
     release o=Unofficial Multimedia Packages,a=stable,n=jessie,l=Unofficial Multimedia Packages,c=non-free
     origin www.deb-multimedia.org
 990 http://www.deb-multimedia.org/ jessie/main amd64 Packages
     release o=Unofficial Multimedia Packages,a=stable,n=jessie,l=Unofficial Multimedia Packages,c=main
     origin www.deb-multimedia.org
 500 http://ftp.us.debian.org/debian/ jessie/non-free Translation-en
 500 http://ftp.us.debian.org/debian/ jessie/main Translation-en
 500 http://ftp.us.debian.org/debian/ jessie/contrib Translation-en
 990 http://ftp.us.debian.org/debian/ jessie/non-free i386 Packages
     release v=8.3,o=Debian,a=stable,n=jessie,l=Debian,c=non-free
     origin ftp.us.debian.org
 990 http://ftp.us.debian.org/debian/ jessie/contrib i386 Packages
     release v=8.3,o=Debian,a=stable,n=jessie,l=Debian,c=contrib
     origin ftp.us.debian.org
 990 http://ftp.us.debian.org/debian/ jessie/main i386 Packages
     release v=8.3,o=Debian,a=stable,n=jessie,l=Debian,c=main
     origin ftp.us.debian.org
 990 http://ftp.us.debian.org/debian/ jessie/non-free amd64 Packages
     release v=8.3,o=Debian,a=stable,n=jessie,l=Debian,c=non-free
     origin ftp.us.debian.org
 990 http://ftp.us.debian.org/debian/ jessie/contrib amd64 Packages
     release v=8.3,o=Debian,a=stable,n=jessie,l=Debian,c=contrib
     origin ftp.us.debian.org
 990 http://ftp.us.debian.org/debian/ jessie/main amd64 Packages
     release v=8.3,o=Debian,a=stable,n=jessie,l=Debian,c=main
     origin ftp.us.debian.org
Pinned packages:

Видимо дебиан разрешил проблему зависимостей примерно таким образом. Т.е позволять заменять системные пакеты базового репозитория сторонними.

bryak ★★★★ ()
Последнее исправление: bryak (всего исправлений: 3)
Ответ на: комментарий от bryak

блин, не тот чуть-чуть лог скопипастил. Я делал dist-upgrade и там обновились системные пакеты

bryak ★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.