Linuxmaniaトップ活用ガイドeSATAカード接続の外付けHDDからFedoraを起動する

Linuxmania:活用ガイド


■ eSATAカード接続の外付けHDDからFedoraを起動する(Fedora,CentOS)


[概要]
すでに内蔵 HDD に Fedora 7 がインストールされている状況で、
eSATA 接続の外付け HDD に新しく Fedora 7 をインストールし、
ブート CD を用いて外付け HDD から起動する方法を紹介します。

[環境]
・LinuxMania 夏目坂モデル (Fedora 7)
・Linuxmaniaリカバリディスク (※ kernel 2.6.21-3228 収録)
・増設した eSATA カード :
  玄人志向 / SATA2RE2-PCIe(eSATA 接続 RAID コントローラ、SiI3132 チップセット)
・eSATA 接続の外付け HDD

 ※リカバリディスクに収録されている kernel のバージョンは、
 お客様の購入時期によって異なります。以下の kernel バージョンは
 お客様の環境に合わせて読み替えてください。

[このドキュメントで使用する kernel バージョン]
 (1) Fedora 7インストールディスク収録 : 2.6.21-1.3194
 (2) Linuxmaniaリカバリディスク収録  : 2.6.21-1.3228


手順


以下の手順では、2つのバージョンのカーネルを用意したブート CD を作成します。
 バージョン (A) kernel 2.6.21-1.3194
 バージョン (B) kernel 2.6.21-1.3228

使用方法としては、Fedora 7をインストール後、まずバージョン (A) のカーネルで外付け HDD から起動。
起動後、リカバリディスクを用いて OS のカスタマイズを行うと、カーネルのアップデートが行われますので、
次回以降の起動からバージョン (B) のカーネルを使用します。



0. すでに内蔵 HDD にインストール済みの Fedora 7 を起動します。



1. 作業の準備をします。



1-1. コマンドを打ち込むため、端末を起動します。

 メニューの [アプリケーション] → [システムツール] → [端末] を実行します。



1-2. suコマンドを実行し、root(管理者)になります。

 [user@localhost ~]$ su -
 パスワード: (管理者用パスワードを入力します)
 [root@localhost ~]#

 管理者権限を得るのに成功すると、プロンプトが $ から # に変化します。



2. Fedora 7インストール直後に起動するためのファイル(A)を作成します。



2-1. 元になる initrd ファイルを展開します。

 まず、必要なカーネルと initrd ファイルを含むパッケージを
 FTPサーバ等からダウンロードし、インストールします。

[root@localhost ~]# rpm -ivh --force kernel-2.6.21-1.3194.fc7.i686.rpm

[root@localhost ~]# cd /usr/src
[root@localhost src]# mkdir bootcd
[root@localhost src]# cd bootcd
[root@localhost bootcd]# mkdir initrd-a
[root@localhost bootcd]# cd initrd-a
[root@localhost initrd-a]# zcat /boot/initrd-2.6.21-1.3194.fc7.img | cpio -i -d

 /usr/src/bootcd/initrd-a 下に initrd の構成ファイルが展開されます。



2-2. eSATA カードのドライバを initrd の lib ディレクトリにコピーします。

[root@localhost initrd-a]# cp /lib/modules/2.6.21-1.3194.fc7/kernel/drivers/ata/sata_sil24.ko lib/
[root@localhost initrd-a]# chmod 600 lib/sata_sil24.ko



2-3. initrd の init ファイルを編集します。

[root@localhost initrd-a]# gedit init &

以下の内容を追加します。


echo "Loading libata.ko module"
insmod /lib/libata.ko

# ここから  
echo "Loading sata_sil24.ko module"
insmod /lib/sata_sil24.ko 
# ここまでを追加

echo "Loading ahci.ko module"
insmod /lib/ahci.ko

 編集が終わったら、保存してテキストエディタを終了します。



2-4. initrd ファイルを作成します。

[root@localhost initrd-a]# find . | cpio --quiet -o -c | gzip -c > ../initrd-2.6.21-1.3194.fc7.img



3. Linuxmaniaカスタマイズディスク適用後に起動するためのファイル(B)を作成します。



3-1. 元になる initrd ファイルを展開します。

 まず、必要なカーネルと initrd ファイルを含むパッケージをインストールします。

[root@localhost ~]# rpm -ivh --force kernel-2.6.21-1.3228.fc7.i686.rpm

