Jak zainstalować plik .deb za pomocą wiersza polecenia?

Odpowiedzi:

1244

Pakiety są instalowane ręcznie za pomocą dpkgpolecenia (System zarządzania pakietami Debiana). dpkgjest zapleczem poleceń takich jak apt-geti aptitude, które z kolei są zapleczem dla aplikacji instalujących GUI, takich jak Software Center i Synaptic.

Coś w stylu:

dpkg-> apt-get, aptitude-> Synaptic, Centrum oprogramowania

Ale oczywiście najłatwiejsze sposoby, aby zainstalować pakiet będzie, po pierwsze, aplikacje GUI (Synaptic, centrum oprogramowania, etc ..), a następnie przez komendy terminalowe apt-geti aptitudeże dodatek bardzo miły przyjazny dla użytkownika podejście do dpkg zaplecza, w tym nieograniczone do zależności pakietowych, kontrolę nad tym, co jest zainstalowane, wymaga aktualizacji, nie jest instalowane, uszkodzone pakiety itp. Wreszcie dpkgpolecenie, które jest podstawą dla nich wszystkich.

Ponieważ dpkg jest podstawą, możesz go użyć do instalacji spakowanej bezpośrednio z wiersza poleceń.

Zainstaluj pakiet

sudo dpkg -i DEB_PACKAGE

Na przykład, jeśli plik pakietu jest wywoływany askubuntu_2.0.deb, powinieneś to zrobić sudo dpkg -i askubuntu_2.0.deb. Jeśli dpkgzgłosi błąd z powodu problemów z zależnościami, możesz uruchomić, sudo apt-get install -faby pobrać brakujące zależności i skonfigurować wszystko. Jeśli zgłosi to błąd, będziesz musiał samodzielnie rozwiązać zależności, wykonując na przykład następujące czynności: Jak rozwiązać niezaspokojone zależności po dodaniu umowy PPA? .

Usuń paczkę

sudo dpkg -r PACKAGE_NAME

Na przykład, jeśli pakiet jest wywoływany askubuntu, powinieneś to zrobić sudo dpkg -r askubuntu.

Ponownie skonfiguruj istniejący pakiet

sudo dpkg-reconfigure PACKAGE_NAME

Jest to przydatne, gdy trzeba zmienić konfigurację czegoś związanego ze wspomnianym pakietem. Kilka przydatnych przykładów, keyboard-configurationkiedy chcesz włączyć Ctrl+ Alt+ Backspacew celu zresetowania serwera X, więc wykonaj następujące czynności:

sudo dpkg-reconfigure keyboard-configuration

Kolejnym świetnym rozwiązaniem jest ustawienie strefy czasowej dla serwera lub lokalnego komputera testowego, więc użyj tzdatapakietu:

sudo dpkg-reconfigure tzdata
Luis Alvarado
źródło
4
Świetna informacja, musiałem znaleźć sposób na zainstalowanie traceroute, aby pomóc w debugowaniu, dlaczego moja maszyna nie łączy się z Internetem :)
Jason
23
Warto również zauważyć, że po zainstalowaniu programy zwykle znajdują się w katalogu / usr / bin, nazwanym tak po tym, co zostało spakowane.
Chris Moschini
Jeśli uruchomię sudo apt-get install texlive-latex-base, od miesięcy nie działa z „niedopasowaniem sumy skrótu”. Mogę pobrać plik .deb z http://gb.archive.ubuntu.com/ubuntu/pool/main/t/texlive-base/texlive-latex-base-doc_2015.20150625-1ubuntu1_all.deb. Jeśli zainstaluję go przy użyciu dpkg, czy zostanie on następnie rozpoznany (i zaktualizowany) przez apt-get.
user643722,
1
koleś jesteś niesamowity. tak rzadko widzę odpowiedzi na Linuksa, które są tak szczegółowe .. jeśli chodzi o pytania dla początkujących, to ważne !! dzięki
Elad Katz
1
Jeśli instalacja jest łatwiejsza i lepsza za pomocą aptitudelub apt-get(lub po prostu apt), dlaczego nie podano tutaj przykładów tych poleceń?
intuicyjnie
161

Pakiety Debian (.deb) to pakiety używane w Ubuntu. Możesz zainstalować dowolny pakiet .deb w swoim systemie. Pliki .deb można zasadniczo instalować z poziomu menedżera plików (Nautilus), klikając je, ponieważ skojarzenia plików z domyślnym instalatorem są już ustawione w Ubuntu. Te instrukcje są dla tych, którzy chcą instalować pakiety z terminala wiersza poleceń (Terminal).

Aby zainstalować pobrany pakiet Debian ( Ubuntu ) (.deb): Otwórz Terminal i wpisz

sudo dpkg -i packagename.deb

Aby usunąć pakiet Debian (Ubuntu) (.deb):

