-Linuxにおけるパッケージ管理システムについてのまとめ。個別のパッケージ管理としてはRPMとdpkgがありそれぞれRedHat系とDebian系で利用されている。個々のパッケージの依存関係まで含めて管理するのがaptやyumである。 #contents *RPM [#y3619722] [[RPM集:http://www.jpackage.org/]] |ソースRPMコンパイル|rpmbuild --rebuild --target i686 srpm名|/usr/src/OS/RPMS/以下に作成| |依存関係のチェックでテスト|rpm -i --test パッケージ名|| |RPMファイルを詳しく見る|rpm -pqR パッケージファイル名|依存関係も見れてgood!| |RPMでインストールされる設定ファイルをみる|rpm -qc パッケージ| |どのパッケージからインストールされたものか表示|rpm -qf /bin/bash| [[そのまま使えるRPMコマンド集:http://www.stackasterisk.jp/tech/sonomama/rpm0d_01.jsp#4]] **RPMデータベースのリビルド [#bf980529] なんかの原因でパッケージデータベースが壊れたときには以下のコマンドで再構築する。 rpm --rebuilddb *パッケージ管理apt [#e7298983] aptというパッケージ管理システム。もともとdebian系のものだが、VineLinuxや最近ではFedoraなども採用(Fedoraのaptは不安定だが)。必要とされるrpmパッケージをインターネット上から勝手に落としてきてくれるので、rpmで依存関係に悩まされた身にはありがたい!ソースとなるURLを指定してapt-get updateでパッケージリストを更新する。 apt-get update **パッケージのインストール [#hd128eb4] apt-get install php4 **パッケージのアップグレード [#jaf4c133] apt-get upgrade apache **インストールはしないでシュミレーションを行う [#kb66064f] apt-get -s パッケージ名 **インストールされているパッケージ情報 [#t4302d88] dpkg -l 一覧 dpkg いろいろ **パッケージの検索と詳細情報 [#ue7a4530] -検索 apt-cache search subversion -詳細 apt-cache show subversion **aptitudeとは [#s1929890] -aptをより使いやすくしたもの。ただしCUI。履歴が残ったりするのでこっちを使うのがよいかもしれない。 *Synaptic [#obefe5ef] -上のaptのGUI版。aptが使えてXも使えるなら入れてもよいだろう。DebianはもちろんVineLinuxやUbuntuなどでも利用可能 *YUM [#l3b31e69] -デビュー当初はaptに比べると激遅。なるべくなら使いたくない!が、早くなり今や標準のパッケージ管理システム。 **リポジトリ [#u6523f70] 基本リポジトリに対して、外部のリポジトリもある。デフォルトでは基本しか使えないので必要に応じて有効化せよ。普段は無効化しておきインストール時に有効化するのが良いだろう。 yum install -y --enablerepo=epel ansible **基本コマンド集 [#qbc1605b] |アップデート|yum update| |インストール|yum install パッケージ名| |インストール|yum remove パッケージ名| |検索|yum search パッケージ名| |インストールされたパッケージ|yum list installed| |アップデートされたパッケージ|yum list updates| |リポジトリのリスト|yum repolist| CentOSの場合下記GPGキーインポート必須 rpm --import http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-3 **ミラーサイトを自動的に選択してくれるfastestmirror [#e8956cc9] yum install yum-fastestmirror.noarch -/etc/yum.confに一行追加して、yum update plugins=1 **グループインストール [#ce1d4a67] もともと複数ファイルの集まりがRPMのパッケージでそのRPMの依存関係を含めて管理するのがaptだったりyumだったりする。しかし近年はパッケージが巨大化してXwindowを入れるにはどのパッケージを使えばいいか個別にやっていたのではわからない。そんなときのためにyumにはgroupinstallという方法が用意されている。たとえばこれを利用すれば、インストール時は最小構成であとからXを追加するということもできる。ネットワークインストールと併用すれば鬼に金棒である。 ***グループリストの取得 [#b5ee5cda] -通常は以下で十分 yum grouplist -すべて表示させるにはgrouplistのオプションにhiddenをつける yum grouplist hidden ***インストール [#re516cb5] -下記事例はXとGNOMEデスクトップを入れる。300パッケージ近くインストールするので時間に余裕を持って実行すること。 yum groupinstall "X Window System" "GNOME Desktop Environment" #counter