Как использовать dpkg -i для установки пакета и зависимостей, если все зависимости находятся в одной папке

Как использовать dpkg -i для установки пакета и зависимостей, если все зависимости находятся в одной папке

На (Ubuntu) Debian как мне использовать dpkg -iдля установки пакетов на компьютер без интернета. У меня все пакеты и зависимости вместе в одной папке. Мне не нужен интернет, чтобы что-либо скачать.

Например, если Chrome и все его зависимости находятся в одной папке, команда dpkg -i *.debпытается установить Chrome ДО зависимостей и выдает ошибки зависимостей, даже если файлы находятся там же, где и Chrome, в том же каталоге.

Чтобы это заработало, мне нужно переместить все зависимости из папки в отдельную папку, чтобы dpkg -i *.debсначала запустить зависимости, а затем вернуться в папку с Chrome и снова выполнить ту же команду для пакета Chrome.

В предыдущих версиях Ubuntu мне нужно было всего лишь применить следующую команду ко всем файлам в одном каталоге: dpkg -i --force-all *.deb и она установит пакет и все его зависимости, если бы они находились вместе в одной папке.

Если у меня есть папка с пакетом и его зависимостями, расположенными в одной папке, как мне установить пакет, не используя apt-get для подключения к Интернету?

решение1

Я пишу ответ, специфичный для Ubuntu, он должен работать и на Debian (никогда не использовал Debian).

Итак, если у вас есть .debфайл со всеми его зависимостями,

  • Сначала переместите эти зависимости в /var/cache/apt/archives/ каталог.
  • Теперь выполните sudo dpkg -i <your_deb_file>. После этой команды ваш .debфайл будет наполовину установлен (не настроен) и выдаст ошибку о неудовлетворенной зависимости.
  • Теперь выполните sudo apt-get install -f. Он выберет все зависимости из формы /var/cache/apt/archives/, установит их и настроит ранее ненастроенный пакет.

Вы можете обратитьсяэтот ответдля лучшего понимания.

Связанный контент