コマンドラインから.debファイルをインストールするにはどうすればよいですか?


回答:


1244

パッケージは、コマンド(Debian Package Management System)を使用して手動でインストールされdpkgます。dpkgは、apt-getやなどのコマンドのバックエンドaptitudeであり、Software CenterやSynapticなどのGUIインストールアプリのバックエンドです。

以下のラインに沿ったもの:

dpkg-> apt-getaptitude-> Synaptic、ソフトウェアセンター

しかし、もちろんパッケージをインストールする最も簡単な方法は次のようになり、まず、GUIターミナルコマンドに続いてアプリを(シナプス、ソフトウェアセンター、等。)、apt-getそしてaptitudeそれは、バックエンドのdpkgのに非常に素晴らしいユーザーフレンドリーなアプローチを追加含むが、パッケージ化された依存関係に限定されず、インストールされているものを制御し、更新が必要で、インストールされていない、壊れたパッケージなどがあります。最後に、dpkgそれらすべてのベースとなるコマンド。

dpkgはベースであるため、コマンドラインから直接packagedをインストールするために使用できます。

パッケージをインストールする

sudo dpkg -i DEB_PACKAGE

たとえば、パッケージファイルが呼び出されるaskubuntu_2.0.deb場合は、実行する必要がありますsudo dpkg -i askubuntu_2.0.debdpkg依存関係の問題が原因でエラーが報告された場合は、実行sudo apt-get install -fして不足している依存関係をダウンロードし、すべてを構成できます。エラーが報告された場合、たとえばPPAを追加した後、満たされていない依存関係を解決するにはどうすればよいですか?

パッケージを削除する

sudo dpkg -r PACKAGE_NAME

たとえば、パッケージが呼び出される場合はaskubuntu、実行する必要がありますsudo dpkg -r askubuntu

既存のパッケージを再構成する

sudo dpkg-reconfigure PACKAGE_NAME

これは、パッケージに関連する何かを再構成する必要がある場合に便利です。Xサーバーをリセットするために+ + keyboard-configurationを有効にする場合の便利な例は次のとおりです。CtrlAltBackspace

sudo dpkg-reconfigure keyboard-configuration

もう1つの優れた方法は、サーバーまたはローカルのテストコンピューターにタイムゾーンを設定する必要がある場合です。そのため、次のtzdataパッケージを使用します。

sudo dpkg-reconfigure tzdata

4
私のマシンがインターネットに接続しない理由をデバッグするために、tracerouteをインストールする方法を見つけなければなりませんでした:)
ジェイソン

23
また、一度インストールされたプログラムは、通常/ usr / binにあり、パッケージ解除されたものにちなんで名前が付けられていることに注意してください。
クリスモスキーニ14年

を実行するとsudo apt-get install texlive-latex-base、「ハッシュ合計の不一致」で数か月間失敗しました。.debファイルはからダウンロードできますhttp://gb.archive.ubuntu.com/ubuntu/pool/main/t/texlive-base/texlive-latex-base-doc_2015.20150625-1ubuntu1_all.deb。dpkgを使用してインストールすると、その後apt-getによって認識(および更新)されます。
user643722

1
君はすごい。Linuxの回答があまりにも詳細に表示されることはめったにありません。初心者の質問に関しては重要です!! おかげで
エラッドカッツ

1
aptitudeまたはapt-get(または単にapt)を介してインストールする方が簡単で優れている場合、これらのコマンドの例がここに記載されていないのはなぜですか?
直観

161

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

105

私のお気に入りはGDebiで、ターミナル/シェルまたはグラフィカルデスクトップの両方から入手できます。

スクリーンショット

.deb特に、Ubuntu Software Centerと比較して、ファイルはGDebiに高速で効率的であるため、通常は関連付けます。GDebiの主な機能の1つは、依存関係を解決してインストールすることです。

コマンドラインで実行sudo gdebi <package.deb>して、単一のdebファイルをインストールします。


5
インストールする前に依存関係をチェックします、thx !!
アクエリアスパワー

gdebiは依存関係をダウンロードすることもできますか、それとも手動でダウンロードする必要がありますか?? @パンディア
ジャッサー

Linux以外のバックグラウンドから引っ越してくる人にとってはおそらく良いでしょう。
ニシート16

