Как скачать APT и все это зависит?

Я пытаюсь загрузить APT и все его зависимости, поэтому я могу использовать dpkg для установки APT в автономном режиме. Поскольку вы не можете просто использовать apt-get download apt, я выбрал подход, пытаясь сгенерировать список зависимостей, которые затем я могу вручную использовать apt-get download package-name для извлечения.

Я пробовал это:

apt-cache showpkg package-name

apt-cache depends packagename

dpkg -I pkg-name1_version.deb

Они не работает должным образом. Мне нужен способ перечислить не только зависимости APT, но также и зависимости зависимостей; все дерево. Согласно «sudo apt-get install apt --reinstall» APT имеет 302 зависимости + подчиненные зависимости. Списки, сгенерированные с использованием найденных ответов, отображаются только для перечисления первого уровня зависимостей, потому что они слишком короткие.

4
задан 13 April 2017 в 15:23

4 ответа

Или я серьезно ошибаюсь, или существует что-то существенно неправильно с apt наличие 302 зависимостей + подзависимости. Как какое-либо распределение может требовать легкому весу, если оно зависит от apt, затем? По крайней мере, в моем ноутбуке, переустанавливая apt не упоминает зависимостей вообще, таким образом, я не уверен, где Вы получили то число от. Я приготовил сценарий для проверки. На Ubuntu 14.04 я получаю 24 зависимости:

dpkg gcc-4.8-base gcc-4.9-base gnupg gpgv install-info libacl1 libapt-pkg4.12 libattr1 libbz2-1.0 libc6 libgcc1 liblzma5 libpcre3 libreadline6 libselinux1 libstdc++6 libtinfo5 libusb-0.1-4 multiarch-support readline-common tar ubuntu-keyring zlib1g

Я затем узнал о apt-rdepends: http://xmodulo.com/2013/07/how-to-check-package-dependencies-on-ubuntu-or-debian.html

Я установил и выполнил его, фильтровал зависимости, отсортированные и сравненные для нахождения того же списка, который я получил со сценарием. Таким образом, я могу безопасно прийти к заключению, что это все пакеты, необходимо установить apt. Я думаю один из тех gcc-4.[89] может быть проигнорирован, в зависимости от которого Вы хотите установить. Обратите внимание, что этот список обрезал вниз из Ubuntu 12.04, на которой запущение этого скрипта (на сервере) дало мне 28 зависимостей:

coreutils debconf dpkg gcc-4.6-base gnupg gpgv install-info libacl1 libapt-pkg4.12 libattr1 libbz2-1.0 libc6 libc-bin libgcc1 liblzma5 libreadline6 libselinux1 libstdc++6 libtinfo5 libusb-0.1-4 multiarch-support perl-base readline-common tar tzdata ubuntu-keyring xz-utils zlib1g

По-видимому, пакеты были обрезаны вниз. Отсутствие зависимости от coreutils и debconf является потрясающим, должен сказать я.

На ноте стороны я соглашаюсь с этой поданной ошибкой apt-rdepends страница справочника:

  apt-rdepends exists.  This functionality should really reside in apt-
   cache itself.

apt-cache инструмент обеспечивает четыре соответствующих команды, которые Braiam, обсудили неортодоксальная грамматика и я:

  • depends: Перечислите (вперед) зависимости. Это также включает все пакеты, которые рекомендуются, и также включает пакеты в Повреждения, Конфликты и разделы Замен. Мы просто должны посмотреть на То, чтобы зависеть и Предварительно зависим пакеты.
  • rdepends: Существует неудачное столкновение именования с apt-rdepends. Оба apt-rdepends и мой вышеупомянутый сценарий проверяет на зависимости рекурсивно, тогда как apt-cache команда ищет обратные зависимости - пакеты, которые зависят от пакета в соображении. Используйте эту команду для проверки на потенциально поломки, вызванные пакетом в зависимости от определенной версии той, которая Вы идете, получил изменение.
  • showsrc: Эта команда дает информацию об исходном пакете, который был использованием для создания пакета. Единственный исходный пакет может использоваться для создания нескольких двоичных пакетов - каждый из которых может или не может зависеть от других. apt, например, зависит от libapt-pkg, но не на libapt-inst, оба из которых обеспечиваются apt исходный пакет. Используйте эту команду для получения некоторого понимания других пакетов, которые необходимо установить, который не может быть зависимостями, но который может быть необходим для большей утилиты,
  • showpkg: Эта команда, среди прочего, перечисляет и реверс и вперед зависимости. Обратные зависимости перечислены в простом списке, но вперед являются чем-то вроде беспорядка - я все еще не уверен, что означают числа. В любом случае, отдельные команды depends и rdepends более ясны.

Таким образом, если мы должны посмотреть на все пакеты, от которых мог бы зависеть пакет прямо или косвенно, apt-rdepends то, в чем мы нуждаемся.

2
ответ дан 13 April 2017 в 15:23

Существует только 4 пакета, с которыми Вы должны, чтобы быть preoccupated: libapt-pkg4.12, apt-utils, libapt-inst1.5 и apt. Другие зависимости к способным пакетам являются стандартными ко всем установкам Ubuntu. Почему я говорю только те 4 пакета?

apt-cache showsrc apt
[...]
Package-List: 
 apt deb admin important arch=any
 apt-doc deb doc optional arch=all
 apt-transport-https deb admin optional arch=any
 apt-utils deb admin important arch=any
 libapt-inst1.5 deb libs important arch=any
 libapt-pkg-dev deb libdevel optional arch=any
 libapt-pkg-doc deb doc optional arch=all
 libapt-pkg4.12 deb libs important arch=any

, Как Вы видите, единственные пакеты, который действительно прибывает из способных источников и , важны, те.

Через libapt-pkg4.12 пакет довольно стабилен (на экспериментальном нет прямо сейчас версии, через все другие пакеты имеют новую версию), рекомендуется это, Вы устанавливаете их всех вместе.

Также помнят, что продукт этого обновления, можно повредить обратные зависимости ко всем тем пакетам. Сначала сделайте apt-cache rdepends libapt-pkg4.12 apt-utils libapt-inst1.5 apt и проверьте на любой пакет, который зависит от определенной версии способных.

2
ответ дан 13 April 2017 в 15:23

Xubuntu включает в основную установку apt-offline для обхождения этой ситуации, если Вы уже имеете склонный на месте. Это определяет, какие зависимости должны быть загружены и планируют его так, чтобы у Вас не было проблем, обрабатывающих такие пакеты загрузки. Онлайн-документация установила , содержит главу по тому, как использовать инструмент .

1
ответ дан 13 April 2017 в 15:23

Можно использовать Куб в этом случае. Куб загружает приложения и все его зависимости, и можно установить, использовать ли склонный - добираются или dpkg в установке их. Просто выберите dpkg, поскольку установщик по умолчанию вместо способного - входит "в Настройки => Предпочтения => Вкладка Установщика"

Проверка это учебное руководство для знания больше: http://community.linuxmint.com/tutorial/view/1583

1
ответ дан 13 April 2017 в 15:23

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

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