[root@localhost ~]# cd /usr/src
[root@localhost src]# mkdir bootcd
[root@localhost src]# cd bootcd
[root@localhost bootcd]# mkdir initrd-a
[root@localhost bootcd]# cd initrd-a
[root@localhost initrd-b]# zcat /boot/initrd-2.6.21-1.3228.fc7.img | cpio -i -d

 /usr/src/bootcd/initrd-b 下に initrd の構成ファイルが展開されます。



3-2. eSATA カードのドライバを initrd の lib ディレクトリにコピーします。

[root@localhost initrd-b]# cp /lib/modules/2.6.21-1.3228.fc7/kernel/drivers/ata/sata_sil24.ko lib/
[root@localhost initrd-b]# chmod 600 lib/sata_sil24.ko



3-3. initrd の init ファイルを編集します。

[root@localhost initrd-b]# gedit init &

以下の内容を追加します。


echo "Loading libata.ko module"
insmod /lib/libata.ko

# ここから  
echo "Loading sata_sil24.ko module"
insmod /lib/sata_sil24.ko 
# ここまでを追加

echo "Loading ahci.ko module"
insmod /lib/ahci.ko

 編集が終わったら、保存してテキストエディタを終了します。



3-4. initrd ファイルを作成します。

[root@localhost initrd-b]# find . | cpio --quiet -o -c | gzip -c > ../initrd-2.6.21-1.3228.fc7.img



4. 起動用 CD の ISO イメージファイルを作成します。



4-1. ISO イメージファイルを作る準備をします。

[root@localhost ~]# cd /usr/src/bootcd
[root@localhost bootcd]# mkdir -p iso/boot/grub



4-2. カーネルと initrd ファイルをコピーします。

[root@localhost bootcd]# cp initrd-2.6.21-1.3194.fc7.img iso/boot
[root@localhost bootcd]# cp /boot/vmlinuz-2.6.21-1.3194.fc7 iso/boot

[root@localhost bootcd]# cp initrd-2.6.21-1.3228.fc7.img iso/boot
[root@localhost bootcd]# cp /boot/vmlinuz-2.6.21-1.3228.fc7 iso/boot



4-3. GRUB の設定をします。

[root@localhost bootcd]# cd iso/boot/grub
[root@localhost grub]# cp /usr/share/grub/i386-redhat/stage2_eltorito ./
[root@localhost grub]# cp /boot/grub/splash.xpm.gz ./

[root@localhost grub]# gedit grub.conf &


 以下の内容を書き込みます。


#
# Dual Boot Disk configration file
#

default=0
timeout=30
splashimage=(cd)/boot/grub/splash.xpm.gz

# For booting Windows Vista
title WindowsVista
rootnoverify (hd0,0)
makeactive
chainloader +1

# For booting Fedora 7@externalHDD 1st Boot
title Fedora 7(1st)
rootnoverify (hd1,0)
kernel (cd)/boot/vmlinuz-2.6.21-1.3194.fc7 ro root=/dev/VolGroup00/LogVol00 rhgb quiet
initrd (cd)/boot/initrd-2.6.21-1.3194.fc7.img

# For booting Fedora 7@externalHDD 2nd Boot
title Fedora 7(2nd)
rootnoverify (hd1,0)
kernel (cd)/boot/vmlinuz-2.6.21-1.3228.fc7 ro root=/dev/VolGroup00/LogVol00 rhgb quiet
initrd (cd)/boot/initrd-2.6.21-1.3228.fc7.img

編集が終了したら、保存してテキストエディタを終了します。



4-4. CD/DVD イメージファイルを作成します。

[root@localhost bootcd]# mkisofs -R -b boot/grub/stage2_eltorito -no-emul-boot 
                                 -boot-load-size 4 -boot-info-table -o bootcd.iso iso


 ISOイメージファイル bootcd.iso ができます。



5. 作成したISOイメージファイルを CD/DVD に焼きます。

[root@localhost bootcd]# nautilus-cd-burner --source-iso=bootcd.iso &



6. eSATA 接続 HDD から起動したい OS を、焼いた CD/DVD で起動します。


GRUBメニューが出ますので、インストール直後は Fedora 7 (1st) を、
Linuxmaniaカスタマイズディスク適用後は Fedora 7 (2nd) を選ぶと Linux が起動します。



7. カーネルがアップデートされた時は、3 - 5 と同様の作業を行い、新カーネルに対応した起動 CD/DVD を作成してください。




[作成日 2007/7/25]