Как установить локальные пакеты .deb с помощью apt-get

Как установить локальные пакеты .deb с помощью apt-get

Есть ли способ установить хранилище пакетов на жесткий диск с помощью apt-get, например apt-get install ./package.deb?

Если нет, то как можно очень-очень просто справиться с зависимостями?

решение1

обычно я делаю dpkg -i <deb file>, он не срабатывает, говоря, что ему нужны зависимости. После этого, когда вы делаете , apt-get updateон скажет в конце что-то вроде "зависимости готовы к установке" Я думаю, что затем он советует использовать apt-get install -f.

После этого я dpkg -iснова использую его.

У меня все отлично работало последние несколько лет.

правка: если посмотреть немного дальше, то, по-видимому, инструмент под названием gdebiможет сделать это как gdebi [deb file].

решение2

Да, предложенная вами команда верна.

sudo apt-get install ./package.deb

или

sudo apt install ./package.deb

установит пакет, который вы получили из другого источника, нежели APT, и в то же время будет использовать возможности APT для автоматического разрешения его зависимостей. К сожалению, эта apt-getфункция не документирована встраница руководства. Эта возможность была добавлена ​​в APT 1.1 (см.объявление о выпуске).

Более подробную информацию см. здесь:

решение3

У Sirex это более или менее правильно, но его ответ не ясен. Я только что решил это, так что вот что я сделал:

sudo dpkg -i /path/to/filename.deb

Если это не удается с сообщением о том, что пакет зависит от чего-то, что не установлено, вы, вероятно, можете исправить это, если запустите

sudo apt-get -f install

Это установит зависимости (предполагая, что они доступны в репозиториях, о которых знает ваша система) И пакет, который вы изначально запрашивали для установки («f» — это опция «исправить», а «y» — опция «предполагать ответ «да» на запросы» или «не спрашивать меня, все ли в порядке, просто установить его уже» — очень полезно для скрытых установок по сценарию). В моей системе не было необходимости снова запускать dpkg (Ubuntu lucid 10.04).

Мне показалось интересным, что если вы не укажете -f при запуске sudo apt-get install, то ваш пакет будет указан как не настроенный из-за неразрешенной зависимости, а также будет предложено следующее:Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).

Редактировать:

Если вы хотите установить, не отвечая «y» на все вопросы, вы можете добавить модификатор, yкак я изначально включил: sudo apt-get -fy install. Однако один из комментаторов указал, что apt иногда предлагает вам удалить всю среду рабочего стола. Я делал эту работу в виртуальной машине и не имел таких опасений, но этот пост был обновлен, чтобы отразить большую осторожность.

решение4

Вы также можете установить файл .deb с помощью gdebi. Выполните следующие команды, чтобы установить gdebi:

sudo apt-get install gdebi-core

Установите пакеты .deb с помощью gdebi,

sudo gdebi /path/to/filename.deb

Он также устраняет зависимости.

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