SSブログ

【高速起動Linux splashtop】USBメモリにインストール - MSI Windでなんとか起動 [splashtop]

DSCF0595
高速起動Linux splashtop 「ASUS ExpressGate V1.2.3.1」をUSBメモリにインストールして、MSI Wind U100でなんとか起動した。昨日までは起動後すぐに再起動がかかりMSI Windでは動作しなかった。(昨日の記事参照:USBメモリへのファイル保存方法等)

USBメモリを装着して電源ONする。起動時間は約10秒だ。
ただし画面解像度が合ってないので、画面がやや横に広がり無線LANも使えない。またEGもやや古いバージョンだ。

インストールにはMSI Windとは別のパソコンが必要だ。
別のパソコンはLinuxがインストールされており、またExpressGateが起動することが必要だ。
Linuxはsplashtop用カーネルのコンパイル等を行うので、FedoraやCentOSなどをインストールする。
ExpressGateの起動が必要なのは、起動状態でファイルを引っぱり出すためだ。

インストール方法は、http://www.pochinet.org/linuxY0170.htm に詳しく説明されている。意味はよく分からないがそのまま実施した。
Linuxカーネルのコンパイルが必要なので、大変な作業で時間も掛かる。

タイプしたコマンドは以下のとおりで、最終成果物はkernel2.binというファイルだ。
最初のメニュー画面は解像度の関係で問題がおこりやすいので、通常はメニュー画面から起動されるkernel.binを再構成してkernel2.binを作り、kernel2.binを直接起動するという方法だ。

もう少し頑張って画面解像度や無線LANの問題がクリアできたらkernel2.binをアップしようと思う。

ExpressGateを起動して(端末ソフトrxvtを入れておかないとコマンドは打てない。)

tar czvf /media/DAT/initramfs.tar.gz static/ scripts init bootsplash*

別のLinux(CentOS)を起動して、

wget ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-2.6.20.11.tar.bz2
cp linux-2.6.20.11.tar.bz2 /usr/src
cd /usr/src
tar xjvf linux-2.6.20.11.tar.bz2
ln -s linux-2.6.20.11 linux
cd linux
cp SP_config-pochinet .config
cp kernel_pochinet.patch kernel.patch

 

cd /usr/local/src/initramfs/
tar xzvf /mnt/DAT/initramfs.tar.gz

cd static/
mv bin etc firefox home lib opt sbin skype usr var ../
cd ..
mkdir -p dvmpre mnt/dvmdrive_root mnt/dvmpersist_root dev/disk/{by-vol,by-id,by-uuid,by-label,by-path}
find . -name ".wh..wh*" -exec rm -rf {} \;
cd bin
rm -f va-*
cd ../etc
lrm -rf .*
cd ../usr
lrm -f local
cd ../dev
mknod console c 5 1
mknod zero c 1 5
mknod null c 1 3
cd disk/by-vol
ln -s ../../sda1 DVMUSB
cd /usr/src/linux 
cp /usr/local/src/kernel.patch .
patch -p1 < kernel.patch
cp /usr/local/src/.config .
make oldconfig
make
make modules_install
cd /lib/modules/2.6.20.11.3/kernel
for i in `find . -name "*.ko"`;
>do
>echo y | cp -p $i /usr/local/src/initramfs/lib/modules/ >/dev/null 2>&1;
>done
cd /usr/local/src/initramfs
ln -s bootsplash-expressgatedark640 bootsplash
cd /usr/src/linux
make clean;make
cp -p arch/i386/boot/bzImage /mnt/DVMUSB/kernel2.bin

initファイル用のpatchもあったがエラーになったので、initファイルは手作業で編集した。

最後にUSBメモリの/boot/grub/grub.confのkernelをce_bzからkernel2.binに変更する。

default=0
timeout=0
hiddenmenu
title splashtop
      root (hd0,0)
      kernel /kernel2.bin root=LABEL=DVMUSB rootmedia=usb baseva=scan vga=0x311 loglevel=0 initva=firefox splash=silent quiet

こんなに難しいオペレーションは久方ぶりだ。
未だ画面解像度と無線LANが解決していないのでもう少し頑張りたい。


nice!(0)  コメント(0)  トラックバック(0) 

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

Facebook コメント

トラックバック 0

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。