RedHat 8.0のCustomCDの作成

2. Updateパッケージを入手し準備しておく

  公開されているアップデートパッケージ群をダウンロードして置きましょう。ダウンロードは素直に、RedHatのページからまとめてダウンロードできるところを探すのが無難です。Updateパッケージのみだと、ringサーバなどにも存在しますので、自分の環境で一番早いところを利用しましょう。
[kijirusi@hal CustomCD]$ mkdir updates
[kijirusi@hal CustomCD]$ cd updates
[kijirusi@hal updates]$ wget -r -nH --cut-dirs=ディレクトリの深さ \
> ftp://RedHatのアップデート提供サイト/アップデートパッケージのディレクトリ/*
SRPMS/  athlon/  i386/  i586/  i686/  noarch/
[kijirusi@hal updates]$ cd ..
  ここでは、wgetというプログラムを使ってアップデートパッケージをダウンロードしています。ftpでリカーシブルモードのgetが使えるものであれば、それでもかまいません。要は、SRPMS、athlon、i386、i586、i686、noarch ディレクトリの内容がそれぞれ入手できていれば良いのです。

3. オリジナルのファイルをアップデート版に入れ替える

 手作業で、一つ一つのパッケージをアップデートバージョンに入れ替えるという方法もあるのですが、非常にめんどくさいので以下のような手順とスクリプトで行うことにします。スクリプトはLinux How to Document にある RedHat-CD-HOWTO の rhcd-scripts を参考に作成しました。また、バージョンの比較を行うプログラム rvc もそこからのものです。(update-sub.tar.gz)
 ※ スクリプト群を$HOME/bin/にインストールします。
[kijirusi@hal CustomCD]$ tar zxf update-sub.tar.gz
[kijirusi@hal CustomCD]$ cd update-sub
[kijirusi@hal update-sub]$ make
make -C rpmvc all
make[1]: 入ります ディレクトリ `/home/kijirusi/CustomCD/update-sub/rpmvc'
gcc  "-Wall"  -o  rvc  rvc.c
make[1]: 出ます ディレクトリ `/home/kijirusi/CustomCD//update-sub/rpmvc'
make -C scripts all
make[1]: 入ります ディレクトリ `/home/kijirusi/CustomCD/update-sub/scripts'
make[1]: `all' に対して行うべき事はありません。
make[1]: 出ます ディレクトリ `/home/kijirusi/CustomCD/update-sub/scripts'
[kijirusi@hal update-sub]$ make install
make -C rpmvc install
make[1]: 入ります ディレクトリ `/home/kijirusi/CustomCD/update-sub/rpmvc'
install -d /home/kijirusi/bin
install -c -m 700 rvc /home/kijirusi/bin
make[1]: 出ます ディレクトリ `/home/kijirusi/CustomCD/update-sub/rpmvc'
make -C scripts install
make[1]: 入ります ディレクトリ `/home/kijirusi/CustomCD/update-sub/scripts'
install -d /home/kijirusi/bin
install -c -m 700 selectNew.sh /home/kijirusi/bin
make[1]: 出ます ディレクトリ `/home/kijirusi/CustomCD/update-sub/scripts'
 アップデートパッケージをすべて、CD用ワークにコピーします。
[kijirusi@hal CustomCD]$ cp updates/i386/* i386/RedHat/RPMS/.
[kijirusi@hal CustomCD]$ cp updates/i586/* i386/RedHat/RPMS/.
[kijirusi@hal CustomCD]$ cp updates/i686/* i386/RedHat/RPMS/.
[kijirusi@hal CustomCD]$ cp updates/athlon/* i386/RedHat/RPMS/.
[kijirusi@hal CustomCD]$ cp updates/noarch/* i386/RedHat/RPMS/.
[kijirusi@hal CustomCD]$ cp updates/SRPMS/* i386/SRPMS/.
 このままでは、新旧のパッケージが混在していることになります。そこで、用意しておいた「最新パッケージ以外を除外するためのスクリプト」を実行します。
[kijirusi@hal CustomCD]$ ~/bin/selectNew.sh i386/RedHat/RPMS
RPM Version check start!!
Checking  4Suite  Other Version ....Not Found!... done.
Checking  a2ps  Other Version ....Not Found!... done.
   ・・・(中略)・・・
Checking  glibc  Other Version ....
remove  /home/kijirusi/CustomCD/i386/RedHat/RPMS/glibc-2.2.93-5.i686.rpm  done.
   ・・・(中略)・・・
All Check done
[[kijirusi@hal CustomCD]$ ~/bin/selectNew.sh i386/SRPMS
RPM Version check start!!
Checking  a2ps  Other Version ....Not Found!... done.
   ・・・(中略)・・・
Checking  ethereal  Other Version ....
   ・・・(中略)・・・
remove  /home/kijirusi/CustomCD/i386/SRPMS/ethereal-0.9.6-1.src.rpm
remove  /home/kijirusi/CustomCD/i386/SRPMS/ethereal-0.9.8-0.80.0.src.rpm  done.
   ・・・(中略)・・・
All Check done
ここまでの作業で、最新のパッケージCDの構成が出来上がりました。最新パッケージCD作成が目的であれば、次は、『8のpkgorder.txtの作成』のページへ、カスタムパッケージへの入れ替えやオリジナルパッケージの追加は『4のパッケージの作成』のページへ
<前へ> <TOP> <次へ>