Давайте иметь метапакет, который зависит от следующих пакетов
Depends: A (=2),
B (=2),
C (=2)
Отметьте '=' - я хочу установить эти конкретные версии, не новые.
Дополнительно:
B зависит от (> =1)
C зависит от B (> =1) и (> =1)
Если новые версии A, B, C в репозитории равняются 2 затем, это работает.
Так как я поместил версию 3 A, и версия 3 B в repo sudo склонный - добираются, установка my-meta-package отказывается заканчиваться со следующей информацией:
The following packages have unmet dependencies:
my-meta-package: Depends: B (= 2) but 3 is to be installed
Depends: A (= 2) but 3 is to be installed
Если я вручную устанавливаю версии 2 из A и B затем установки метапакета правильно, который убедительно предполагает, что нет никакой скрытой зависимости от A3 или B3. Это не решение для проблемы, поскольку метапакет установлен автоматически на многих машинах.
ВОПРОС: Что сделать для создания sudo Кв. - получают установку my-meta-package версии установки 2,2,2?
Кроме того, существует ли способ, которым я мог получить расширенную информацию, что на самом деле создает потребность в версии 3 A и версии 3 B?
Необходимо выбрать конкретные версии, чтобы установить, и установить их всех в то же самое время, когда Вы устанавливаете метапакет.
sudo apt-get install meta-package package1=2 package2=2 package3=2
Как ответ int_ua говорит, можно узнать обратные зависимости с этим:
apt-cache rdepends package
Если Вы хотите знать больше информации о каком-либо из тех пакетов (доступные версии, зависимости и партии больше), используйте это:
apt-cache show package
После того, как Вы закончите устанавливать их и захотите сохранить их в тех версиях при выполнении обновлений системы, необходимо будет использовать способное прикрепление, как предложено belacqua.
Функция прикрепления APT позволяет администраторам вынуждать APT выбрать конкретные версии пакетов, которые могут быть доступными в различных версиях из различных репозиториев. Это позволяет администраторам удостоверяться, что пакеты не обновлены до версий, которые могут конфликтовать с другими пакетами в системе, или которые не были достаточно протестированы на нежелательные изменения. Чтобы сделать это, контакты в предпочтительном файле APT (/etc/apt/preferences) должны быть изменены.
Вы можете сначала попробовать установить зависимости с помощью
sudo apt-get install package=2
, где 2 - версия
. Вы можете узнать, какие пакеты зависят от пакета, с помощью
apt-cache rdepends package