ISO イメージを mount するには
AIX 6 からは loopmount コマンドが使えるので、下記のような苦労は不要である。 ISO イメージをディスク上に置いたら、それを loopmount で mount できる。
# loopmount -i filename.iso -o "-v cdrfs -o ro" -m /cdrom
AIX 5.3 までは、ISO を mount するには、一旦、専用の LV に書く必要がある。 つまり、ハードディスクに「iso イメージを置くぶん + それを LV に展開するぶん」 の容量が必要である。
要するに ディスクさえあればできる、ということになる。 手順は以下の通りだ。
サイズを見積もる
iso イメージのサイズを計る。ls -l でよい。
# ls -l a.iso -rw-r--r-- 1 root wheel 3782610944 Oct 7 18:14 a.iso
この場合、ざっくり 3.7G くらい。ということになる。
LV を準備する
128MB 単位 (PP SIZE 単位)で、 iso イメージのサイズより大きくなるように LV を作成する。
イメージのサイズは 128MB 単位で数えると
3782610944 / (128 * 1024) = 28859.03125
ということになるので、これを 128 単位に切り上げると
28859.03125 / 128 = 225.461181640625 226 * 128 = 28928
ということになり、作る LV のサイズは 28928M となる。 このサイズで LV を作ってやる。
# mklv -y lviso -s n -L /dev/lviso rootvg 28928M hdisk0
もちろん rootvg でなくてもよい。もちろん空き容量がそれだけ必要である。
dd でコピーする
dd コマンドを用いて、今作った lv に iso イメージを流し込む。
# dd if=a.iso of=/dev/lviso bs=10M
実行中は、dd のプロセスが2個現れる。 dd コマンドは、とても時間がかかる。心して待つ。
mount する
あとは、普通に cd として mount すればよい。
# mount -v cdrfs -o ro /dev/lviso /mnt
HDD なので -o ro は微妙だが、一応つけておこう。
参考
- Tivoli のヘルプ
- いちおう IBM 本家の手順と言えるだろう。
- Howto mount an ISO image in AIX UNIX
- Poor mount .iso in AIX
- ここでサイズ見積もり用の awk を用いた簡易計算が示されているが、 計算間違ってると思う。
- How to mount an ISO image in Aix
VIOS があれば仮想光学ドライブを使えるらしい。 この場合、iso ファイルを ftp でブチ込めば済むらしい。 しかし、環境がないのでテストできない。残念。