Як встановити файл .deb через командний рядок?


1095

Як встановити .debфайл за допомогою командного рядка?


5
Знайдіть краще: steptoinstall.com/…
KarSho


Відповіді:


1244

Пакети встановлюються вручну за допомогою dpkgкоманди (Debian Package Management System). dpkg- це вихідний для команд, таких як apt-getі aptitude, що, в свою чергу, є вихідним середовищем для встановлення графічного інтерфейсу програм, таких як Software Center та Synaptic.

Щось у напрямку:

dpkg-> apt-get, aptitude-> Synaptic, Software Center

Але, звичайно, найпростіший спосіб установки пакета буде, по- перше, графічний інтерфейс програми (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

4
Чудова інформація, довелося знайти спосіб встановити traceroute, щоб допомогти налагодити, чому моя машина не підключиться до Інтернету :)
Jason

23
Також корисно відзначити, що встановлені програми зазвичай знаходяться в / usr / bin, названому на честь дезактивації.
Кріс Москіні

Якщо я побігаю sudo apt-get install texlive-latex-base, це не вдалося місяцями з "невідповідністю Hash Sum". Я можу завантажити файл .deb з http://gb.archive.ubuntu.com/ubuntu/pool/main/t/texlive-base/texlive-latex-base-doc_2015.20150625-1ubuntu1_all.deb. Якщо я встановлю його за допомогою dpkg, він би згодом був розпізнаний (і оновлений) apt-get.
користувач643722

1
чувак, ти чудовий. так нечасто я бачу відповіді на Linux, які є настільки детальними .. коли мова заходить про питання для новачків, це важливо !! спасибі
Elad Katz

1
Якщо це простіше і краще встановити через aptitudeабо apt-get(або просто apt), чому тут не наводяться приклади цих команд?
інтуїтивно

161

Пакети Debian (.deb) - це пакети, які використовуються в Ubuntu. Ви можете встановити будь-який .deb пакет у вашій системі. Файли .deb, як правило, можна встановити у файловому менеджері (Nautilus) лише натисканням на них, оскільки асоціації файлів із установкою за замовчуванням вже встановлені в Ubuntu. Ці інструкції призначені для тих, хто бажає встановити пакети з терміналу командного рядка (Terminal).

Щоб встановити завантажений пакет Debian ( Ubuntu ) (.deb): Відкрийте термінал і введіть

sudo dpkg -i packagename.deb

Щоб видалити пакет Debian (Ubuntu) (.deb):

sudo dpkg -r packagename

Щоб переконфігурувати / відновити встановлений пакет Debian (Ubuntu) (.deb):

sudo dpkg-reconfigure packagename

105

Мій улюблений GDebi, доступний як з терміналу / оболонки, так і з графічного робочого столу.

знімок екрана

Я зазвичай пов'язую .debфайли з GDebi, оскільки це швидко та ефективно - особливо порівняно з Ubuntu Software Center. Однією з головних особливостей GDebi є вирішення залежностей та встановлення їх.

Для запуску командного рядка sudo gdebi <package.deb>встановіть один файл deb.


5
він перевіряє залежності перед встановленням, thx !!
Сила Водолія

Чи може там навіть завантажувати залежності або ми маємо їх завантажувати вручну ?? @Pandya
Джассер

Напевно, краще для людей, що переїжджають із нелінукс-фонового режиму.
Нішеет

+1 для "він вирішує залежності та встановлює їх", що є ключовим.
Revetahw

85

Шукаєте всі команди 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

5
" Перевірте, встановлений чи ні пакет, і якщо він є, запустіть його:# dpkg -l | vlc " - це лише передасть список пакетів на vlc, з непередбачуваними результатами, якщо він був встановлений; і не краще, ніж просто набрати текстvlc
Xen2050

51

Хоча він dpkg -iдійсно встановлює пакет, він не робить жодного автоматичного вирішення залежності, тим часом є дві інші альтернативи, використовуючи gdebi або інструмент apt-get. Щоб скористатися пізнішим просто, використовуйте:

sudo apt-get install /path/to/package.deb

Навіть якщо ви знаходитесь в каталозі з пакетом, вам потрібно дати шлях, використовуючи ./на початку:

sudo apt-get install ./package.deb

13
Це, мабуть, найкраща відповідь. aptне дасть вам зламати вашу систему, якщо у вас немає правильних залежностей.
mlainz

Ця команда, здається, вибирає всі існуючі пакети.
Hibou57

@ Hibou57 у назві пакета не може бути місця.
Брайам

26

Корисна порада при встановленні такої програми, як Libreoffice, яка має декілька файлів .deb у папці.

sudo dpkg -i *.deb

2
Ніколи не використовуйте цю команду. Якщо ви хочете видалити цей пакет, ви повинні вручну видалити всі дебіли. sudo apt remove example, sudo apt autoremoveі sudo dpkg -r *.debне працює.
ніхто

12

Рішення 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'

(Ось , до речі, є вирішення цього конкретного питання .)


askubuntu.com/a/170557/158442 каже, що gdebiможна використовувати з командного рядка
muru

@muru Так, але це легко пропустити через скріншот. Крім того, це не пояснює проблеми зdpkg -i skype.deb
Flimm

11

Створіть власний інсталятор скриптів debInstallerу такий спосіб:

#!/bin/bash
dpkg -i "$@"
apt-get --yes --fix-broken install

Зробіть сценарій виконуваним за допомогою

chmod +x debInstaller

Потім перемістіть його до деяких dirs у вашому 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автоматично вирішував ці помилки без втручання користувача.


10

Щоб встановити файли deb, відкрийте Terminal і введіть:

sudo dpkg -i file.deb
sudo apt-get install -f
sudo dpkg -i file.deb   

Другий рядок - це виправлення зламаних пакетів, якщо встановлення не вдалося, а потім встановити знову, щоб завершити встановлення.

Іншим підходом є використання gdebiінструменту для установки файлів deb.


0

Існує багато інструментів для встановлення пакету 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
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.