sudo dpkg -r packagename

Aby ponownie skonfigurować / naprawić zainstalowany pakiet Debian (Ubuntu) (.deb):

sudo dpkg-reconfigure packagename
Atul Makwana
źródło
105

Moim ulubionym jest GDebi, dostępny zarówno z terminala / powłoki lub pulpitu graficznego.

zrzut ekranu

Zazwyczaj .debpliki kojarzą mi się z GDebi, ponieważ jest szybki i wydajny - szczególnie w porównaniu z Ubuntu Software Center. Jedną z głównych cech GDebi jest rozwiązywanie zależności i instalowanie ich.

Aby uruchomić wiersz poleceń, sudo gdebi <package.deb>zainstaluj pojedynczy plik deb.

dsto
źródło
5
sprawdza zależności przed instalacją, dzięki !!
Aquarius Power
Czy gdebi może nawet pobrać zależności lub musimy pobrać je ręcznie? @Pandya
Jasser
Prawdopodobnie lepiej dla osób przeprowadzających się z środowisk innych niż Linux.
Nisheet
+1 dla „rozwiązuje zależności i instaluje je”, co jest kluczowe.
Revetahw
85

Czy szukasz wszystkich poleceń dpkg ? kliknij ten link, aby przeczytać.

15 komend dpkg do zarządzania serwerami Linux opartymi na Debianie

Komendy DPKG

Istnieją dwie akcje, są dpkg-queryi dpkg-deb.

Zainstaluj pakiet

# sudo dpkg -i {package_name}    
# sudo dpkg -i skype-ubuntu-precise_4.2.0.11-1_i386.deb

Usuń paczkę

# sudo dpkg -r {package_name}
# sudo dpkg -r vlc

Usuń pakiet i jego pliki konfiguracyjne

# sudo dpkg -P {package_name}
# sudo dpkg -P vlc

Wyświetl wszystkie zainstalowane pakiety.

Możesz potokować polecenie do less(pager), aby łatwiej przewijać zawartość:

# dpkg -l | less

Sprawdź, czy pakiet jest zainstalowany, czy nie

# dpkg -l {package_name}
# dpkg -l vlc

Sprawdź, czy pakiet jest zainstalowany, a jeśli nie, uruchom go:

# dpkg -l | vlc

Sprawdź, czy pakiet jest zainstalowany, czy nie

To pokaże lokalizację, w której pakiet zostanie zainstalowany. Tutaj -S(kapitał S), aby sprawdzić, czy pakiet został zainstalowany, czy nie.

# sudo dpkg -S {package_name}
# sudo dpkg -S skype

Zainstaluj pakiet * .deb z określonej lokalizacji

Oto -Rrekurencja. (Rekurencyjnie obsługuj wszystkie zwykłe pliki pasujące do wzorca *.debznalezionego w określonych katalogach i wszystkich jego podkatalogach).

# sudo dpkg -R --install {package_location}
# sudo dpkg -R --install /home/sysadmin/soft

Pokaż szczegóły pakietu

Tutaj -p(małe litery p) pokaże informacje o pakiecie:

# dpkg -p {package_name}
# dpkg -p apache2

Wyświetl zawartość paczki

Użyj -c(małe litery c), aby wyświetlić zawartość:

# sudo dpkg -c {package_name}
# sudo dpkg -c skype-ubuntu-precise_4.2.0.11-1_i386.deb

Wyodrębnij *.debplik pakietu

Użyj -x(małe litery x), aby wyodrębnić:

# dpkg -x {package_name} {location_were_to_extract}
# dpkg -x libqt4-phonon_4.6.3-4+squeeze1_i386.deb /home/sysadmin/

Wyodrębnij i wyświetl nazwy plików zawarte w pakiecie

Użyj -X(wielkich liter X), aby wyświetlić zawartość z rozpakowaniem.

# dpkg -X {package_name} {location_were_to_extract}
# dpkg -X libqt4-phonon_4.6.3-4+squeeze1_i386.deb /home/sysadmin/

Wyświetl informacje o paczce

Oto -Iinformacje:

# dpkg -I {package_name}
# dpkg -I libqt4-phonon_4.6.3-4+squeeze1_i386.deb

Ponownie skonfiguruj już zainstalowany pakiet

dpkg-reconfigurerekonfiguruje pakiety po ich zainstalowaniu. Przekaż nazwę (-y) pakietu lub pakietów do rekonfiguracji. Zadaje pytania konfiguracyjne, podobnie jak w przypadku pierwszej instalacji pakietu.

# dpkg-reconfigure postfix

Spowoduje to ponowną konfigurację w postfixtaki sam sposób, jak przy pierwszej instalacji.

Chcesz wiedzieć więcej o dpkgpoleceniach? Zajrzyj na stronę podręcznika:

