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.システムインストール
「追加パッケージのインストール」画面

システムインストールの終了時に「追加パッケージのインストール」画面が表示されます
この画面になったら「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.セキュリティーの設定
この段階で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をマシンにセットしてマウントします
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 |
場合によっては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 |
-> 
-> 

↑
このようになればcompsファイルはOKです
3.hdlistの更新
| #genhdlist /tmp/turbo10s/DISC1/turbo |

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

途中で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を作成しましたが、トライアル版と同様にフォントが一部提供されていないため提供されていない漢字を表示すると取消線になってしまいます。
フリーのフォントなどを導入してこの問題を各自解消してください。
それでは健闘を祈るだワン!
|