rpm

〜iso ファイルからのパッケージインストール方法〜

最初に目的のパッケージが、「何枚目の iso ファイルに収録されているか」を確認します。

■確認方法
 何枚目の iso ファイルに「目的のパッケージ」が、収録されているかは、次の方法にて確認可能です。

 実行コマンド: /usr/share/comps-extras/whichcd.py

●実行例 - bind が何枚目の iso ファイルに収録されているかを確認
# /usr/share/comps-extras/whichcd.py bind
bind-9.2.4-30.el4_7.2.i386.rpm is on disc 5 <-★

 実行例では、bind のパッケージ (bind-9.2.4-30.el4_7.2.i386.rpm) が、5 枚目 の iso ファイルに
 収録されていることが確認できます。


〜iso ファイルのマウント方法〜

 実行コマンド: mount -oloop

●実行例 - /var/crash/iso/RHEL4.8-i386-AS-disc5.iso ファイルを~
      /mnt/iso にマウントする場合

# mount -oloop /var/crash/iso/RHEL4.8-i386-AS-disc5.iso /mnt/iso

# ls -Fal /mnt/iso/
合計 41
dr-xr-xr-x 3 root root 2048 5月 5日 2009 ./
drwxr-xr-x 3 root root 4096 9月 11日 19:54 ../
-r--r--r-- 1 root root 93 5月 5日 2009 .discinfo
-r--r--r-- 20 root root 6987 12月 17日 2004 EULA
-r--r--r-- 20 root root 18416 12月 17日 2004 GPL
-r--r--r-- 20 root root 1910 12月 17日 2004 RPM-GPG-KEY
dr-xr-xr-x 3 root root 2048 5月 5日 2009 RedHat/
-r--r--r-- 1 root root 1093 5月 5日 2009 TRANS.TBL

※ iso ファイルの "中身" が、見えています。

# cd /mnt/iso/RedHat/RPMS/

# ls -Fal bind-9*
-r--r--r-- 179 root root 596527 2月 11日
2009 bind-9.2.4-30.el4_7.2.i386.rpm
$ df -k
Filesystem 1K-ブロック 使用 使用可 使用% マウント位置
/dev/sda2 41286828 6666996 32522548 18% /
/dev/sda1 256666 23106 220308 10% /boot
 :
/var/crash/iso/RHEL4.8-i386-AS-disc5.iso
177792 177792 0 100% /mnt/iso
 これで bind のパッケージに対してファイル操作が可能となります。


rpm ファイルの展開と確認〜

パッケージをインストールせずに rpm ファイルを展開することが、できます。

 実行コマンド: rpm2cpio | cpio -id

また、展開せずにパッケージの収録ファイルは次の方法で確認可能です。

 実行コマンド: rpm2cpio | cpio -it