Linux実験室
Turbolinux 10 Server トライアル版からFTP版相当のインストールCDを作成するTurbolinux 10 Server トライアル版からFTP版相当のインストールCDを作成するTurbolinux 10 Server トライアル版からFTP版相当のインストールCDを作成するTurbolinux 10 Server トライアル版からFTP版相当のインストールCDを作成するTurbolinux 10 Server トライアル版からFTP版相当のインストールCDを作成するTurbolinux 10 Server トライアル版からFTP版相当のインストールCDを作成するTurbolinux 10 Server トライアル版からFTP版相当のインストールCDを作成するTurbolinux 10 Server トライアル版からFTP版相当のインストールCDを作成するTurbolinux 10 Server トライアル版からFTP版相当のインストールCDを作成するTurbolinux 10 Server トライアル版からFTP版相当のインストールCDを作成するTurbolinux 10 Server トライアル版からFTP版相当のインストールCDを作成するTurbolinux 10 Server トライアル版からFTP版相当のインストールCDを作成するTurbolinux 10 Server トライアル版からFTP版相当のインストールCDを作成するTurbolinux 10 Server トライアル版からFTP版相当のインストールCDを作成するTurbolinux 10 Server トライアル版からFTP版相当のインストールCDを作成するTurbolinux 10 Server トライアル版からFTP版相当のインストールCDを作成するTurbolinux 10 Server トライアル版からFTP版相当のインストールCDを作成するTurbolinux 10 Server トライアル版からFTP版相当のインストールCDを作成するTurbolinux 10 Server トライアル版からFTP版相当のインストールCDを作成するTurbolinux 10 Server トライアル版からFTP版相当のインストールCDを作成するTurbolinux 10 Server トライアル版からFTP版相当のインストールCDを作成するTurbolinux 10 Server トライアル版からFTP版相当のインストールCDを作成するTurbolinux 10 Server トライアル版からFTP版相当のインストールCDを作成するTurbolinux 10 Server トライアル版からFTP版相当のインストールCDを作成するTurbolinux 10 Server トライアル版からFTP版相当のインストールCDを作成するTurbolinux 10 Server トライアル版からFTP版相当のインストールCDを作成するTurbolinux 10 Server トライアル版からFTP版相当のインストールCDを作成するTurbolinux 10 Server トライアル版からFTP版相当のインストールCDを作成するTurbolinux 10 Server トライアル版からFTP版相当のインストールCDを作成するTurbolinux 10 Server トライアル版からFTP版相当のインストールCDを作成するTurbolinux 10 Server トライアル版からFTP版相当のインストールCDを作成するTurbolinux 10 Server トライアル版からFTP版相当のインストールCDを作成するTurbolinux 10 Server トライアル版からFTP版相当のインストールCDを作成するTurbolinux 10 Server トライアル版からFTP版相当のインストールCDを作成するTurbolinux 10 Server トライアル版からFTP版相当のインストールCDを作成するTurbolinux 10 Server トライアル版からFTP版相当のインストールCDを作成するTurbolinux 10 Server トライアル版からFTP版相当のインストールCDを作成するTurbolinux 10 Server トライアル版からFTP版相当のインストールCDを作成するTurbolinux 10 Server トライアル版からFTP版相当のインストールCDを作成するTurbolinux 10 Server トライアル版からFTP版相当のインストールCDを作成する

9.Turbolinux 10 Serverトライアル版からFTP版相当のインストールCDを作成する

Turbolinux社からServer用に特化したTurbolinux 10 Serverという製品が発売されています。
この製品はトライアル版が同社のホームページからダウンロードできるようになっています。ただし、制限も多くRPMコマンドが使えないためUpdateが出来なかったり、フォント群が抜けていたりとトライアル版ならではの仕様になっています。
また、FTPサイトには製品版に含まれるRPMのファイル群(OSS部分のみ)が公開されていますが、インストーラ部分まで公開されておらずファイルはダウンロード可能ですが、こちらも制限付きになっています。
今回はトライアル版とFTPサイトに公開されているRPMファイルそれと2004年12月25日現在までに公開されたUpdateの内容を含むインストールCDの作成にトライしたいと思います。
なお、ここを参照し起きたいかなる問題も責任を負いません、自己の責任で実施してください