重要な「依存関係を解決してインストールする」ための+1。
-Revetahw

85

すべてのdpkgコマンドを探していますか?このリンクをクリックして読んでください。

DebianベースのLinuxサーバーを管理する15のdpkgコマンド

DPKGコマンド

2つのアクションがあり、それらはdpkg-querydpkg-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パッケージが既にインストールされた後に再構成します。再構成する1つまたは複数のパッケージの名前を渡します。パッケージが最初にインストールされたときと同じように、構成に関する質問をします。

# dpkg-reconfigure postfix

これはpostfix、初めてインストールしたときと同じ方法で再構成されます。

dpkgコマンドについてもっと知りたいですか?マニュアルページをご覧ください。

# man dpkg

5
" パッケージがインストールされているかどうかを確認し、インストールされている場合は起動します:# dpkg -l | vlc "-これはパッケージのリストをvlcにパイプするだけで、インストールされた場合は予測できない結果になります。ちょうどタイピングよりも良いんvlc
Xen2050

51

dpkg -iパッケージを実際にインストールしますが、依存関係の自動解決は行いませんが、gdebiまたはapt-getツールを使用する他の2つの選択肢があります。後者を使用するには、次を使用します。

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

パッケージがあるディレクトリにいる場合でも./、最初に使用するパスを指定する必要があります。

sudo apt-get install ./package.deb

13
これがおそらく最良の答えです。apt正しい依存関係がない場合に、システムが破損するのを防ぎます。
mlainz

このコマンドは、既存のすべてのパッケージを選択するようです。
Hibou57

@ Hibou57パッケージ名にスペースを含めることはできません。
Braiam

26

フォルダーに複数の.debファイルがあるLibreofficeのようなプログラムをインストールする際の便利なヒントは、使用することです。

sudo dpkg -i *.deb

2
このコマンドを使用しないでください。そのパッケージを削除する場合は、すべてのdebを手動で削除する必要があります。sudo apt remove examplesudo apt autoremoveおよびsudo dpkg -r *.deb動作しません。
誰も

12

gdebiコマンドラインソリューション

コマンドラインでUbuntuに.debファイルをインストールする最良の方法は次のとおりです。

sudo gdebi skype.deb

gdebiまだインストールしていない場合は、を使用してインストールしsudo apt install gdebi-coreます。

なぜgdebiなのか?

gdebi.debファイルのすべての依存関係を探し、ファイルをインストールする前にそれらをインストールし.debます。私はこれよりもはるかに好ましいと思いますsudo dpkg -i skype.deb && sudo apt install -f。後者は、特定の状況で依存関係を削除するにはあまりにも熱心です。たとえば、Skypeをインストールしようとしたときにcompizunity!や!などのパッケージを含む96個の(!)パッケージを削除しようとしました。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

次に、PATHのいくつかのディレクトリに移動するか、現在のディレクトリをPATHに追加します。

/ usr / binに移動します

sudo cp debInstaller /usr/bin

これで.deb、次のコマンドを使用して任意のパッケージをインストールできます。

sudo debInstaller some-package.deb

このメソッドの付加価値は、依存関係の問題を解決することです。依存関係エラーのために.deb with をインストールするといくつかの問題に直面することがほとんどなdpkg -iのでapt-get install -f、このスクリプトを使用して解決する必要があります。ここでは、apt-get --yes --fix-broken installユーザーの介入なしにこれらのエラーを自動的に解決していました。


10

debファイルをインストールするには、ターミナルを開いて次を入力します。

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

2行目は、インストールが失敗した場合に破損したパッケージを修正し、再度インストールしてインストールを完了します。

別のアプローチは、gdebiツールを使用してdebファイルをインストールすることです。


0

個人的に組み込みパッケージインストーラーdpkgを使用するdebパッケージをインストールするための多くのツールがあります。

ルートとしてログインしている場合は、ディレクトリをdebパッケージの場所に変更します

dpkg -i package_name.deb

ルートとしてログインしていない場合

sudo dpkg -i package_name.deb

パッケージが正しくインストールされ、破損した依存関係がないことを確認するには

sudo apt-get check

破損した依存関係がある場合

sudo apt-get -f install
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.