Wie installiere ich eine .deb-Datei über die Befehlszeile?

Antworten:

1244

Pakete werden manuell über den dpkgBefehl (Debian Package Management System) installiert . dpkgist das Backend für Befehle wie apt-getund aptitude, die wiederum das Backend für GUI-Installations-Apps wie das Software Center und Synaptic sind.

Etwas in der Art von:

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

Aber natürlich ist die einfachstenen Möglichkeiten , um ein Paket zu installieren wären zunächst die GUI - Anwendungen (Synaptische, Software Center, etc ..), gefolgt von dem Terminal - Befehlen apt-getund aptitudehinzufügen , dass ein sehr schönen benutzerfreundlichen Ansatz für das Back - End - dpkg, einschließlich , aber nicht beschränkt auf gepackte Abhängigkeiten, Kontrolle darüber, was installiert ist, was aktualisiert werden muss, nicht installiert ist, defekte Pakete usw. Schließlich der dpkgBefehl, der die Basis für alle von ihnen ist.

Da dpkg die Basis ist, können Sie das Paket direkt von der Befehlszeile aus installieren.

Installieren Sie ein Paket

sudo dpkg -i DEB_PACKAGE

Wenn zum Beispiel die Paketdatei aufgerufen askubuntu_2.0.debwird, sollten Sie dies tun sudo dpkg -i askubuntu_2.0.deb. Wenn dpkgaufgrund von Abhängigkeitsproblemen ein Fehler gemeldet wird, können Sie sudo apt-get install -fdie fehlenden Abhängigkeiten herunterladen und alles konfigurieren. Wenn dies einen Fehler meldet, müssen Sie die Abhängigkeiten selbst aussortieren, indem Sie beispielsweise wie folgt vorgehen: Wie löse ich nicht erfüllte Abhängigkeiten, nachdem Sie eine PPA hinzugefügt haben? .

Entfernen Sie ein Paket

sudo dpkg -r PACKAGE_NAME

Wenn das Paket beispielsweise aufgerufen askubuntuwird, sollten Sie dies tun sudo dpkg -r askubuntu.

Konfigurieren Sie ein vorhandenes Paket neu

sudo dpkg-reconfigure PACKAGE_NAME

Dies ist nützlich, wenn Sie etwas in Bezug auf das Paket neu konfigurieren müssen. Einige nützliche Beispiele es das , keyboard-configurationwenn Sie die aktivieren möchten Ctrl+ Alt+ , Backspaceum den X - Server zurückgesetzt werden , so würden Sie wie folgt vor :

sudo dpkg-reconfigure keyboard-configuration

Eine weitere gute Möglichkeit ist, wenn Sie die Zeitzone für einen Server oder Ihren lokalen Testcomputer festlegen müssen, damit Sie das tzdataPaket verwenden können:

sudo dpkg-reconfigure tzdata
Luis Alvarado
quelle
4
Tolle Info, musste einen Weg finden, um Traceroute zu installieren, um zu helfen, zu debuggen, warum mein Computer keine Verbindung zum Internet herstellen kann :)
Jason
23
Es ist auch hilfreich zu beachten, dass sich einmal installierte Programme normalerweise in / usr / bin befinden, benannt nach dem, was entpackt wurde.
Chris Moschini
Wenn ich laufe sudo apt-get install texlive-latex-base, ist es seit Monaten mit "Hash Sum Mismatch" fehlgeschlagen. Ich kann die .deb-Datei von herunterladen http://gb.archive.ubuntu.com/ubuntu/pool/main/t/texlive-base/texlive-latex-base-doc_2015.20150625-1ubuntu1_all.deb. Wenn ich es mit dpkg installiere, wird es anschließend von apt-get erkannt (und aktualisiert).
user643722
1
Alter, du bist großartig. so selten sehe ich Linux-Antworten, die so detailliert sind. Wenn es um neue Fragen geht, ist es wichtig !! danke
Elad Katz
1
Wenn es einfacher und besser ist, über aptitudeoder apt-get(oder einfach apt) zu installieren , warum werden hier keine Beispiele für diese Befehle angegeben?
Intuition 18.11.17
161

Debian (.deb) -Pakete sind die Pakete, die in Ubuntu verwendet werden. Sie können jedes .deb-Paket auf Ihrem System installieren. .deb-Dateien können im Allgemeinen von Ihrem Dateimanager (Nautilus) installiert werden, indem Sie darauf klicken, da die Dateizuordnungen zum Standardinstallationsprogramm bereits in Ubuntu festgelegt sind. Diese Anweisungen richten sich an Benutzer, die Pakete über das Befehlszeilenterminal (Terminal) installieren möchten.