@ 準備するもの

 ・linux導入のためのマシン(Disk15G以上のマシン)
  -CD-Rドライブ
 ・Turbolinux 10 Serverトライアル版 CD-ROM
 ・CD-Rメディア2枚

A Turbolinux 10 Serverトライアル版の導入とRPMコマンドの退避

 用意したマシンにトライアル版を導入します。
 1.マシンにCD-ROMをセットして起動します。
 2.言語の設定
 3.インストール方法の選択
 4.キーボードの設定
 5.マウスの設定
 6.インストール先の設定
 7.ブートローダー設定
 8.ネットワークの設定
 9.時間の設定
 10.アカウントの設定
 11.インストールタイプの選択
 12.モニターの設定
 13.Xの設定
 14.サウンドカードの設定
 15.設定の確認
 16.システムインストール
  「追加パッケージのインストール」画面
 Turbolinux 10 Desktopトライアル版からFTP版相当のインストールCDを作成する
 システムインストールの終了時に「追加パッケージのインストール」画面が表示されます
 この画面になったら「Ctrl+Alt」を押しながら「F2」を押しコマンド画面にします
 《rpmコマンドの退避》
 #cp -a /mnt/sysimage/var/lib/rpm /mnt/sysimage/var/lib/rpm.org
 #cp -a /mnt/sysimage/bin/rpm /mnt/sysimage/bin/rpm.org
 #cp -a /mnt/sysimage/usr/bin/rpm2cpio /mnt/sysimage/usr/bin/rpm2cpio.org ←ここまでは必須
 #cp -a /mnt/sysimage/usr/bin/rpmdb /mnt/sysimage/usr/bin/rpmdb.org
 #cp -a /mnt/sysimage/usr/bin/rpmquery /mnt/sysimage/usr/bin/rpmquery.org
 #cp -a /mnt/sysimage/usr/bin/rpmsign /mnt/sysimage/usr/bin/rpmaign.org
 #cp -a /mnt/sysimage/usr/bin/rpmverify /mnt/sysimage/usr/bin/rpmverify.org
 コピーが終了したら「Alt」を押しながら「F7」を押しGUIの画面に戻る
 17.セキュリティーの設定
Turbolinux 10 Desktopトライアル版からFTP版相当のインストールCDを作成するこの段階でrpmコマンドが削除されるだワン!
 18.ブートディスクの作成
 19.インストール完了

B トライアル版の起動とRPMコマンドの復元

 コンソールを立ち上げます
 《rpmコマンドの復元》
 #mv /bin/rpm.org /bin/rpm
 #mv /usr/bin/rpm2cpio.org /usr/bin/rpm2cpio
 #rm -rf /var/lib/rpm
 #mv /var/lib/rpm.org /var/lib/rpm
 #mv /usr/bin/rpmdb.org /usr/bin/rpmdb
 #mv /usr/bin/rpmquery.org /usr/bin/rpmquery
 #mv /usr/bin/rpmsign.org /usr/bin/rpmsign
 #mv /usr/bin/rpmverify.org /usr/bin/rpmverify
 問い合わせに対しては全て上書きします

C FTP版相当作成のためのファイル入手

 TurbolinuxのFTPサイトよりRPMファイルをダウンロードします
 #mkdir -p /tmp/turbo10s/orgrpm
 #cd /tmp/turbo10s/orgrpm
 #wget --retr-symlinks ftp://ftp.turbolinux.co.jp/pub/TurboLinux/TurboLinux/ia32/Server/10/install/turbo/RPMS/*
 #cd /tmp/turbo10s
 #wget --retr-symlinks ftp://ftp.turbolinux.co.jp/pub/TurboLinux/TurboLinux/ia32/Server/10/install/turbo/base/comps
 #mkdir -p /tmp/turbo10s/update
 #cd /tmp/turbo10s/update
 #wget --retr-symlinks ftp://ftp.turbolinux.co.jp/pub/TurboLinux/TurboLinux/ia32/Server/10/updates/RPMS/*

