apt-getはどこにパッケージをインストールしますか?

Where Does Apt Get Install Packages



Linuxのベテランであろうと、Linuxを始めたばかりであろうと、apt-getを使用したか、どこかで使用されているのを見たことがあるはずです。これは、Ubuntuにパッケージと依存関係をインストールするための主要な方法です。簡単に言うと、apt-getは、コンピューターにソフトウェアをセットアップしようとするすべてのLinuxユーザーの頼みの綱です。これは新しい質問を引き起こします– apt-getはこれらのパッケージをどこにインストールしますか?ファイルはどこに行き、どのようにアクセスできますか?このガイドでは、これらの質問に対する回答を見つけます。

Ubuntuファイルシステムのレイアウト

問題の専門性に入る前に、ファイルシステム階層標準(略してFHS)の基本的な理解を習得することから始めましょう。すべてのLinuxディストリビューションは、ファイルシステム階層標準からディレクトリ構造とコンテンツを取得します。 apt-getインストールパッケージがどこにあるのか、そしてその理由を理解するために重要ないくつかの部分について簡単に説明します。







FHSは、すべてのLinuxディストリビューションのディレクトリ構造とコンテンツに関する権限とは見なされていませんが、一般に、ファイルレイアウトの最も一般的な標準です。 FHS内のすべてのディレクトリとファイルは、ルートディレクトリである「/」の下に表示されます。一般的に使用されるディレクトリをいくつか見てみましょう。



  • / binディレクトリは、プライマリコマンドバイナリを保持します。
  • / devディレクトリにはデバイスファイルが含まれています。
  • / etcディレクトリには、ホスト固有の構成ファイルがあります。
  • / homeフォルダには、ユーザーの個人設定と保存されたファイルが含まれています。

Linux Foundationとして知られる非営利団体は、ファイルシステム階層標準を維持しており、最後の更新(バージョン3.0)は2015年6月3日に行われました。



一般的なLinuxファイルシステムの構造と動作について理解が深まったので、apt-getがこの構造を利用してパッケージと依存関係をインストールする方法を学ぶ準備が整いました。





パッケージ管理

すべてのオペレーティングシステムとLinuxディストリビューションには、パッケージマネージャーが付属しています。これらのパッケージマネージャーは、コンピューターのソフトウェアのインストールと削除、およびそれらの保守を担当します。これにより、ユーザーはシステムで実行するプログラムの種類をより細かく制御でき、インストールが可能になります。

Ubuntu(およびDebian)では、dpkgはほとんどの人が使用するパッケージマネージャーです。拡張子が.debのパッケージはdpkgで管理できます。このユーティリティを使用してapt-getinstallsパッケージを検索するため、このユーティリティについて説明することは、私たちの主題に関連しています。 Aptitudeは、ユーザーにフロントエンドを提供するため、dpkgを使用するためのよりユーザーフレンドリーな方法です。 Ubuntuでdpkgがどのように機能するか、その構文、およびapt-getがパッケージをインストールする場所を見つけるためにdpkgを使用する方法を見てみましょう。



このコマンドの一般的な構文は次のとおりです。

$dpkg [行動]

それを使用する別の一般的な方法は次のとおりです。

$dpkg [オプション]ファイル名

次の簡単なdpkgコマンドを実行して、Linuxシステムにパッケージをインストールできます。

$dpkg -私パッケージ名

次のセクションでは、dpkgとapt-getを使用してパッケージをインストールする方法を理解し、パッケージがインストールされる場所を学習します。

apt-getはどのように機能しますか?

この時点で、apt-getを使用してLinuxパッケージをインストール、削除、およびアップグレードできることは誰もが知っています。また、UbuntuとDebianのネイティブパッケージ管理ユーティリティであるdpkgのフロントエンドとして機能することも学びました。しかし、それは実際にどのように機能しますか?そして、それによってインストールされるファイルはどうなりますか?確認してみましょう!

ackというテストパッケージをインストールすることから始めましょう。この目的のために、apt-getを使用し、後でそれによってインストールされたファイルを特定の場所にトレースします。

先に進み、[アクティビティ]メニューから、またはキーボードのCtrl + Alt + Tを押して、新しいターミナルウィンドウを開始します。次のステップは、マルチバースリポジトリが追加されていることを確認することです。それがないと、ackをインストールできません。もちろん、他のパッケージを自由に使用できます。

したがって、リポジトリを追加するには、ターミナルで次のコマンドを実行します。

$sudoapt-add-repository multiverse

それが邪魔にならないようになったら、パッケージのインストールに進みます。

$sudo apt-get install悲しいかな

(ack-grepの代わりにackがインストールされていることに注意してください。これが、次に実行するコマンドを変更する理由です)

インストールは数秒以内に完了します。それが終わったら、パッケージマネージャーのdpkgを使ってパッケージを調査します。パッケージのファイルがインストールされた場所とそれらにアクセスする方法を確認します。

前のセクションで説明したdpkgコマンドの一般的な構文を思い出してください。ここでは、そのコマンドのバリエーションを使用して、インストールされているパッケージ内のファイルを一覧表示します。

パッケージの内容を一覧表示するには、dpkgコマンドで-L演算子を使用します。以下のコマンドを実行してファイルを表示します。

$dpkg -NS悲しいかな

画像でわかるように、パッケージマネージャーがインストールしたすべてのファイルが、コンピューター上のアドレスとともに表示されます。

それに加えて、一部のファイルは、インストールされたパッケージに含まれているpre / postrmおよびpre / postinstallスクリプトによって作成または変更されます。これらのスクリプトは、次のディレクトリで表示できます。

/どこ/lib/dpkg/情報

追加情報

チュートリアルの要点を説明したので、さらに学習したい人のためにいくつかの情報を追加します。

たとえば、dpkgを使用して、現在のディレクトリにあるパッケージのすべてのファイルを抽出するとします。これを行うには、次の簡単なコマンドを実行します。

$dpkg -NSパッケージ名

以下のコマンドを使用して、preinst、postrm、postinstなどのファイルを取得することもできます。

$dpkg -とパッケージ名

これにより、上記のファイルも現在のディレクトリに抽出されます。

結論

以上で、このガイドを締めくくります。今日はapt-getについていくつかのことを学びました。 Filesystem Hierarchy Standard、Ubuntuパッケージマネージャーのしくみ、そして最後に、apt-getがパッケージをインストールする場所を見つける方法を見てきました。