dpkgの目的は何ですか?


21

私の質問は簡単です-dpkgについてもっと知りたいです-それは何をしますか?


これは少なくとも2回編集されて、明確性が向上しています。少なくとも1つの適切な回答が生成されているため、開いたままにしておく価値があります(重複していない場合)。
ベラク

1
最初にアクセスしてください:en.wikipedia.org/wiki/Dpkg
Pandya

回答:


17

前述のように、dpkg.debファイルを抽出、分析、解凍、インストール、または削除するための低レベルのシステムツールです。ただし、これら2つのプログラムには依存関係の解決があるため、他のソースから取得した.debファイルを使用Software CentreまたはGdebiインストールまたは削除することをお勧めします。

ただし、説明されていないのは、とを使用した更新の構造です。たとえば、install を呼び出すと、依存関係ツリーが分析され、必要なファイルがによってフェッチされ、適切な場所への抽出、分析、およびインストールにそれらが渡され、ファイル内のスクリプトに従って構成されます。dpkgapt-getapt-getcheeseapt-getdpkg

dpkg各.debファイル内で読み取られるスクリプトは、パッケージのインストール、削除、および構成に関する情報をプログラムに提供するため重要です。したがって、/var/log/dpkg.log「トリガー」とパッケージのアンパックと構成のさまざまな段階を通過するパッケージに関する詳細な詳細が表示されます。彼のブログで、Raphael Hertzog(Debianの主要な開発者であり、dpkgパッケージのメンテナーです)は、dpkgトリガーdpkgパッケージの検査と設定の方法について詳しく説明しています。

私たちは今、何をするのかという核心に迫ってdpkgいます。依存関係ではなく、Debianパッケージを巧みに処理します。dpkg-debたとえば、あなたが分析し、手動での.debアーカイブからファイルを抽出することでさまざまなアクションを実行することができ、。詳細についてはman dpkg-deb、を参照してください。

各パッケージのステータスはにリストされており、特定のパッケージのチェックに/var/lib/dpkg/status使用できgrepます。Dpkg構成済みの特定のパッケージを再構成するために呼び出すこともできます(を参照man dpkg-reconfigure)。

sudo dpkg-reconfigure <package>

または、更新に問題があり、一部のパッケージの構成がまだ保留中の場合、すべての未構成パッケージの構成を行うには:

sudo dpkg --configure -a

焦点を当てた素晴らしいチュートリアルではdpkgapt-get、の第5章と第6章を参照のDebianハンドブック利用可能な最善の議論です。man dpkg端末に入力するか、Ubuntuのマンページをオンラインで表示して、dpkg -l現在インストールされているパッケージのリストを表示するなど、使用可能な多くのオプションをすべて表示します。


4

dpkgは、.debからインストールするか、既にインストールされているパッケージを削除するコマンドラインの方法です。たとえば、ホームディレクトリに.debファイルがある場合、実行dpkg -i yourpackage.debするとそのパッケージがインストールされます。.debファイルをクリックすると、Ubuntu Software Centerがロードされることがありますが、実際にインストールしたり問題が発生したりすることはないため、これは私にとって非常に便利です。


4

いつものように、manコマンドは開始するのに最適な場所です。
man dpkgそれにもかかわらず、すべてのオプションを提供できます:

dpkgは、Debianベースのシステムのパッケージマネージャーです。パッケージをインストール、削除、およびビルドできますが、他のパッケージ管理システムとは異なり、パッケージとその依存関係を自動的にダウンロードおよびインストールすることはできません。

したがって、基本的には依存関係を解決しないapt-getであり、.debファイルのインストールに使用されます。

ただし、dpkgを使用してパッケージをアンインストールすることは、ほとんどの場合、お勧めしません。システムが一貫した状態になるように、依存関係を処理するパッケージマネージャーを使用することをお勧めします。

たとえば、使用dpkg -r zipするとzipパッケージを削除できますが、それに依存するパッケージはインストールされたままになり、正しく機能しなくなる可能性があります。

これについては、サーバーガイドなど詳しく読むことができます。

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