D FTP版作成−Step 1 事前準備

 1.トライアル版CD-ROMをマシンにセットしてマウントします

 #mount /mnt/cdrom

 2.FTP版Workディレクトリの作成

 #mkdir -p /tmp/turbo10s/DISC1
 #mkdir -p /tmp/turbo10s/DISC2/turbo

 3.トライアル版のコピー

 #cp -var /mnt/cdrom/* /tmp/turbo10s/DISC1/

 4.トライアル版RPMファイルの削除

 #rm -rf /tmp/turbo10s/DISC1/turbo/RPMS

 5.FTPサイトより入手したRPMファイルの移動

 #mv /tmp/turbo10s/orgrpm /tmp/turbo10s/DISC1/turbo/RPMS

 6.zabom-develの導入とトライアル版CD-ROMの取り出し

 #rpm -ivh /tmp/turbo10s/DISK1/turbo/RPMS/zabom-devel-2.2.1-9.i586.rpm
 #eject

E FTP版作成−Step 2 インストーラのカーネルとデバイスドライバをアップデートするための準備

 今回は10 Server用にkernel-2.6.8-3が公開されていますのでそれをベースにインストーラ(mongoose)のカーネルとデバイスドライバを更新します。

 1.カーネルの展開

 #mkdir -p /tmp/knltmp /tmp/knlwork/modules
 #cd /tmp/knltmp
 #rpm2cpio /tmp/turbo10s/update/kernel-2.6.8-3.i586.rpm | cpio -id
 #rpm2cpio /tmp/turbo10s/update/kernel-smp-2.6.8-3.i586.rmp | cpio -id
Turbolinux 10 Serverトライアル版からFTP版相当のインストールCDを作成する場合によってはkernel-extramodules-2.6.8-3.i586.rpmが必要かもしれないだワン!(今回は使用してないワン!)

F FTP版作成−Step 3 ブート用のカーネルとinitrd.imgのアップデート

 CDブートした時に使用されるカーネルとinitrdを更新します。

 1.カーネルの更新

 #cp -a --reply=yes /tmp/knltmp/boot/vmlinuz-2.6.8-3 /tmp/turbo10s/DISK1/isolinux/vmlinuz
 #cp -a --reply=yes /tmp/knltmp/boot/vmlinuz-2.6.8-3smp /tmp/turbo10s/DISK1/isolinux/vmlinuz.smp

 2.デバイスドライバ更新−modulesディレクトリ内

 #mkdir -p /tmp/inittmp /tmp/initwork /tmp/modtmp /tmp/modwork /mnt/initrd /mnt/loop
 #gzip -cd /tmp/turbo10s/DISK1/isolinux/initrd.img > /tmp/inittmp/initrd
 #mount -o loop /tmp/inittmp/initrd /mnt/initrd
 #dd if=/dev/zero of=/tmp/initwork/initrdnew bs=1024 count=8192
 #losetup /dev/loop1 /tmp/initwork/initrdnew
 #mkfs -t ext2 /dev/loop1
 #mount /dev/loop1 /mnt/loop
 #cp -ar /mnt/initrd/* /mnt/loop/
 #cd /mnt/loop/modules/pcmcia
 #umount /mnt/initrd
 #for i in *
 >do
 >FILE=`find /tmp/knltmp/lib/modules/2.6.8-3/ -name $i -print`
 >if [ ! -z $FILE ] ; then
 >cp -p --reply=yes $FILE .
 >fi
 >done

 3.デバイスドライバ更新−modules.cgzファイル内

 #gzip -cd -S .cgz /mnt/loop/modules/modules.cgz > /tmp/modtmp/modules
 #cd /tmp/modwork
 #cpio -id --file=/tmp/modtmp/modules
 #cd 2.6.8-1
 #for i in *
 >do
 >FILE=`find /tmp/knltmp/lib/modules/2.6.8-3/ -name $i -print`
 >if [ ! -z $FILE ] ; then
 >cp -p --reply=yes $FILE .
 >fi
 >done
 #cd ../2.6.8-1smp
 #for i in *
 >do
 >FILE=`find /tmp/knltmp/lib/modules/2.6.8-3smp/ -name $i -print`
 >if [ ! -z $FILE ] ; then
 >cp -p --reply=yes $FILE .
 >fi
 >done
 #cd ..
 #mv 2.6.8-1 2.6.8-3
 #mv 2.6.8-1smp 2.6.8-3smp
 #find . -print | cpio -oH crc | gzip -c9 > /mnt/loop/modules/modules.cgz

 4.modules.depファイルの編集

 #cd /mnt/loop/modules
 #sed 's/2\.6\.8-1/2\.6\.8-3/g' modules.dep > modules.aaa
 #mv modules.aaa modules.dep
