- 2009-04-15 (Wed) 12:35
- 個人的ないろいろ

トラブルのせいでだいぶ間が空いちゃいました・・・(後述)。さて、前回までのあらすじはこちら。
さてネットワークブートに成功したので次はネットワークインストールです。インストール元サーバーにapacheを立てて設定ファイルを置き、そこを読み込んでもらうようにします。今回で最終回ですよ、と。
■ apacheのインストール
まずはapacheをインストールします。さくっと。
yum -y install httpd
↑ これでいっときましょう。
service httpd start
↑ ついでに起動しておきます。
■ OSイメージのダウンロード
次にOSイメージをダウンロードします。CentOSの64ビットDVD版でよいでしょう。4GBほどなので時間がかかりますよ。場所は/tmpでいいかな。
cd /tmp wget http://ftp.riken.jp/Linux/centos/5.3/isos/x86_64/CentOS-5.3-x86_64-bin-DVD.iso
■ ISOイメージのマウント
次にISOイメージをウェブから見えるところにマウントしちゃいますよ。
mkdir /mnt/iso mount -t iso9660 -o loop /tmp/CentOS-5.3-x86_64-bin-DVD.iso /mnt/iso ln -s /mnt/iso /var/www/html/iso
ここで一応ウェブから見えるかアクセスしてみましょう。「192.168.0.17/iso」で次のような画面が見えていればOKです。

↑ 無事にマウントされました!
■ kickstartファイルの作成
次にkickstartファイルを作ります。これがネットワークインストールの肝ですね。ここに書かれたとおりに自動インストールしてくれるという超絶便利ファイルです。
細かい設定は個々人で違うでしょうから、とりあえず基本的な設定だけ書き込んでみます。
なお、最初から作ると大変なので、インストール元サーバーにCentOSを突っ込んだときの設定ファイルを元につくります。/root/anaconda-ks.cfgがそれなのでまずはそれをコピーしましょう。
cp /root/anaconda-ks.cfg /var/www/html/ks.cfg chmod o+r /var/www/html/ks.cfg vi /var/www/html/ks.cfg
↑ こんな感じでコピーして編集。パーミッションも変えておきますかね。
これをもとに作りこんでいきます。ざっくり作りこんだファイルはこんな感じ。なお、anaconda-ks.cfgから変えた部分は太字で。
# Kickstart file automatically generated by anaconda. install url --url http://192.168.0.17/iso # さきほど設定したISOイメージからインストール lang ja_JP.UTF-8 keyboard jp106 network --device eth0 --bootproto dhcp # network --device eth0 --bootproto static --ip 192.168.0.18 --netmask 255.255.255.0 --gateway 192.168.0.1 --nameserver 192.168.0.1 # 静的IPの場合 rootpw --iscrypted XXXXXXXXXXXXXX # ルートのパスワード firewall --enabled --port=22:tcp authconfig --enableshadow --enablemd5 selinux --disabled timezone --utc Asia/Tokyo bootloader --location=mbr --driveorder=sda clearpart --linux --drives=sda part /boot --fstype ext3 --size=100 --ondisk=sda part pv.2 --size=0 --grow --ondisk=sda volgroup VolGroup00 --pesize=32768 pv.2 # HDDの容量によるので適宜変更 logvol swap --fstype swap --name=LogVol01 --vgname=VolGroup00 --size=512 --grow --maxsize=1024 logvol / --fstype ext3 --name=LogVol00 --vgname=VolGroup00 --size=1024 --grow reboot # 全部終わったら再起動 %packages # インストールするパッケージの選択 @japanese-support @core @base @development-tools device-mapper-multipath imake -firstboot-tui ntp screen %post # インストール後に実行するコマンド chkconfig ntpd on
こんなところですかね。あとはお好みで。なお、kickstartのカスタマイズに関して参考になりそうなサイトは文末にまとめておきました。
またHDDの部分ですが、これはHDDの容量によって変わるので、同じ容量&設定のHDDにしか適用できません。HDDの容量が変わるならば手動で一度インストールして設定値をanaconda-ks.cfgからひっぱってくる必要があるようです。
■ defaultの変更
さてせっかく作ったkickstartファイルを読み込ませなくてはいけません。/tftpboot/pxelinux.cfg/defaultを次のように変更します。
default centos53_64 prompt 1 timeout 15 label centos53_64 kernel centos53_64/vmlinuz append ks=http://192.168.0.17/ks.cfg noipv6 load initrd=cent53_64/initrd.img devfs=nomount
↑ 最後の行を変更しました。
■ ネットワークインストール!・・・と思いきや・・・
さてここまでで設定完了です。あとはネットワークブートをテストしたときのようにサーバーとThinkPadをつないで起動するだけです。うまくいけば自動でざくざくインストールしてくれますよ。
・・・と思いきや、どうにも「Sending request for IP information for eth0」という画面でとまってしまいます。これで数日間悩みましたよ・・・。
結局本田さんに相談すると「NICですね」ということでインテルのNICを差し込んだら一発解決・・・。ここは注意しないといけないですね。

↑ カードが悪かったのか・・・。NIC指して解決しました。
ふー・・・長かった・・・。お疲れ様でした(← 俺)。
■ 雑感・・・
さて数日かけて勉強してきたネットワークインストールですが、同じ構成のマシンをじゃんじゃかインストールするにはかなり便利ですね。最後のNICの部分ではまりましたが、そこさえ気をつけてハードを組んでおけば問題ないかと。
ただ個人で2、3台、という場合はあまり必要ないかもと思ったり・・・(最初から気づけ、という話ではありますが、いいのです、勉強したかったのです)。
どちらにしろ、ネットワークインストールの概要はおわかりいただけたかな、と。初心者向けに書いたつもりではありますが(自分がそうだし)、普段のブログからするとマニアックすぎましたねw。どうぞご理解を・・・。
■ 謝辞!
今回いろいろ設定&問題解決するにあたり本田さんにかなりお世話になりました。この場をお借りしてお礼申し上げます!ありがとうございました。
■ 参考資料:kickstartのカスタマイズ
ks.cfgですが、もっと細かい設定をしたいときは下記サイトを参考にしながらがつがつカスタマイズすると良いでしょう。
- Newer: 業務連絡・・・
- Older: 【東京ブック】 良いアイデア会議のキーワード
Comments:0
Trackbacks:0
- Trackback URL for this entry
- http://www.ideaxidea.com/archives/2009/04/how_to_network_install_centos_final.html/trackback
- Listed below are links to weblogs that reference
- CentOSをネットワーク経由でインストールする日記(最終回) from IDEA*IDEA ~ 百式管理人のライフハックブログ


