So installieren Sie ein heruntergeladenes Debian ( Ubuntu ) -Paket (.deb): Öffnen Sie das Terminal und geben Sie Folgendes ein

sudo dpkg -i packagename.deb

So entfernen Sie ein Debian (Ubuntu) -Paket (.deb):

sudo dpkg -r packagename

So konfigurieren / reparieren Sie ein installiertes Debian (Ubuntu) -Paket (.deb):

sudo dpkg-reconfigure packagename
Atul Makwana
quelle
105

Mein Favorit ist GDebi, das sowohl über das Terminal / die Shell als auch über den grafischen Desktop erhältlich ist.

Bildschirmfoto

Ich verbinde normalerweise .debDateien mit GDebi, da es schnell und effizient ist - insbesondere im Vergleich zu Ubuntu Software Center. Eine der Hauptfunktionen von GDebi besteht darin, Abhängigkeiten aufzulösen und zu installieren.

Zum Ausführen sudo gdebi <package.deb>einer Befehlszeile , um eine einzelne deb-Datei zu installieren.

dsto
quelle
5
es prüft vor der Installation auf Abhängigkeiten, thx !!
Aquarius Power
Kann gdebi sogar die Abhängigkeiten herunterladen oder müssen wir sie manuell herunterladen? @ Pandya
Jasser
Wahrscheinlich besser für Leute, die nicht unter Linux arbeiten.
Nisheet
+1 für "es löst Abhängigkeiten auf und installiert sie", was der Schlüssel ist.
Revetahw
85

Suchen Sie nach allen dpkg- Befehlen? Klicken Sie auf diesen Link, um ihn zu lesen.

15 dpkg-Befehle zum Verwalten von Debian-basierten Linux-Servern

DPKG-Befehle

Es gibt zwei Aktionen, sie sind dpkg-queryund dpkg-deb.

Installieren Sie ein Paket

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

Entfernen Sie ein Paket

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

Entfernen Sie ein Paket und seine Konfigurationsdateien

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

Listet alle installierten Pakete auf.

Sie können den Befehl an less(einen Pager) weiterleiten, um den Inhalt einfacher zu scrollen:

# dpkg -l | less

Überprüfen Sie, ob das Paket installiert ist oder nicht

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

Überprüfen Sie, ob das Paket installiert ist oder nicht, und starten Sie es, falls dies der Fall ist:

# dpkg -l | vlc

Prüfen Sie, ob ein Paket installiert ist oder nicht

Und dies zeigt den Ort, an dem das Paket installiert wird. Hier -S( Groß- / Kleinschreibung S) suchen, ob das Paket installiert wurde oder nicht.

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

Installieren Sie ein * .deb-Paket von einem angegebenen Speicherort

Hier -Rist rekursiv. (Behandeln Sie rekursiv alle regulären Dateien, die mit dem Muster *.debin den angegebenen Verzeichnissen und allen Unterverzeichnissen übereinstimmen .)

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

Paketdetails anzeigen

Hier -p(in Kleinbuchstaben p) werden die Paketinformationen angezeigt:

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

Zeigen Sie den Inhalt eines Pakets an

Verwenden Sie -c(Kleinbuchstaben c), um den Inhalt anzuzeigen:

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

Extrahieren Sie die *.debPaketdatei

Verwenden Sie -x(Kleinbuchstaben x), um Folgendes zu extrahieren:

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

Extrahieren Sie die in einem Paket enthaltenen Dateinamen und zeigen Sie sie an

Verwenden Sie -X(Großbuchstaben X), um den Inhalt mit Extraktion anzuzeigen.

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

Informationen zu einem Paket anzeigen

Hier -Isteht zur Information:

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

Konfigurieren Sie ein bereits installiertes Paket neu

dpkg-reconfigureKonfiguriert Pakete neu, nachdem sie bereits installiert wurden. Übergeben Sie ihm die Namen eines Pakets oder von Paketen, die neu konfiguriert werden sollen. Es werden Konfigurationsfragen gestellt, ähnlich wie bei der Erstinstallation des Pakets.

# dpkg-reconfigure postfix

Dies wird auf postfixdie gleiche Weise neu konfiguriert wie bei der erstmaligen Installation.

Möchten Sie mehr über dpkgBefehle erfahren ? Schauen Sie sich die Handbuchseite an:

# man dpkg
Babin Lonston
quelle
5
" Überprüfen Sie, ob das Paket installiert ist oder nicht, und starten Sie es, wenn dies# dpkg -l | vlc der Fall ist : " - Dies würde nur eine Liste von Paketen an vlc leiten, mit unvorhersehbaren Ergebnissen, wenn es installiert wäre. und nicht besser als nur vlc
tippen
51

