前回は initrd.gz を再構成したpreseedをやりました。
でもちょっと変更するのに、initrdを作りなおすのも面倒だし。preseed.cfg を書き換えるだけで済ませたい。
http に設置した preseed.cfg を取得して展開させたい
とっても簡単
- preseed.cfg を書いて
- http サーバーにファイル置いて
- 起動オプションにurlを書く
2回目からは preseed.cfg を編集するだけで済む
preseed.cfg の設置
cp preseed.cfg /var/www/preseed.cfg
起動メニューを変更
これも、grub などのブートメニューを手動で編集すれば済むのです
わたしはPXE環境なので、pxe-menu.cfg/defaultをこんな風に書きました。
default syslinux/menu.c32 timeout 30 ontimeout debian-installer-text label live debian linux /debian-live/live/vmlinuz1 initrd /debian-live/live/initrd1.img append boot=live config netboot=nfs nfsroot=192.168.1.10:/var/tftpd/debian-live quiet splash label debian-installer-text menu label ^Install Debian menu default kernel debian-installer/i386/linux append auto=true vga=788 initrd=debian-installer/i386/initrd.gz url=http://192.168.1.1/preseed.cfg console-setup/charmap=UTF-8 console-keymaps-at/keymap=jp console-setup/layoutcode=jp console-setup/ask_detect=false pkgsel/language-pack-patterns=pkgsel/install-language-support=false interface=eth0 hostname=debian domain=local -- quiet
なんでこんなに長いのか。
起動オプション長い。。。
起動してpreseedを読み込むだけであれば、これだけで済むのですが。
append auto=true initrd=debian-installer/i386/initrd.gz url=http://192.168.1.1/preseed.cfg
preseed を読み込むためにネットワーク設定が必要
つまり、ネットワーク未設定ではpreseedが読み込めないので、インストール画面からネットワーク設定は手動でやる必要があって自動化出来ない。
またインストールでネットワーク設定画面まで到達するのにキーボード設定が必要。 こちらも自動化できない。
そこで初回のネットワーク設定をappendする
- キーボードと地域言語設定
- ネットワーク設定
これらを起動オプションで渡すと解決
それがこのへんになる。
console-setup/charmap=UTF-8 console-keymaps-at/keymap=jp console-setup/layoutcode=jp console-setup/ask_detect=false pkgsel/language-pack-patterns=pkgsel/install-language-support=false interface=eth0 hostname=debian domain=local
初期設定➝自動取得したらお任せ
起動オプションによる初期設定が上手く行っていれば、preseedを取得してインストールが開始する
tailf -f /var/log/apache/access.log
でアクセスログでも監視しながらDeibanインストーラーがアクセスするか確認すればいいかな。
これで相当楽になる。
PXEブート ➝ ブートメニュ ➝ preseed.cfg でインストール
ここまでやれば相当楽にインストールができるようになる。
複数台やってみた結果
複数台やってみるにはネットワーク・インストールはやっぱり遅くなる。
何度もインストールするには「持ってこい」な設定のネットワークインストールだけど、
一度に大量にインストするなら、トラフィックが・・・
ということで、 DVD イメージを丸まるローカルにおいておいたほうが速いかもしれないです。
また、aptでアップデートが走るので apt-chacher もあったほうがいいかな。
次回は preseedの中身ついて
とても長いpreseedの中身について書こうと思います。