5.4 パッケージ管理ツールとリポジトリ
Linux Essentials Online Text | 2021/07/15

Linuxで利用するソフトウェアは、その殆どがオープンソースソフトウェアです。本来であれば各開発コミュニティからソースコードを入手し、コンパイルして使用するものですが、多くのLinuxディストリビューターはこれらを自分たちの提供するディストリビューションで動作するようにパッケージ化して配布しています。

これにより、ユーザは容易にソフトウェアを入手、インストールして使用することができます。また、これらのパッケージ郡が格納される場所のことを「リポジトリ」と呼びます。

rpm形式とdeb形式

パッケージには大きく2つの形式があります。Redhat, Inc.が開発した「.rpm」を拡張子とするrpm形式と、Debianプロジェクトが開発した「.deb」を拡張子とするdeb形式です。大抵のディストリビューションはこのどちらかの形式が採用されています。rpmパッケージはrpmコマンドを用い、debパッケージはdpkgコマンドを使って操作します。

いずれもパッケージがローカルに置かれている事を想定して実行するコマンドで、低水準のツールと言います。

パッケージ管理ツール

ソフトウェアがパッケージ化されたことで、ユーザがインストールにかける労力と時間は格段に効率化されました。各ディストリビューターは、自分たちが提供するディストリビューションで使用するパッケージを「リポジトリ」と呼ばれるインターネット上の格納場所に設置し、専用のパッケージ管理ツールを使って自由にダウンロードしてインストールできる仕組みを提供するようにしました。これによりユーザは、欲しい環境を手軽に用意することが可能です。

例えば、ブラウザソフト「FireFox」をインストールしたいと考えた時、ユーザはコマンドを1行実行します。もし、使用しているOSがCentOSであれば、「yum install firefox」というコマンドを実行します。

インストール用のコマンドを実行するとLinuxシステムは、インターネット上にあるリポジトリから対象のパッケージを探し出し、ダウンロードしてインストールを実施します。この時、依存関係の確認も行われ、他に必要なパッケージがあれば併せてインストールします。このようにリポジトリを用いたパッケージ管理を高水準パッケージ管理といいます。

rpm系ディストリビューションでは「yum(後継はdnf)」が使われますが、OpenSUSEの「Zypper」のように、独自の管理ツールを使用するものもあります。Debパッケージ系ディストリビューションでは、「apt(apt-get,apt-cache)」が使われます。なお、リポジトリはディストリビューション毎に専用のものが用意されています。

ちなみに、使用したいソフトウェアの提供元からパッケージをダウンロードし、rpmやdpkgコマンドを用いてインストールするパッケージ管理を低水準パッケージ管理といいます。

PAGE TOP