問い合わせに対しては上書きします。

 5.initrd.imgの再作成

 #cd
 #umount /mnt/loop
 #gzip -c9 /tmp/initwork/initrdnew > /tmp/turbo10s/DISK1/isolinux/initrd.img
 #losetup -d /dev/loop1
initrdについては新規ドライバーを組み込んでません。もしも必要な場合は自力で組み込んで見てください。

G FTP版作成−Step 4 

 1.新しいデバイスドライバーファイルの選択

 全てのドライバーを組み込むことはcramfsの制約でできないためstage2内にあるmodules.cgzの内容と同じようなファイルシステム構成を作成します。
 手動で実施する場合は/tmp/knltmp/lib/modules/2.6.8-3と2.6.8-3smp以下の導入時には使用しないドライバーを除いていきます。
 いろいろパターンがあると思われますがmodules.cgzを作成した時に16Mを超える事はできないため注意が必要です。
 今回はシェルを作成し削除を実施しました。シェルを使う方はここからどうぞ!
 いつものお約束ですがシェル使用したことによる不具合などは一切責任を持ちません。自身の責任において使用してください。
 使用方法:
 #modcreate.sh 2.6.8-3
 #modcreate.sh 2.6.8-3smp
 シェル内ではエラー処理などをしていませんので予めご了承ください。

 2.依存関係ファイルの作成

 #depmod -a -b /tmp/knltmp 2.6.8-3
 /tmp/knltmp/lib/modules/2.6.8-3以下に
 modules.dep modules.pcimap modules.usbmap などのファイルが作成されます。

 3.新しいデバイスドライバ・ファイルの作成

 #cd /tmp/knltmp/lib/modules/2.6.8-3
 #sed 's/\/lib//g' modules.dep > /tmp/knlwork/modules/modules.dep
 #rm -f modules.dep
 #mv /tmp/knltmp/lib/modules/2.6.8-3/module* /tmp/knlwork/modules/
 #cp -p /tmp/knltmp/boot/module-info-2.6.8-3 /tmp/knlwork/modules/module-info
 #cd /tmp/knltmp/lib/modules
 #for i in `find . -type f -print`
 >do
 >strip $i
 >done
 strip: ./2.6.8-3/pcimodules.dat: File format not recognized
 strip: ./2.6.8-3smp/pcimodules.dat: File format not recognized
 ↑
 このようなメッセージがでますが問題ありません。
 #find . -print | cpio -oH crc | gzip -c9 > /tmp/knlwork/modules/modules.cgz
 /tmp/knlwork/modulesディレクトリのファイルは以下のようになっていると思います。
 -rw-r--r-- 1 root root    16230 Dec 26 20:08 module-info
 -rw-r--r-- 1 root root   104739 Dec 27 06:10 modules.alias
 -rw-r--r-- 1 root root       69 Dec 27 06:10 modules.ccwmap
 -rw-r--r-- 1 root root 12023207 Dec 27 07:18 modules.cgz
 -rw-r--r-- 1 root root    87731 Dec 27 07:13 modules.dep
 -rw-r--r-- 1 root root       73 Dec 27 06:10 modules.ieee1394map
 -rw-r--r-- 1 root root   118035 Dec 27 06:10 modules.pcimap
 -rw-r--r-- 1 root root    52317 Dec 27 06:10 modules.symbols
 -rw-r--r-- 1 root root    79286 Dec 27 06:10 modules.usbmap

H FTP版作成−Step 5 stage2.imgファイルの編集

 トライアル版のstage2.imgのままだとrpmファイルが使えなくなってしまいます。そこで、導入中にrpmファイルが消されないようにstage2.imgファイルを編集します。
