Как установить файл.deb через командную строку?
Как мне установить .deb
файл через командную строку?
12 ответов
Пакеты устанавливаются вручную через dpkg
команда (Система управления пакетами Debian). dpkg
это бэкэнд для таких команд, как apt-get
а также aptitude
которые, в свою очередь, являются бэкендом для приложений с графическим интерфейсом, таких как Software Center и Synaptic.
Что-то вроде:
dpkg
-> apt-get
, aptitude
-> Synaptic, Центр программного обеспечения
Но, конечно, самые простые способы установки пакета - это сначала приложения с графическим интерфейсом (Synaptic, Software Center и т. Д.), А затем команды терминала. apt-get
а также aptitude
которые добавляют очень хороший удобный для пользователя подход к бэкэнду dpkg, включая, помимо прочего, пакетные зависимости, контроль над тем, что установлено, требует обновления, не установлено, неработающие пакеты и т. д. Наконец, dpkg
команда, которая является основой для всех из них.
Поскольку dpkg является базовой, вы можете использовать ее для установки пакетов прямо из командной строки.
Установить пакет
sudo dpkg -i DEB_PACKAGE
Например, если файл пакета называется askubuntu_2.0.deb
тогда ты должен сделать sudo dpkg -i askubuntu_2.0.deb
, Если dpkg
сообщает об ошибке из-за проблем с зависимостями, вы можете запустить sudo apt-get install -f
скачать недостающие зависимости и настроить все. Если появится сообщение об ошибке, вам придется самостоятельно разобраться с зависимостями, следуя, например, примеру. Как разрешить неудовлетворенные зависимости после добавления PPA?,
Удалить пакет
sudo dpkg -r PACKAGE_NAME
Например, если пакет называется askubuntu
тогда ты должен сделать sudo dpkg -r askubuntu
,
Переконфигурировать существующий пакет
sudo dpkg-reconfigure PACKAGE_NAME
Это полезно, когда вам нужно перенастроить что-то, связанное с указанным пакетом. Несколько полезных примеров keyboard-configuration
когда вы хотите включить Ctrl + Alt + Backspace для сброса X-сервера, вы должны сделать следующее:
sudo dpkg-reconfigure keyboard-configuration
Еще один замечательный вариант - когда вам нужно установить часовой пояс для сервера или локального тестового компьютера, чтобы вы использовали tzdata
пакет:
sudo dpkg-reconfigure tzdata
Пакеты Debian (.deb) - это пакеты, которые используются в Ubuntu. Вы можете установить любой пакет.deb в вашей системе. Файлы.deb обычно можно установить из вашего файлового менеджера (Nautilus), просто щелкнув по ним, поскольку ассоциации файлов с установщиком по умолчанию уже установлены в Ubuntu. Эти инструкции предназначены для тех, кто хочет установить пакеты из терминала командной строки (Терминал).
Чтобы установить загруженный пакет Debian ( Ubuntu) (.deb): Откройте терминал и введите
sudo dpkg -i packagename.deb
Чтобы удалить пакет Debian (Ubuntu) (.deb):
sudo dpkg -r packagename
Чтобы перенастроить / восстановить установленный пакет Debian (Ubuntu) (.deb):
sudo dpkg-reconfigure packagename
Мой любимый - GDebi, доступный как с терминала / оболочки, так и с графического рабочего стола.
Я обычно ассоциирую .deb
файлы с GDebi, поскольку это быстро и эффективно - особенно по сравнению с Ubuntu Software Center. Одна из главных особенностей GDebi - это разрешение зависимостей и их установка.
Для запуска из командной строки sudo gdebi <package.deb>
установить один файл deb.
В то время как dpkg -i
на самом деле устанавливает пакет, он не выполняет никакого автоматического разрешения зависимостей, в то время как есть две другие альтернативы, использующие gdebi или инструмент apt-get. Чтобы использовать позже, просто используйте:
sudo apt-get install /path/to/package.deb
Даже если вы находитесь в каталоге с пакетом, вам нужно указать путь, используя ./
в начале:
sudo apt-get install ./package.deb
Вы ищете все команды dpkg? нажмите на эту ссылку, чтобы прочитать.
15 команд dpkg для управления Linux-серверами на основе Debian
Команды DPKG
Есть два действия, они dpkg-query
а также dpkg-deb
,
Установить пакет
# sudo dpkg -i {package_name}
# sudo dpkg -i skype-ubuntu-precise_4.2.0.11-1_i386.deb
Удалить пакет
# sudo dpkg -r {package_name}
# sudo dpkg -r vlc
Удалить пакет и его конфигурационные файлы
# sudo dpkg -P {package_name}
# sudo dpkg -P vlc
Список всех установленных пакетов.
Вы можете передать команду less
(пейджер), чтобы вы могли более легко прокрутить содержимое:
# dpkg -l | less
Проверьте, установлен ли пакет или нет
# dpkg -l {package_name}
# dpkg -l vlc
Проверьте, установлен ли пакет или нет, и запустите его:
# dpkg -l | vlc
Посмотрите, установлен ли пакет или нет
И это покажет место, где будет установлен пакет. Вот -S
(капитал S
) искать, был ли установлен пакет или нет.
# sudo dpkg -S {package_name}
# sudo dpkg -S skype
Установите пакет *.deb из указанного места
Вот -R
является рекурсивным (Рекурсивно обрабатывать все обычные файлы, соответствующие шаблону *.deb
находится в указанных каталогах и во всех его подкаталогах).
# sudo dpkg -R --install {package_location}
# sudo dpkg -R --install /home/sysadmin/soft
Показать детали пакета
Вот -p
(в нижнем регистре p
) покажет информацию о пакете:
# dpkg -p {package_name}
# dpkg -p apache2
Просмотр содержимого пакета
использование -c
(в нижнем регистре c
) чтобы показать содержание:
# sudo dpkg -c {package_name}
# sudo dpkg -c skype-ubuntu-precise_4.2.0.11-1_i386.deb
Извлечь *.deb
файл пакета
использование -x
(в нижнем регистре x
) извлекать:
# dpkg -x {package_name} {location_were_to_extract}
# dpkg -x libqt4-phonon_4.6.3-4+squeeze1_i386.deb /home/sysadmin/
Извлеките и отобразите имена файлов, содержащиеся в пакете
использование -X
(верхний регистр X
) для отображения содержимого с извлечением.
# dpkg -X {package_name} {location_were_to_extract}
# dpkg -X libqt4-phonon_4.6.3-4+squeeze1_i386.deb /home/sysadmin/
Показать информацию о пакете
Вот -I
обозначает информацию:
# dpkg -I {package_name}
# dpkg -I libqt4-phonon_4.6.3-4+squeeze1_i386.deb
Переконфигурируйте уже установленный пакет
dpkg-reconfigure
переконфигурирует пакеты после того, как они уже установлены. Передайте ему имя (я) пакета или пакетов для перенастройки. Он будет задавать вопросы о конфигурации, как при первой установке пакета.
# dpkg-reconfigure postfix
Это перенастроит postfix
так же, как при первой установке.
Нужно знать больше о dpkg
команды? Взгляните на страницу руководства:
# man dpkg
Полезный совет при установке такой программы, как Libreoffice, которая имеет несколько файлов.deb в папке.
sudo dpkg -i *.deb
Я буквально ждал этого годами :
sudo apt install ./happy-at-long-last.deb
Ура! :) Это работает с APT 1.1 , который уже должен быть доступен в большинстве систем.
С использованием
dpkg
регулярно доставлял мне проблемы, в то время как
apt
очень хорош в автоматическом разрешении зависимостей и предотвращении проблем. И он по-прежнему достаточно низкоуровневый, чтобы можно было писать сценарии и настраивать...
Чтобы установить файлы deb, откройте терминал и введите:
sudo dpkg -i file.deb
sudo apt-get install -f
sudo dpkg -i file.deb
Вторая строка - исправить поврежденные пакеты в случае сбоя установки, затем установить заново, чтобы завершить установку.
Другой подход заключается в использовании gdebi
инструмент для установки файлов deb.
gdebi
решение командной строки
Вот лучший способ установить файл.deb в Ubuntu из командной строки:
sudo gdebi skype.deb
Если у вас нет gdebi
уже установлен, установите его с помощью sudo apt install gdebi-core
,
Почему гдеби?
gdebi
будет искать все зависимости .deb
файл, и установит их, прежде чем пытаться установить .deb
файл. Я считаю, что это гораздо предпочтительнее, чем sudo dpkg -i skype.deb && sudo apt install -f
, Последний слишком стремится удалить зависимости в определенных ситуациях. Например, когда я пытался установить Skype, он попытался удалить 96 (!) Пакетов, включая такие пакеты, как compiz
а также unity
! gdebi
дал гораздо более четкое сообщение об ошибке:
$ sudo gdebi skype.deb
Cannot install 'libqtgui:i386'
(Кстати, вот решение этой конкретной проблемы.)
Создайте свой собственный установщик скриптов debInstaller
в дальнейшем:
#!/bin/bash
dpkg -i "$@"
apt-get --yes --fix-broken install
Сделайте скрипт исполняемым с
chmod +x debInstaller
Затем переместите его в несколько каталогов в вашем PATH или добавьте текущий каталог в ваш PATH.
Я собираюсь переместить его в /usr/bin
sudo cp debInstaller /usr/bin
Теперь вы можете установить любой .deb
пакет с помощью команды:
sudo debInstaller some-package.deb
Дополнительным преимуществом этого метода является решение проблемы зависимостей, поскольку в большинстве случаев при установке .deb
с dpkg -i
из-за ошибки зависимостей, поэтому вы должны использовать apt-get install -f
чтобы решить ее, этот скрипт сделает всю работу за вас, но здесь я использовал apt-get --yes --fix-broken install
автоматически решать эти ошибки без вмешательства пользователя.
Существует много инструментов для установки пакета deb, я лично использую встроенный установщик пакетов dpkg.
Если вы вошли в систему как root, измените каталог на местоположение пакета deb
dpkg -i package_name.deb
если вы не вошли как root
sudo dpkg -i package_name.deb
Чтобы убедиться, что пакет установлен правильно и не имеет сломанных зависимостей
sudo apt-get check
Если есть какие-либо сломанные зависимости
sudo apt-get -f install
Если файл только один, то afaikdpkg -i /path/file.deb
это нормально и просто (убедитесь, что у подходящего пользователя есть доступ к пути, для домашней папки пользователя это обычно не так).
В случае нескольких файлов deb (например, одного пакета) иногдаdpkg
пытается обработать их в том порядке, в котором зависимости не удовлетворяются по пути. В таком случае чистый и самый простой способ - скопировать несколько файлов deb вместе в/var/cache/apt/archives
и работаетsudo apt-get install --assume-yes --no-install-recommends /var/cache/apt/archives/*.deb
, как я заметилapt
не пытается загрузить из интернет-репозиториев, как если быapt-get install /some_other_path/*.deb
.