« Xandrosをスレーブで使う設定手順1 | トップページ | Xandros さらなる日本語化 »

2009年1月30日 (金)

Xandrosをスレーブで使う設定手順2

EeePC4G-X改でXandrosをSlave(sdb)で使う設定手順の続編です。

マスタードライブの装着
電源、バッテリーを外して裏蓋を開け、SHD-DI9M16Gを装着します。
SHD-DI9M16G側をプルダウンしてマスターとします。(私は切り替えSW付き)
裏蓋を閉じて電源を繋ぎます。

ブートイメージとブートローダーのコピー
電源ON
F2押しでBIOS画面を出しオンボード4GBがSec Slaveとなっていることを確認します。
SSD起動順序もオンボード4GBを1番目にします。
BIOSを抜けると再度BIOS起動画面が出るのでF9キー連打
GRUBメニューが表示されます。
(失敗しても再起動でチャレンジすればOKです)

数行出るので1行目のNormal Bootを選んで eキー を押します。
3行表示されるので2行目の kernel オプションが記述されている行を選んで eキー を押します。
 root=/dev/sda1 と表示されるので
 root=/dev/sdb1 XANDROSBOOTDEBUG=y と書き換えてEnter
b キーを押すと レスキューモードが起動しカーソルが点滅します。

mount /dev/sdb1 /mnt-system  で/mnt-systemをマウント
mount /dev/sdb2 /mnt-user    で/mnt-userをマウント
cp /mnt-user/temp/menu.lst /mnt-system/boot/grub/ で本来の置き場にコピー
cp /mnt-user/temp/initramfs-eeepc-sdb.img /mnt-system/boot/  で本来の置き場にコピー
rm -rf /temp  /tempはもう不要なので削除(後からでも出来ます)

Ctrl+Dで抜けれるそうです。(後から判ったけど)

Slave_error

なんか悲観的なメッセージが出てきて意気消沈。ダメかと思いました。
再起動すると、いつもより時間がかかりましたが・・・

Xandrosslave

Xandrosがスレーブで起動したではありませんか!成功♪
数度失敗していたのですっごくうれしかった。

早速以前コメントで教えていただいたコマンドdf -Thをターミナルで試すと、見事sdbにマウントされとります。

Dfthslave

残る疑問はfstabの記述に相変わらずsdaへのマウントがあること。いいのか?
どなたか教えていただけるとありがたいです。

以上参考元は下記の情報です。ありがとうございました。
 a.out EeePC 901-X と Xandros (1) 
 散財日記 EeePC 901-X 環境構築 Xandros を IDE Slave から起動しよう(その1)
 bontakunさんのXandros をSlaveで動かすに頂いたコメント 

|

« Xandrosをスレーブで使う設定手順1 | トップページ | Xandros さらなる日本語化 »

コメント

16G のSSD(/dev/sda)の900Aで、
8G のSDカード(/dev/sdb)に
Xandros をインストールしました。

参考サイトは以下です。
http://wiki.eeeuser.com/xandrosbootfromusb

何かのご参考になれば幸です。

投稿: チェンマイのPCオタク | 2009年1月30日 (金) 23時54分

チェンマイのPCオタクさん、おはようございます。
SDメディアとはさらに大変そうですね。
英語がんばって読んでみます。汗

投稿: アンビンバンコ | 2009年1月31日 (土) 08時22分

ほぼ任意の場所へインストールが可能かと思います。

/dev/sdb2 にSYSTEMパーティション
/dev/sda3 にUSERパーティション
の例です。
設定はライブCD又はライブUSBのKNOPPIX等のlinuxで行いました。
(私はUSB8GにインストールしたeeeUBUNTU8.10を使用しました)

1.SYSTEMの生成(/dev/sdb2)
インストールCDからインストールし、ブートする前に止めたところで、
SYSTEM収容パーティションをpartimageで圧縮イメージファイル取得。
ツールpartimageはUBUNTU等のsynapticで得れます。
これを/dev/sdb2へ展開。

2.USERの生成(/dev/sda3)
通常のEXT3ファイルシステム作成。(ツールgpartedで簡単に作成できます)
そのルートで以下のコマンドで.autoformatファイルを置いておく。
# sudo touch .autoformat

