モバイルノートやネットブックなどの小型PCでは、FDDやCD-ROMなど、FreeBSDのインストールに必要な装置を備えていない場合があります。
こういった場合でも、そのPCにUSBメモリからブートする機能があれば、USBメモリ経由でFreeBSDをインストールすることが可能です。
このページでは、USBメモリからFreeBSDをインストールする方法について説明します。
まずはじめに、USBメモリからFreeBSDをインストールするには、インストール先のPC(マザーボード)が、USBブートに対応している必要があります。
自分のPCがUSBブートに対応しているかどうかは、各自のPCのマニュアルをご確認ください。
まずはじめに、1GB以上の容量のUSBメモリを用意してください。
FreeBSDのISOイメージのサイズは700MB弱ですので、1GB程度の容量のUSBメモリが必要です。
また、これから説明する手順を実行すると、USBメモリの中身は完全に初期化されますので、USBメモリの中に必要なデータが存在する場合には、必ずデータをバックアップしてから作業を始めてください。
最初に、USBメモリをフォーマットします。
以下では、USBメモリが既にPCのUSBコネクタに挿してあり、「da0」として認識されていることを前提に説明しています。
SCSIコントローラおよびRAIDコントローラがシステムに取り付けられている場合、それらに接続されたハードディスクが「da0」として認識される場合がありますので、これらのディスクを間違えてフォーマットしないよう、十分に注意してください。
(da0に割り当てられたデバイスが何かを確認するには、「dmesg」を利用してください。)
$ dd if=/dev/zero of=/dev/da0 bs=512 $ fdisk -v -BI da0 $ bsdlabel -w -B da0s1 $ newfs /dev/da0s1a
最初の「dd if=/dev/zero of=/dev/da0 bs=512」では、USBメモリ全体にゼロを書き込んで初期化します。
デバイスによっては、ブロックサイズが小さいと初期化にやたら時間がかかることがありますので、そういう時はブロックサイズ(「bs=512」の部分)を適宜調整してください。(「bs=16M」等)
次の「fdisk -v -BI da0」では、FreeBSD用のスライスを作成し、その次の「bsdlabel -w -B da0s1」では、先ほど作成したスライス上にパーティション「da0s1」を作成します。
最後の「newfs /dev/da0s1a」は、作成したパーティション上にファイルシステムを作成しています。
上記までの手順で、USBメモリは初期化されましたので、続いてこのUSBメモリにFreeBSDをインストールするのに必要なファイルをコピーします。
インストールに必要なファイルはOSのISOイメージに含まれていますので、FreeBSDのFTPサイトから、インストールしたいバージョンのFreeBSDのISOイメージをダウンロードし、mdconfigおよびmountを利用して「/cdrom」マウントしておきます。
詳しくは、「ISOイメージをマウントする」をご参照ください。
ISOイメージのマウントが完了したら、USBメモリもマウントを行い、以下のようにしてISOイメージから必要なファイルをコピーします。
$ mkdir /usbmem $ mount /dev/da0s1a /usbmem $ cp -pR /cdrom/* /usbmem $ umount /usbmem
上記の手順が完了したら、ISOイメージも忘れずにアンマウントしてください。
上記の設定が完了したら、PCのBIOS設定画面に入り、起動デバイスをUSBメモリに設定してください。
設定が完了したら、USBメモリをUSBコネクタに挿した状態でシステムを再起動させてください。
うまくいけば、USBメモリからシステムが起動し、FreeBSDのインストールが開始されます。
稀にうまくブートしなかったり、FreeBSDのブートシーケンスの途中でハングアップする場合があります。
その際には、一回PCの電源を完全に落としてから、再度コールドブートさせるとうまくいくようですので、お試しください。
| まさにこれだ 9 (69%) |
参考になった 4 (31%) |
【まさにこれだ】 CDドライブのないAtom330ベアボーンにFreeBSDを入れたかったのでとても役に立ちました! (2009/12/17 Thu 14:39:46)
【まさにこれだ】 USBメモリの種類によって、ddコマンドのオプション「bs=512」
がそのままで動作するものと、しないものがあるようです。
USBメモリを差したときに表示される "nnn byte sectors" という
文字列の nnn の部分が512ならそのままで動作する模様。
本日(2日)買ったUSBメモリは nnn の部分が512と表示され、
「bs=512」で動作しました。大変参考になりました。 (2009/12/02 Wed 16:19:08)