Zwar wird dpkg -idas Paket installiert, es wird jedoch keine automatische Abhängigkeitsauflösung durchgeführt. In der Zwischenzeit gibt es zwei weitere Alternativen: gdebi oder das Tool apt-get. Um das später zu benutzen, benutze einfach:

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

Auch wenn Sie sich im Verzeichnis mit dem Paket befinden, müssen Sie zu ./Beginn einen Pfad angeben :

sudo apt-get install ./package.deb
Braiam
quelle
13
Dies ist wahrscheinlich die beste Antwort. aptverhindert, dass Sie Ihr System beschädigen, wenn Sie nicht die richtigen Abhängigkeiten haben.
15.
Dieser Befehl scheint alle vorhandenen Pakete auszuwählen.
Hibou57
@ Hibou57 Der Paketname darf kein Leerzeichen enthalten.
Braiam
26

Ein praktischer Tipp für die Installation eines Programms wie Libreoffice, das mehrere .deb-Dateien in einem Ordner enthält, ist die Verwendung.

sudo dpkg -i *.deb
Tadcan
quelle
2
Verwenden Sie niemals diesen Befehl. Sie müssen alle Schulden manuell entfernen, wenn Sie dieses Paket entfernen möchten. sudo apt remove example, sudo apt autoremoveUnd sudo dpkg -r *.debfunktioniert nicht.
29.
12

Die gdebiKommandozeilenlösung

So installieren Sie eine .deb-Datei auf Ubuntu über die Befehlszeile:

sudo gdebi skype.deb

Wenn Sie es noch nicht gdebiinstalliert haben , installieren Sie es mit sudo apt install gdebi-core.

Warum gdebi?

gdebisucht nach allen Abhängigkeiten der .debDatei und installiert sie, bevor versucht wird, die .debDatei zu installieren . Ich finde das viel besser als sudo dpkg -i skype.deb && sudo apt install -f. Letzteres ist viel zu bemüht, Abhängigkeiten in bestimmten Situationen zu beseitigen. Als ich zum Beispiel versuchte, Skype zu installieren, versuchte es, 96 (!) Pakete zu entfernen, einschließlich Pakete wie compizund unity! gdebigab eine viel klarere Fehlermeldung:

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

(Hier ist übrigens die Lösung für dieses spezielle Problem .)

Flimm
quelle
askubuntu.com/a/170557/158442 sagt, gdebikann von der Kommandozeile verwendet werden
muru
@muru Ja, aber aufgrund des Screenshots ist es leicht zu übersehen. Es erklärt auch nicht die Probleme mitdpkg -i skype.deb
Flimm
11

Erstellen Sie Ihr eigenes Skript-Installationsprogramm debInstallerwie folgt:

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

Machen Sie das Skript ausführbar mit

chmod +x debInstaller

Verschieben Sie es dann in einige Verzeichnisse in Ihrem PATH oder fügen Sie das aktuelle Verzeichnis Ihrem PATH hinzu.

Ich werde es nach / usr / bin verschieben

sudo cp debInstaller /usr/bin

Jetzt können Sie jedes .debPaket mit dem folgenden Befehl installieren :

sudo debInstaller some-package.deb

Der Mehrwert dieser Methode ist , die die Abhängigkeiten Problem zu lösen, da meistens werden Sie einige Probleme, wenn Sie eine Installation von .deb mit dpkg -iAbhängigkeiten Fehler aufgrund, so müssen Sie verwenden , apt-get install -fes zu lösen, dieses Skript wird die Arbeit für Sie tun, aber Hier habe ich apt-get --yes --fix-broken installdiese Fehler automatisch behoben, ohne dass der Benutzer eingreifen musste.

Maythux
quelle
10

Um deb-Dateien zu installieren, öffnen Sie Terminal und geben Sie Folgendes ein:

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

In der zweiten Zeile werden fehlerhafte Pakete behoben, wenn die Installation fehlschlägt. Installieren Sie anschließend erneut, um die Installation abzuschließen.

Ein anderer Ansatz ist die Verwendung eines gdebiTools zum Installieren von Deb-Dateien.

Benny
quelle
0

Es gibt viele Tools, um ein Deb-Paket zu installieren. Ich persönlich verwende das integrierte Paket-Installationsprogramm dpkg

Wenn Sie als root angemeldet sind, wechseln Sie in das Verzeichnis des deb-Pakets

dpkg -i package_name.deb

wenn Sie nicht als root angemeldet sind

sudo dpkg -i package_name.deb

Um sicherzustellen, dass das Paket korrekt installiert wurde und keine fehlerhaften Abhängigkeiten aufweist

sudo apt-get check

Wenn es defekte Abhängigkeiten gibt

sudo apt-get -f install
Meisterpianist
quelle