3.SYSTEM中のSYSTEMパーティション、USERパーティション対応情報部分変更
(全て $ sudo su で特権モードで実施)
/boot/initramfs-eeepc.imgに収容されているinitファイル内容変更。
/boot/initramfs-eeepc.imgに収容されているdevディレクトリ中に追加。
/boot/initramfs-eeepc.imgに収容されているmodulesディレクトリ中に追加。
/sbin/scanuser.shファイル内容変更。
/sbin/formatuser.shファイル内容変更。
/usr/sbin/services.shファイル内容変更。

ファイル内容変更(その1)
/dev/sda1 が有れば、それを /dev/sdb2 に変更する。
/dev/sda2 が有れば、それを /dev/sda3 に変更する。

ファイル内容変更(その2:ディバイス認識用)
initファイルの2行目から追加
#!/bin/sh 1行目
insmod -f /modules/usbcore.ko
insmod -f /modules/ehci-hcd.ko
insmod -f /modules/uhci-hcd.ko
insmod -f /modules/libusual.ko
insmod -f /modules/usb-storage.ko
sleep 6
services.shファイル該当行コメント化(#文字を先頭に付与)
#modprobe uhci-hcd
#modprobe ehci-hcd
#modprobe usb-storage

modulesディレクトリ中に以下のものをコピーして追加(ディバイス認識用で使用するもの)
/lib/modules/2.6.21.4-eeepc/kernel/drivers/usb/storage/libusual.ko
/lib/modules/2.6.21.4-eeepc/kernel/drivers/usb/storage/usb-storage.ko
/lib/modules/2.6.21.4-eeepc/kernel/drivers/usb/host/ehci-hcd.ko
/lib/modules/2.6.21.4-eeepc/kernel/drivers/usb/host/uhci-hcd.ko
/lib/modules/2.6.21.4-eeepc/kernel/drivers/usb/core/usbcore.ko

devディレクトリ中に追加(初期認識用ディバイス追加)
以下のコマンドでディバイスノード生成。
# rm -fr sdb2 sda3
# mknod -m 644 sdb2 b 8 18
# mknod -m 660 sda3 b 8 3
アクセス許可値はSYSTEMが644 USERが 660。
大番は8。小番は
/dev/sda = 0
/dev/sda1..15 = 1..15
/dev/sdb = 16
/dev/sdb1..15 = 17..31
..
を使用。

4.ブート設定
ディバイスの先頭セクター(MBR)にはMBMをインストールしました。
[MBMの取得と使用方法]
"http://wikiwiki.jp/disklessfun/?mbm"
Linux上で解凍して、出来たディレクトリの中に入り、
# sudo ./install-mbm-no-install /dev/sdb
とかで(例では/dev/sdbディバイス)、MBMを指定ハードディスクの先頭にインストールできます。
私は、更に、EeePC電源投下でBIOSが優先起動するディバイスのMBRにもMBRをインストールしました。
# sudo ./install-mbm-no-install /dev/sda
これで電源投下時BIOSでの起動変更が不要になります。

Xandros をインストールしたパーティションの先頭(PBR)にGRUBを設定しました。
# sudo grub
> root (hd1,1)
> setup (hd1,1)
> quit
対応は
hd0:hd1:hd2:..=/dev/sda:/dev/sdb:/dev/sdc:...
0:1:2:...=/dev/sdX1:/dev/sdX2:/dev/sdX3:...
例は(hd1,1)は/dev/sdb2に対応

/boot/grub/menu.lstの変更をしました。
GRUBルート変更反映(?)は
root (0x80,0) 行を
uuid 15314d4d-aeef-48ff-b01b-852b259eb7bf
に変更。数値は
# sudo dumpe2fs /dev/sdb2 | grep UUID
で得られるUUIDの値を設定しました。
SYSTEMパーティション変更反映は
カーネル起動行の起動パラメータ
root=/dev/sda1 を
root=/dev/sdb2
に変更。

以上。ご参考になれば幸です。

投稿: チェンマイのPCオタク | 2009年2月 5日 (木) 23時13分

チェンマイのPCオタクさんへ
解説ありがとうございます。
ただ、私のLinuxの知識の域を越えており、現状理解困難です。がいつかは理解できるようになりたいと思います(^^;

投稿: アンビンバンコ | 2009年2月 5日 (木) 23時40分

この記事へのコメントは終了しました。

トラックバック


この記事へのトラックバック一覧です: Xandrosをスレーブで使う設定手順2:

« Xandrosをスレーブで使う設定手順1 | トップページ | Xandros さらなる日本語化 »