# man dpkg
Babin Lonston
źródło
5
Sprawdź, czy pakiet jest zainstalowany, czy nie, a jeśli tak, uruchom go:# dpkg -l | vlc ” - spowoduje to tylko przesłanie listy pakietów do vlc, z nieprzewidywalnymi rezultatami, jeśli zostanie zainstalowany; i nie lepsze niż pisanievlc
Xen2050,
51

Chociaż dpkg -irzeczywiście instaluje pakiet, nie wykonuje żadnego automatycznego rozwiązywania zależności, tymczasem istnieją dwie inne alternatywy, używając gdebi lub narzędzia apt-get. Aby użyć później, po prostu użyj:

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

Nawet jeśli jesteś w katalogu z pakietem, musisz podać ścieżkę, używając ./na początku:

sudo apt-get install ./package.deb
Braiam
źródło
13
To prawdopodobnie najlepsza odpowiedź. aptzapobiegnie uszkodzeniu systemu, jeśli nie masz właściwych zależności.
mlainz
Wydaje się, że to polecenie wybiera wszystkie istniejące pakiety.
Hibou57
@ Hibou57 w nazwie pakietu nie może być spacji.
Braiam
26

Przydatną wskazówką przy instalacji programu takiego jak Libreoffice, który ma wiele plików .deb w folderze, jest użycie.

sudo dpkg -i *.deb
tadcan
źródło
2
Nigdy nie używaj tego polecenia. Musisz ręcznie usunąć wszystkie debaty, jeśli chcesz usunąć ten pakiet. sudo apt remove example, sudo apt autoremoveI sudo dpkg -r *.debnie działa.
nikt nie
12

Rozwiązanie gdebiwiersza polecenia

Oto najlepszy sposób na zainstalowanie pliku .deb na Ubuntu w wierszu poleceń:

sudo gdebi skype.deb

Jeśli jeszcze tego nie zrobiłeś gdebi, zainstaluj za pomocą sudo apt install gdebi-core.

Dlaczego gdebi

gdebiwyszuka wszystkie zależności .debpliku i zainstaluje je przed próbą zainstalowania .debpliku. Uważam to za znacznie lepsze niż sudo dpkg -i skype.deb && sudo apt install -f. Ten ostatni jest zbyt chętny do usunięcia zależności w niektórych sytuacjach. Na przykład, kiedy próbowałem zainstalować Skype, próbowałem usunąć 96 (!) Pakietów, w tym pakietów takich jak compizi unity! gdebidał wyraźniejszy komunikat o błędzie:

$ sudo gdebi skype.deb
Cannot install 'libqtgui:i386'

(Nawiasem mówiąc, oto rozwiązanie tego konkretnego problemu ).

Flimm
źródło
askubuntu.com/a/170557/158442 mówi, że gdebimożna go używać z wiersza poleceń
muru
@muru Tak, ale łatwo to przegapić z powodu zrzutu ekranu. Nie wyjaśnia też problemów zdpkg -i skype.deb
Flimm,
11

Utwórz własny instalator skryptów debInstallerw następujący sposób:

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

Spraw, aby skrypt był wykonywalny za pomocą

chmod +x debInstaller

Następnie przenieś go do niektórych katalogów w ŚCIEŻCE lub dodaj bieżący katalog do ŚCIEŻKI.

Zamierzam przenieść go do / usr / bin

sudo cp debInstaller /usr/bin

Teraz możesz zainstalować dowolny .debpakiet za pomocą polecenia:

sudo debInstaller some-package.deb

Wartością dodaną tej metody jest rozwiązanie problemu zależności, ponieważ w większości przypadków napotkasz pewne problemy podczas instalacji .deb z dpkg -ipowodu błędu zależności, więc musisz apt-get install -fgo rozwiązać, ten skrypt wykona zadanie za ciebie, ale tutaj apt-get --yes --fix-broken installautomatycznie rozwiązałem te błędy bez interwencji użytkownika.

Maythux
źródło
10

Aby zainstalować pliki deb, otwórz Terminal i wpisz:

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

Drugi wiersz dotyczy naprawy uszkodzonych pakietów, jeśli instalacja się nie powiedzie, a następnie zainstaluj ponownie, aby zakończyć instalację.

Innym podejściem jest użycie gdebinarzędzia do instalowania plików deb.

Benny
źródło
0

Istnieje wiele narzędzi do instalacji pakietu deb. Osobiście używam wbudowanego instalatora pakietów dpkg

Jeśli jesteś zalogowany jako root, zmień katalog na lokalizację pakietu deb

dpkg -i package_name.deb

jeśli nie jesteś zalogowany jako root

sudo dpkg -i package_name.deb

Aby upewnić się, że pakiet został zainstalowany poprawnie i nie ma żadnych zepsutych zależności

sudo apt-get check

Jeśli są jakieś zepsute zależności

sudo apt-get -f install
mistrz pianisty
źródło