ウェブサイト検索

UbuntuにおけるAPTとdpkgの違いは何ですか?


Ubuntuやその他のDebianベースのディストリビューションは、APTとdpkgを使用してパッケージを管理します。しかし、どちらがあなたのニーズにより適しているのでしょうか?

Ubuntuや他のDebianベースのLinuxディストリビューションを使用している場合、APTコマンドを使用するように指示するインストール手順を読んだことがあるでしょうが、他の人はdpkgを使用するように指示してきたでしょう。

では、これらのパッケージマネージャーのいずれかを使用してLinuxシステムにパッケージをインストールすることが重要ですか?違いは何ですか?今日は、Ubuntuにパッケージを最適にインストールする方法を知るために、これらの質問に取り組みます。

APT と dpkg: 2 つの重要なパッケージインストーラー

APT と dpkg は、Ubuntu および他の Debian ベースのシステムでターミナルで使用できるコマンドラインパッケージ管理インターフェースです。これらは、DEB ファイルのインストールやインストール済みパッケージの一覧表示など、さまざまなことができます。

しかし、あなたは彼らがそれほど似ているなら、なぜAPTとdpkgの両方が必要なのか疑問に思うかもしれません。

実際に、2つのインターフェースは連携しており、APTはdpkgを通じて完全なパッケージ管理ツールとして機能します。

混乱していますか?重要な違いを分解してみましょう。

APTはdpkgを使用してパッケージをインストールします。

APT(またはそのクローンであるApt-get)がパッケージをインストールする際、実際にはバックエンドでdpkgを使用してそれを実現しています。そのため、dpkgはAPTのよりユーザーフレンドリーなインターフェースの「裏方」ツールとして機能します。

APTはパッケージをダウンロードできます

APTを使用すると、リモートリポジトリからファイルを取得し、インストールすることが一つのコマンドでできます。これにより、インストール前にパッケージを手作業で見つけてダウンロードする手間が省けます。

dpkgを使用すると、自分で既にダウンロードしたローカルファイルのみをインストールできます。リモートリポジトリを検索したり、そこからパッケージを取得したりすることはできません。

Dpkgは依存関係をインストールしません

dpkgでパッケージをインストールすると、単にそのパッケージがインストールされるだけです。しかし、一部のパッケージは動作するために依存関係と呼ばれる追加のソフトウェアが必要です。この場合、dpkgはエラーメッセージで警告することがあります。

ただし、APTは自動的に関連する依存関係を確認して取得し、インストールしようとしているものが正しく機能するようにします。だからこそ、dpkgでパッケージをインストールした後でも、依存関係を復元するためのAPTの特別なコマンドを使用することをお勧めします。

sudo apt install -f

Dpkg インデックスはローカルパッケージのみ

システムにインストールされているパッケージを調べようとしている場合、dpkgの--list機能はAPTよりも役立つかもしれません。それは、リモートパッケージを見つけてダウンロードできないのと同様に、dpkgもデバイスにローカルでないパッケージをリストアップすることができないからです。

dpkg --list

APTのlistコマンドは、知っているすべてのパッケージを、ローカルかどうかにかかわらずリストアップします。

apt list

インストールされているパッケージのみを表示するには、--installed または -i オプションを指定する必要があります。

apt list --installed

DpkgとApt: どちらがあなたにとって良いのか?

dpkgを使ってローカルパッケージをインストールしたい場合、問題なく行うことができます。しかし、リモートのソフトウェアリポジトリでパッケージを定期的に探すのであれば、APTやApt-getの方が適しています。

APTは、あなたが望むパッケージを見つけてダウンロードする作業を行い、必要な依存関係がすべて満たされていることを確認します。dpkgも使用できますが、APTは同じ機能を果たしながら、ソフトウェアがあなたの必要に応じて動作するようにします。さらに、APTはパッケージを正しくアンインストールし、システムから削除するのに理想的です。

関連記事: