RedHat/Fedora カスタムCD/DVD作成備忘録
Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成Fedora Core 1 カスタムCD/DVD作成

4−6.Fedora Core 1 カスタムCD/DVD作成

1.UpdateRPMとOldRPMファイルの入替え

Fedora Core 1 カスタムCD/DVD作成この備忘録に必要な環境はここここを参考に開発環境を構築してみるだワン!

 Fedora-legacyによるメンテナンスが終了しFedora Core 1の最終更新版を作成される方もいると思います。実は最新版のアップデートファイルを含んだカスタムCD/DVDを作成すると途中でanacondaが停止してしまいます。
Fedora Core 1 カスタムCD/DVD作成ぽちネットではanaconda用のパッチを作成して最新版のアップデートファイルを含んだCD/DVDが作成できるようにしただワン!

 anacondaファイルはカスタムCD/DVD作成のFedora/RPMS以下へコピーして下さい。また開発環境へも導入してください。また、pangoとpango-develにもバグがあり新しいpangoを使うと導入中の表示(文字)が全く表示されなくなります。こちらのファイルも修正して公開しますので使用するかたはどうぞ。pango関連はアップデート用のフォルダーに入れてupdaterpm.shでアップデートしてください。

 2007年7月30日現在、ぽちネットで提供しているanaconda-runtimeのバージョンは9.2-2.7.pochinet、pango関連は1.2.5-6.pochinetです。
 備忘録の途中で入手できますので、必要に応じて利用してください。

 入手したUpdateRPMと既存のRPMを比較し新しい時は入替える
 古いファイルは念のためバックアップしておく
 バックアップ先:
 $mkdir -p /mnt/temp/update/FedoraC1/fdC1old

Fedora Core 1 カスタムCD/DVD作成ひとつずつ確認するのは面倒だワン!
 面倒な作業を今回の環境に合わせて構築している場合、自動でやってくれるシェルを作りました。
 updaterpm.shを使うかたはどうぞ!
 ・updaterpm.shの使い方
 updaterpm.sh FedoraVersion
 $updaterpm.sh C1
 XXX is New RPM.
 XXX is Updated.
 実行中は上記のようなメッセージが出ます。
 
 使用できる環境
 Fedora Core 1のファイル・・・/mnt/temp/update/FedoraC1/i386以下のあること
 UpdateRPMファイル ・・・・・・/mnt/temp/update/FedoraC1/fdC1updにあること
 実行中に/mnt/temp/update/FedoraC1/fdC1oldが作成されます。

2.環境変数定義

 $export PYTHONPATH=/usr/lib/anaconda
 $export PATH=$PATH:/usr/lib/anaconda-runtime
 $export LD_LIBRARY_PATH=/usr/lib:/usr/X11R6/lib

3.その他変更したいものがある場合はここで行う

 comps.xmlを編集する方法はここを参照してください

4.hdlistの更新

Fedora Core 1 カスタムCD/DVD作成Fedoraに付属のgenhdlistはなぜかRedHatディレクトリを参照するだワン!
 これでは都合が悪いのでgenhdlistにパッチを当ててFedoraディレクトリを参照するようにするだワン!
 それ以外にもloader.cにもパッチを当てる必要があるだワン!

 パッチを当てたanaconda-runtimeを使う方はここからどうぞ!
 修正版のpangoを使う方はここ(pango)とここ(pango-devel)からどうぞ!
 SRPMファイルはここここからどうぞ!
 いつものお約束ですが不具合、問題が起こっても一切責任を持ちません。自己責任でお願いいたします。
 $genhdlist /mnt/temp/update/FedoraC1/i386

Fedora Core 1 カスタムCD/DVD作成GenhdlistのオプションにプロダクトPATHが指定できるようだワン!
 $genhdlist --productpath Fedora /mnt/temp/update/FedoraC1/i386
 /mnt/temp/update/FedoraC1/i386/Fedora/base以下のhdlist/hdlist2がUpdateされる。

5.TRANS.TBLファイルの削除

 $cd /mnt/temp/update/FedoraC1/i386
 $find . -name TRANS.TBL -exec rm -f {} \;

Fedora Core 1 カスタムCD/DVD作成このファイルはISOイメージ作成時につくり直すので消すだワン!

6.Anacondaインストーラー・イメージの再構築(First)

 buildinstallを実行する前にパッチを当てる必要があります。
 ここからパッチを入手し適用後この後の手順を実行してください。
Fedora Core 1 カスタムCD/DVD作成既にぽちネット版のanacondaを導入済の場合は適用済なのでパッチ適用手順は必要ないだワン!

・パッチ適用方法:
 パッチファイルが/usr/lib/anaconda-runtimeにあるものと仮定します。
 $cd /usr/lib/anaconda-runtime
 $patch -p0 < buildinstall.FedoraC1.patch

 $cd /mnt/temp/update/FedoraC1/i386
 $mkdir -p buildinstall
 $buildinstall --comp dist-1 \
        --pkgorder /tmp/fdC1upd.pkg \
        --version 1 \
        --product Fedora \
        --release "Fedora Core 1 (Yarrow)" \
        --buildinstdir /mnt/temp/update/FedoraC1/i386/buildinstall \
        --prodpath Fedora \
        /mnt/temp/update/FedoraC1/i386
Fedora Core 1 カスタムCD/DVD作成「V3 DSA signature: NOKEY, key ID XXXXXXXX」こんなwarningがでたら以下のコマンドを実行するだワン!
 $rpm --import /usr/share/rhn/RPM-GPG-KEY-fedora

7.Anacondaインストーラー・イメージの再構築(Second)

 $buildinstall --comp dist-1 \
        --pkgorder /tmp/fdC1upd.pkg \
        --version 1 \
        --product Fedora \
        --release "Fedora Core 1 (Yarrow)" \
        --buildinstdir /mnt/temp/update/FedoraC1/i386/buildinstall \
        --prodpath Fedora \
        --second \
        /mnt/temp/update/FedoraC1/i386
Fedora Core 1 カスタムCD/DVD作成途中WarningやNotFoundなどが出るけどエラーでなければ問題なさそうだワン!

8.パーミッションのチェック

 FTPでUpdateファイルを入手した場合、パーミッションがオリジナルと変わってしまっている場合があります。
 permchk.shで確認し間違っている場合は自動的に変更します。
 ・permchk.shの使い方
 permchk.sh FedoraVersion
 $permchk.sh C1

 使用できる環境
 Fedora Core 1のファイル・・・/mnt/temp/update/FedoraC1/i386以下にあること

Fedora Core 1 カスタムCD/DVD作成DVD-R/RWに焼く場合はここを参照しISOイメージを作成しDVD-R/RWへ焼きます。

9.CD-Rに焼くために分割

 ソースファイルがないことを前提にします。
 $splittree.py --arch=i386 \
        --total-discs=3 \
        --bin-discs=3 \
        --src-discs=0 \
        --release-string="Fedora Core 1" \
        --pkgorderfile=/tmp/fdC1upd.pkg \
        --distdir=/mnt/temp/update/FedoraC1/i386 \
        --srcdir=/mnt/temp/update/FedoraC1/i386 \
        --productpath=Fedora
 First package on disc1: fedora-logos-1.1.20-1.noarch.rpm
 Last package on disc1 : xinitrc-3.35-1.noarch.rpm
 i386-disc1 size: 665M
 First package on disc2: XFree86-4.3.0-42.i386.rpm
 Last package on disc2 : gcc32-3.2.3-6.i386.rpm
 i386-disc2 size: 671M
 First package on disc3: kernel-source-2.4.22-1.2115.nptl.i386.rpm
 Last package on disc3 : xtraceroute-0.9.1-3.i386.rpm
 i386-disc3 size: 562M

 今回はSRPMを含まないCDイメージ分割をしました。
 標準のsplittree.pyではSRPMを含む分割になるのでPatchを当ててsplittree.pyを変更しました。
 splittree.pyのパッチを当てたい方はこちらをどうぞ!
Fedora Core 1 カスタムCD/DVD作成お約束ですがPatchを当てたことによる不具合、問題などは責任もてません。自己責任でお願いするだワン!

 適用方法:
 $cd /usr/lib/anaconda-runtime
 $patch -p0 < splittree.py.patch
 それぞれ/mnt/temp/update/FedoraC1以下にi386-disc1からi386-disc3のディレクトリに分割されます。

10.分割後のhdlist再構築

 古いhdlist/hdlist2の削除
 $rm -f /mnt/temp/update/FedoraC1/i386-disc1/Fedora/base/hdlist*
 再構築
 $genhdlist --withnumbers \
       --fileorder /tmp/fdC1upd.pkg \
       /mnt/temp/update/FedoraC1/i386-disc[1-3]


前  戻る  次
Fedora Core 1 カスタムCD/DVD作成