openfiler を USBメモリ にインストールするには
半日かかってしまったので、作業メモ。ネットでいろいろな方法があるが、多分これが最短だと思う。なお、モジュールアップデートを実施して、カーネルがアップデートされると、再設定するまで立ち上がらなくなります。公式インストーラが、USBインストールに対応すればいいのに・・・。
★情報は、ここからいただきました。
https://forums.openfiler.com/viewtopic.php?id=3274
■USBメモリにインストールする際の問題点
・GRUBのロード先パーティション番号が異なるため、パーティションが見つけられず起動できない。
→ インストーラ実行時は、USBメモリは内蔵ディスクの次の番号になるが、BIOSでのHDDエミュレーション時は、最初の番号になるためと思われる。
・USBドライバが読み込まれていないカーネルでは、ブート中にパーティションを見失うため起動が出来ない。
→ USBメモリからの起動は、BIOSでHDDエミュレーションされるが、カーネルが起動された時点でBIOSのHDDエミュレーションではなくなるためと思われる。
■インストールの手順
【HDDx2(sda,sdb)、USBメモリ(sdc)の構成の場合です。環境により読み替えてください。】
1)openfilerのISOイメージをCDに書き込む。
2)インストールしたいマシンのBIOS設定を変更する
起動順序をCDROM -> HDD の順にする
HDDのデバイス優先順位を変更する
HDD1 -> HDD2 -> USB になっているはずなので、これを、
USB -> HDD1 -> HDD2 に変更する。
3)CDから起動する。ブートメニューがでたら、"linux expert"と入力し起動する。
→ USBメモリがインストール先として選択できるようになる。
4)言語、キーボードの設定をして進める。
5)パーティションの設定画面で、Automaticを選択し、チェックボックスをSDC(USBメモリ)だけにして、インストールを進める。(情報元では、USBメモリ内にはSWAPを作るなと書いてあるが、作っても今のところ不具合は無い・・・。作ってはいけない理由求む)
6)インストールを進める。1時間位はかかるので、気長に待つ。
7)インストールが終わったら、再起動する。
8)CDから起動する。ブートメニューがでたら、"linux rescue"と入力し起動する。
9)initrdにUSBドライバを組み込んで作り直す。
10)USBメモリをマウントする。
mkdir /mnt/usb1
mount /dev/sdc2 /mnt/usb1
mount /dev/sdc1 /mnt/usb1/boot
11) USBメモリのファイルシステム内でintrdを再構築、grub変更する。
11−1) /mnt/usb1 を一時的にルートにする(作業用)
chroot /mnt/usb1
11−2) initrdを再構築する。
cd /boot
mv initrd-xxx initrd-xxx.original
※元のinitrdリネームバックアップ。initrdを入力してTABキー押せば入力が楽。
mkinitrd --preload usb-storage initrd-xxx kernel-xxx
※initrd-xxxの部分は、initrdと入力しTABキーを押し、ORIGINALを消す。
※kernl-xxxの部分は、initrdと入力しTABキーを押し、
先頭のinitrd- と末尾のimg.originalを削ってしまえばOK
11−3) GRUBの設定を変更する。
vi /boot/grub/grub.conf
※17行目の root(hd2,0) を root(hd0,0) に書き換える。
※環境によってはそのままでもいいのかもしれない。
11−4) chrootを終了させる。
exit
12)再起動する。
exit
※rescueモードが終了し再起動する。
※CDを取り出しておく。