netboot 用のカーネルと initd をダウンロード。grub から見える場所に置いておく。
# wget\ 'http://archive.ubuntu.com/ubuntu/dists/trusty-updates/main/installer-i386/current/images/netboot/ubuntu-installer/i386/initrd.gz'\ 'http://archive.ubuntu.com/ubuntu/dists/trusty-updates/main/installer-i386/current/images/netboot/ubuntu-installer/i386/linux'
適当なエントリを書き込んで update-grub で反映。"ro root=LABEL=/" オプションを付けないとうまく起動しなかった。
# cat <<EOT>>/etc/grub.d/40_custom menuentry "ubuntu 14.04 LTS netboot" { set root='(hd0,msdos1)' linux /root/linux ro root=LABEL=/ initrd /root/initrd.gz } EOT # update-grub
再起動でgrubのメニューが出てきたら書き加えたエントリを選択して起動。
メモリ不足のためなのか、debian に比べて時間がかかる。Alt+F4でログが見れるけど、一つのパッケージのインストール中に "Building dependency tree..." と "Reading state information..." の間に 10 分くらいかかってる感じ。これがパッケージ一つ一つに毎回かかるからすごい長い。Alt+F2 の busybox シェルから /var/log/syslog の内容を確認。free でメモリ使用量を確認すると物理メモリは完全に使い切ってる。swap は全然使ってないけど。cat /proc/loadavg でみると完全に CPU 使い切ってる。メモリの情報を見るには /proc/meminfo。ログを確認していくと本当に最小構成で必要なのか疑問なパッケージがたくさんインストールされている様子。そりゃdebianよりも時間がかかるわ。とりあえず起動してしまえばサクサク動く。デスクトップとか使わない分。
起動後のスプラッシュ不要
$ sudo sed -i -e 's/^GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"/GRUB_CMDLINE_LINUX_DEFAULT="quiet"/' /etc/default/grub $ sudo update-grub
起動後の文字つぶれに対応
以下だと最初から最後まで文字化け解消
$ sudo sed -i -e 's/^#\(GRUB_TERMINAL=console\)/\1/' /etc/default/grub $ sudo update-grub
以下だと起動の最初は文字化け
$ sudo cat <<EOT>>/etc/initramfs-tools/modules vga16fb EOT $ sudo update-initramfs -u