apt-get эквивалент yum localinstall

9

При использовании Fedora я обычно использую yum localinstallспособ установки оборотов, полученных вне репозиториев. Я не могу найти эквивалентную опцию в apt-getсправочной странице. Я использую Ubuntu 11.04, если это имеет значение.

Что является apt-getэквивалентом yum localinstall? Должен ли я использовать dpkgнепосредственно в этом случае?

Vitor Py
источник

Ответы:

10

Если ваш пакет зависит от некоторых других пакетов, доступных в репозиториях, следующая команда также позаботится об установке зависимостей (что dpkgне может сделать):

gdebi my_local_package.deb

однако вам может понадобиться сначала установить gdebiсебя, если она еще не доступна в вашей установке Debian.

enzotib
источник
Это именно то, что я искал! Спасибо.
Вит Пи
Просто отметьте, что для этого требуется X. Это хорошо для рабочей станции. Не очень хорошо для сервера, управляемого удаленно.
Михал Шрайер
2
@ Михал Шрайер: нет, это не нужно X, вы говорите gdebi-gtk.
энзотиб
при попытке решения gdebi ищите gdebi-coreпакет только для CLI. похоже, gdebiэто GTK по умолчанию. Вы можете увидеть список Gdebi pkgs нравится так: apt-cache search gdebi. Вы хотите это: "gdebi-core - простой инструмент для установки файлов deb".
Mighq
9

Как сказал @enzotib, gdebiэто хорошо, он даже позволяет просто проверить скрипт до / после установки, если вы параноик, как я.

Но не забывай путь снарядов, маленький падаван.

В оболочке «просто»:

dpkg -i file.deb

Если все зависимости присутствуют, он будет установлен. В противном случае вы увидите уродливое и длинное сообщение об ошибке, но это не конец света:

# dpkg -i somepackage.deb 
...snip...
dpkg: error processing somepackage (--install):
 dependency problems - leaving unconfigured
Errors were encountered while processing:
 somepackage

Теперь либо установите отсутствующие зависимости, либо восстановите:

# apt-get install -f
...snip...
The following extra packages will be installed:
...snip...
Do you want to continue [Y/n]?
shellholic
источник
4

Вам нужно использовать dpkg напрямую:

dpkg -i my_local_package.deb 

или настройте свой собственный локальный репозиторий. Я предпочитаю делать просто dpkg -i.

Михал Шрайер
источник
Это предпочтительный способ сделать это в дистрибутиве на основе Debian? На Fedora и RHEL я всегда пользуюсь yumи никогда не трогаю rpmнапрямую.
Вит Пи
Я думаю это нормально. Из официальных документов: «dpkg - это инструмент командной строки, используемый для установки пакетов».
Михал Шрайер
В качестве примечания для будущих гуглеров этот ответ не получится, если новый пакет зависит от других пакетов, которые еще не установлены. dpkgпроверяет зависимости, но не выбирает их, поэтому aptи gdebiбыли сделаны.
Knetic