gabuLog

趣味と考え事をつらつらと

パッケージ管理(Package Manager)とは

パッケージ管理とは

実行ファイルや設定ファイル、ライブラリを一括で管理するためのシステム。

なぜ一括で管理するの?

ソフトウェアソースコード

パッケージ管理システムができる前は、「./configure」「make」「make install」を行うことで、インストールする方法。

この手法での問題はライブラリ*1の依存関係*2も手動で解決しなければならない。

作成・追加・削除など手動では時間がかかり、依存関係も全て把握しておかないと、追加したり削除したりしたが、全く動かなくなったなどの不具合が起こりやすい。

パッケージ管理

ソフトウェアを一括でインストールする方法。

この方法は自力で依存関係を解決してくれる。

パッケージには個々に、どのパッケージがどのパッケージに依存しているかという依存情報を保持している。これをもとに必要な物がインストールされるようになっている。

依存関係を気にせずに、アプリケーションの利用が可能になる。

削除するときもクリーンに削除でき、不必要なソフトウェアが溜まっていくこともない。

パッケージ管理のコマンド

パッケージ管理の形式には使うOSによって変わってくる。

RedHat系はrpmコマンド、Ubuntu/Debian系はdpkgコマンド、その他にも様々ある。

リポジトリ*3でパッケージの管理を行う。

パッケージの形式とコマンド
  RedHat Ubuntu/Debian
パッケージ形式 rpm形式 deb形式
パッケージ管理コマンド rpm dpkg

リポジトリを利用した

パッケージ管理コマンド

yum apt

 

まとめ

アプリケーションはパッケージ管理という方式で管理されていて、取得や削除が簡単に行えるものなんだなー。

 

*1:よく利用されるプログラムの共通部分を抜き出して、他のプログラムから利用できるようにしているもの

*2:ソフト同士の関係。このソフトを動かすにはこのversionが必要。

*3:パッケージの置かれたストレージの場所