【yum入門】yumとは何か?Linuxにおけるyumとrpmの違い

「Yum(Yellowdog Updater Modified/ ヤム)」とは、LinuxのRedHat系ディストリビューション(CentOSやFedoraなど)で利用されるパッケージ管理ツールです。Debian系ディストリビューション(Ubuntuなど)で利用される「APT」に相当するものです。

今回は、「Yum」「RPM」の違いを含めて説明します。

「Yum」と「RPM」のややこしい関係

パッケージ管理ツールとは、OSへのソフトウェアの導入と削除、依存関係の整理などを行うツールです。RedHat系ディストリビューションでは、ソフトウェアはrpm形式のパッケージ(.rpm)が使われています。

また、ややこしいことにファイル形式.rpmと同じ名前のパッケージ管理ツール「RPM(RPM Package Manager)」も存在します。

つまり、「.rpm」ファイルをインストールするパッケージ管理ツールに、「Yum」と「RPM」という2つのツールがあるということになります。

「Yum」と「RPM」はどう使い分ける?

基本的に、「Yum」は「RPM」の高機能版と考えて良いです。具体的には、「YUM」は「RPM」にパッケージの自動更新機能と、依存性の解決機能を加えたパッケージ管理ツールと言えます。

また、「Yum」ではパッケージの集合であるリポジトリーと連動しており、リポジトリから未インストールのパッケージを検索できます。

機能 RPM Yum
依存性の解決 なし あり
自動更新 なし あり
リポジトリ連携 なし あり

そのため、基本的にパッケージ管理ツールには「Yum」を使うと良いでしょう。また、内部的には「Yum」は「RPM」を使用しているので、「Yum」でインストールしたパッケージと「RPM」でインストールしたパッケージが競合することはありません。

「Yum」の後継「DNF」の登場

さらに、「RPM」、「Yum」に続くパッケージ管理ツールとして「DNF(Dandified Yum)」も登場しています。

「DNF」は、Yum 3.4をフォークした後継ツールで、「Yum」の問題点であった「ドキュメントの整理」「依存性解決のアルゴリズム改善」「メモリ使用量の改善」など多くの改善がされています。

Fedora22では、デフォルトのパッケージ管理ツールに「DNF」が採用されており、CentOS7などでも使用することができます。


イベント