Gentooブート用のUSBメモリを作る

前置き

サーバマシン用に買ったThinkPad X100eにはCD-ROMドライブが付いてないので、USBメモリからブートしてGentoo Linuxをインストールしました。それにはまず、gentooのLiveUSBを作る必要があります。ということで、その手順です(詳しくはgentooの公式サイト参照)。

前提として、稼動中のgentooマシンが必要です。今回は、vmwareにインストールしてあったgentooを使いました。

本文

まずfdiskコマンドで、USBメモリにプライマリパーティションを作ります。fdiskの操作方法については割愛します。/dev/sdcがUSBメモリの場合、以下のように設定します。

  • /dev/sdc1
  • bootable
  • type=b(W95 FAT32)

次に、mkdosfsコマンドで、FAT32ファイルシステムを作ります。インストールされてない場合はemergeします。USBメモリをmountするのは、まだ先です。

 # emerge sys-fs/dosfstools
 # mkdosfs -F 32 /dev/sdc1

ブートローダのsyslinuxをemergeします。

 # emerge sys-boot/syslinux

余談ですが、このときはミラーサイト(tokyo-univ)の調子が悪かったので、/etc/make.confを編集しました。

 GENTOO_MIRRORS="ftp://gg3.net/pub/linux/gentoo"

MBRをUSBメモリへ書き込みます。

 # dd if=/usr/share/syslinux/mbr.bin of=/dev/sdc

gentooのLiveCDイメージをダウンロードします。

 # wget ftp://ftp.iij.ad.jp/pub/linux/gentoo/releases/x86/autobuilds/20100216/install-x86-minimal-20100216.iso

LiveCDの内容を、そのままUSBメモリへコピーします。ここで、ようやくUSBメモリをmountします。

 # mount -o loop,ro -t iso9660 install-x86-minimal-20100216.iso /mnt/cdrom
 # mount -t vfat /dev/sdc1 /mnt/usbmem/
 # cd /mnt/usbmem/
 # cp -r /mnt/cdrom/* .

このままではブートできないので、USBメモリ用にファイルの位置を変えたり、不要なファイルを削除します。

 # mv isolinux/* .
 # mv isolinux.cfg syslinux.cfg
 # rm -rf isolinux*
 # mv memtest86 memtest

ブート時に、USBメモリの認識に時間がかかり過ぎてタイムアウトするケースがあるらしいので、ちょっと待つようにsyslinux.cfgを編集します。

 # sed -i -e "s:cdroot:cdroot dobladecenter:" -e "s:kernel memtest86:kernel memtest:" syslinux.cfg

ブートローダをインストールする前にUSBメモリをumountします。

 # cd /
 # umount /mnt/usbmem

最後に、ブートローダをインストールします。

 # syslinux /dev/sdc1

私の場合、ここで失敗しました。エラーメッセージは覚えてませんが、/etc/mtools/mtool.confの"SAMPLE FILE"という行が悪かったようです。コメントアウトしてリトライすれば成功しました。

 # vi /etc/mtools/mtool.conf

以上で、Gentoo Linuxインストール用のLiveUSBメモリが完成です。

Last modified:2010/05/01 15:32:55
Keyword(s):
References:[サーバ管理・Linux関連] [Thinkpad T60にGentooをインストールする] [Thinkpad X100eにGentooをインストールする]
This page is frozen.