また、アップデート版のカーネルが公開されていますので、カーネルアップデートに伴うファイルの更新も合せて実施します。

 1.Workディレクトリの作成とファイルのマウント

 #mkdir -p /mnt/stage2
 #mount -t cramfs -o loop /tmp/turbo10s/DISC1/turbo/base/stage2.img /mnt/stage2
 #mkdir -p /tmp/stage2

 2.ファイルの移動

 #cp -ar /mnt/stage2/* /tmp/stage2/
 ハードリンクのエラーが数箇所でますが特に問題ありません。

 3.モジュールの入替え

 #cp -a --reply=yes /usr/lib/zabom/zabommodules.so /tmp/stage2/usr/lib/mongoose/zabommodules.so

 4.デバイスドライバの入替え

 先ほど作成したデバイスドライバを差し替えます。
 #cp -a --reply=yes /tmp/knlwork/modules/* /tmp/stage2/modules/

 5.stage2.imgの書き戻し

 #umount /mnt/stage2
 #mkcramfs /tmp/stage2 /tmp/turbo10s/DISC1/turbo/base/stage2.img

I FTP版作成−Step 6 rpmファイルのアップデートとファイルの分割

 FTPサイトより入手したUpdateファイルを適用します

 1.rpmファイルを更新する

今回はkernelをsambaしかないので手動で入れ替えます。
いずれ多くのUpdateファイルが出てきたらシェルでの対応を考えます。

 2.compsファイルのチェック

今回はサーバ用のcompsファイルを使用するとServerProtectがLostPackageとして出てきます。気にしない方はそのまま使って問題ないですが、気になる方は修正版をここから入手して/tmp/turbo10s/DISK1/turbo/base/compsと入れ替えてください。
 #genhdlist /tmp/turbo10s/DISC1/turbo

 Turbolinux 10 Desktopトライアル版からFTP版相当のインストールCDを作成する -> Turbolinux 10 Desktopトライアル版からFTP版相当のインストールCDを作成する

 Turbolinux 10 Desktopトライアル版からFTP版相当のインストールCDを作成する -> Turbolinux 10 Desktopトライアル版からFTP版相当のインストールCDを作成する

 Turbolinux 10 Desktopトライアル版からFTP版相当のインストールCDを作成する
 ↑
 このようになればcompsファイルはOKです

 3.hdlistの更新

 #genhdlist /tmp/turbo10s/DISC1/turbo

 Turbolinux 10 Desktopトライアル版からFTP版相当のインストールCDを作成する

 4.ファイルの分割

 今回はCDが2枚になるのでファイルを分割します
 #genhdlist /tmp/turbo10s/DISC1/turbo

 Turbolinux 10 Desktopトライアル版からFTP版相当のインストールCDを作成する
 途中で2枚目の導入先を聞かれますので下記のディレクトリを入力してください
 「/tmp/turbo10s/DISC2/turbo」

J FTP版作成−Step 7 ISOイメージの作成

 1枚目ブート可能ディスクの作成
 #mkisofs -J -R -v -T \
      -b isolinux/isolinux.bin \
      -c isolinux/boot.cat \
      -no-emul-boot \
      -boot-load-size 4 \
      -boot-info-table \
      -o /tmp/turbo10s/serv10-disc1.iso \
      /tmp/turbo10s/DISC1/

 2枚目データディスクの作成
 #mkisofs -J -R -v -T \
      -o /tmp/turbo10s/serv10-disc2.iso \
      /tmp/turbo10s/DISC2/

K FTP版作成−Step 8 CD-Rに焼く

 cdrecord -scanbusでcd-rドライブを確認します
 ide-scsiがロードされていないとcd-rドライブが使えません。
 #cdrecord -v dev=1,0,0 speed=8 fs=20M -eject /tmp/turbo10s/serv10-disc1.iso
 #cdrecord -v dev=1,0,0 speed=8 fs=20M -eject /tmp/turbo10s/serv10-disc2.iso

最後に
FTP版インストールCDを作成しましたが、トライアル版と同様にフォントが一部提供されていないため提供されていない漢字を表示すると取消線になってしまいます。
フリーのフォントなどを導入してこの問題を各自解消してください。

Turbolinux 10 Serverトライアル版からFTP版相当のインストールCDを作成するそれでは健闘を祈るだワン!


戻る
Turbolinux 10 Server トライアル版からFTP版相当のインストールCDを作成する