4.4. USB メモリスティックでの起動用ファイルの準備

USB スティックの準備のため、 GNU/Linux が既に動いていて、USB をサポートしているシステムが必要になります。 usb-storage カーネルモジュールをきちんとロードして (modprobe usb-storage)、 USB スティックをマッピングしているのがどの SCSI デバイスかを検出してみるべきです。 (この例では /dev/sda を使用します) おそらく USB スティックに書き込むために、 ライトプロテクトスイッチを切らなければなりません。

USB スティックは少なくとも 128 MB のサイズがなければなりません (項4.4.2. 「ファイルのコピー — 柔軟な方法」 のようにすれば、 より小さなセットアップが可能です)。

4.4.1. ファイルのコピー — 簡単な方法

SYSLINUX や その設定ファイルと同様に、 (カーネルを含む) インストーラの全ファイルが入った hd-media/boot.img.gz という オールインワンファイルがあります。 以下のように USB スティックに直接展開してください。

# zcat boot.img.gz > /dev/sda

警告

この方法を使うとデバイス上の既存の物は破壊されてしまいます。 USB スティックの正しいデバイス名を確認して使用してください。

その後、USB メモリスティック (FAT ファイルシステム になっている) をマウントし (mount /dev/sda /mnt)、 そこに Debian netinst か、名刺型 ISO イメージをコピーしてください。 ファイル名は .iso で終わっていなければならないことに 注意してください。 終わったら、USB スティックをアンマウントしてください (umount /mnt)。

4.4.2. ファイルのコピー — 柔軟な方法

もっと柔軟なものがよかったり、何が起きているか知りたいのなら、 以下に説明する USB スティックにファイルを置く方法を使用すべきです。

4.4.2.1. Intel x86 での USB スティックのパーティション分割

デバイス全体ではなく、メモリスティックの最初のパーティションを セットアップする方法を示します。

注意

ほとんどの USB スティックは、 FAT16 パーティション 1 つであらかじめ設定されているので、 おそらく USB スティックのパーティション分割のやり直しや、 再フォーマットは必要ないでしょう。 どうしてもしなければならない場合は、 cfdisk や他のパーティション分割ツールを使って、 FAT16 パーティションを作成して以下を入力してください。

# mkdosfs /dev/sda1

USB スティックの正確なデバイス名を使用する事に注意してください。 mkdosfs は、 dosfstools Debian パッケージに含まれています。

USB スティックから起動してカーネルをスタートするために、 USB スティックにブートローダを配置します。 どのブートローダ (例: LILO) も動作しますが、 FAT16 パーティションを使用し、 テキストファイルを編集するだけで再設定できるので、 SYSLINUX を使用するのが便利です。 FAT ファイルシステムをサポートするオペレーティングシステムなら、 ブートローダの設定を変更するのに利用できます。

USB スティックの FAT16 パーティションに SYSLINUX を置くには、syslinux パッケージと mtools パッケージをシステムにインストールして、 以下を実行してください。

# syslinux /dev/sda1

繰り返しますが、正確なデバイス名を使用するよう注意してください。 SYSLINUX の開始時には、 このパーティションをマウントしてはなりません。 この手順ではパーティションにブートセクタを書き込み、 ブートローダコードを含んでいるファイル ldlinux.sys を作成します。

このパーティションをマウントし (mount /dev/sda1 /mnt)、 以下のファイルを Debian アーカイブから USB スティックへコピーしてください。

  • vmlinuz (カーネルバイナリ)

  • initrd.gz (初期 RAM ディスクイメージ)

  • syslinux.cfg (SYSLINUX 設定ファイル)

  • 追加カーネルモジュール

ファイル名を変更したければ、SYSLINUX は DOS (8.3) のファイル名しか処理できないことに注意してください。

syslinux.cfg 設定ファイルには、 以下の 2 行を含まなければなりません。

default vmlinuz
append initrd=initrd.gz ramdisk_size=12000 root=/dev/ram rw

起動するイメージに応じて、ramdisk_size パラメータを、 増やす必要があることに注意してください。 起動に失敗する場合は、「append」 行に、 devfs=mount,dall と追加してみてください。

4.4.2.2. ISO イメージの追加

今度は、Debian ISO イメージ (名刺、netinst、完全版のいずれか) を、 USB スティックに (入るならば) 入れましょう。 ISO イメージのファイル名は .iso で終わっていなければなりません。

ISO イメージを使わずネットワーク越しにインストールしたければ、 もちろん前の手順をスキップしてください。 さらに、hd-media/initrd.gz はネットワークをサポートしないので、 hd-media のものの代わりに、 netboot ディレクトリにある 初期 RAM ディスクを使わなければならないでしょう。

終わったら、USB メモリスティックをアンマウントし (umount /mnt)、 ライトプロテクトスイッチを有効にしてください。

4.4.2.3. USB スティックからの起動

警告

システムがメモリスティックから起動できなければ、 このスティックには無効なマスターブートレコード (MBR) があります。 これを修正するために、mbr パッケージの install-mbr コマンドを次のように使用してください。

# install-mbr /dev/sda