にほんブログ村 IT技術ブログへ
にほんブログ村

Linux ブログランキングへ

2014年06月14日

モバイルUbuntu、NetWalker登場 NetBSD 2014-06-14RaspberryPiイメージ MicroSD+USBブート テスト1編 その226

Netwalker上でNetBSDをMicroSD+USBブートで起動させてみました。
解説はあるのですが、思ったほど簡単にはいかなかったので
ブログに一度まとめてみます。

興味のある方は是非。

○Netwalker上でのNetBSD
NetBSDは様々なプラットフォームに移植されているUnixで
Netwalkerにもarmhfで移植されました。
現在はドライバの開発が継続して続いております。

KernelはNetwalker専用に作られてまして、
実際のユーザーランド領域はRaspberryPiの
イメージファイルを共用して使える形になっております。
RaspberryPiのNetBSDとほぼ同一の環境で使える形です。


○NetBSD公式 インストール方法
NetBSDユーザーグループ会の報告ではNetBSDのインストール方法が
下記の内容でご報告されております。
こちらの内容は決して間違っている訳ではありませんでしたが、
ネット上ではNetBSDが起動しないという報告が上がってます。
僕も試してみましたが、一晩ずっと悩みました。夜も眠れませんw
結論としましては、情報が幾つか足りなかった事と
母艦をNetBSDを使うという事が前提になっており、
Ubuntuだけの知識では対応できない内容も重なっているというのが背景でした。

BSDユーザーグループ解説内容

Sharp NetWalker special kernel: (Thanx h_kenken@)
/boot/netbsd-NETWALKER.bin.gz is a kernel for Sharp NetWalker.
1. Make backup image on NetWalker ubuntu.
2. cp /boot/netbsd-netwalker.bin.gz [BackupImage]/boot/zImage
3. Set [BackupImage] MicroSD to NetWalker MicroSD port
4. Set RPI image to USB port via SD to USB dongle.
5. With pushing [L Mouse][R Mouse],push Power button in 5 seconds.
6. Pray for success in 5 seconds.
7. Typical NetBSD Boot message appears on your console.
8. Fail on single user mode,"mount /"
9. vi /etc/fstab and type :1,$s/ld0/sd0/g w q
10. reboot and login again.
11. startx and mouse can control with small touchpad.

記録の為、まず勝手に意訳して中身を変更して日本語に直してみます。
ただしこの方法では起動しませんのでKapperの起動方法は後で再度記入します。

Sharp NetWalker special kernel: (Thanx h_kenken@)
/boot/netbsd-NETWALKER.bin.gz が該当ファイルです。

1.MicroSDリカバリイメージをNetwalker上のUbuntuでシャープのサイトより
 ダウンロードして作成する。
2.ダウンロードしたnetbsd-netwalker.bin.gzファイルをzImageファイル名に
 置き換えて上書きする。
 cp /boot/netbsd-netwalker.bin.gz [リカバリディスク]/boot/zImage
3. MicroSDのリカバリディスクをNetWalkerのMicroSD portに挿入
4. RaspberryPiのNetBSD imageファイルをUSB portの SDカードアダプタに挿入する
5.[L Mouseボタン][R Mouseボタン]を押しながら5秒ほどPowerボタンを押して起動する。
6. 5秒間、成功を祈る?
7. MicroSDから起動して通常のNetBSDのブートメッセージがコンソール画面で表示される
8. シングルユーザーモードでの"/"のマウントに失敗するはず
9. vi /etc/fstab して入力 :1,$s/ld0/sd0/g w q
10. rebootして再度ログイン
11. startxすればマウスがsmall touchpadで動作します。


NetBSD独自のルールで理解できない所が幾つかあります。
いつか方法ご教授願えたらと思います。


○実際のNetBSD起動方法
下記のKapperの知識はUbuntu Linuxで動作させる前提と
NetBSD起動後はNetBSD操作方法の知識を前提とします。
ただし出来る限りUbuntuユーザーでもわかる内容に書き換えますので
もし分からない内容があればブログやtwitter、某巨大掲示板へ書き込み下さい。
申し訳ありませんが回答するかどうかは確約できませんが。

まず動作確認に必要な機器を下記に纏めます。

・Netwalker本体
・リカバリディスク、Kernel置き換え用の4GB以上のMicroSDカード一枚
・RaspberryPiディスクイメージ用2GB以上のSDカード一枚
 (もしくはMicroSD+SD変換カードアダプタ)
・USB-MicroSD変換アダプタ
・イメージファイル動作確認+/etc/fstab書き換え確認用のRaspberryPi本体
・RaspberryPi周辺機種のUSBキーボード、マウス、HDMIモニタ、電源MicroSDケーブル

まずはこれだけ必要です。
慣れればRaspberryPi一式はいらないかもしれませんが、
初めて起動させる際には無いと難しいかと。
MicroSDカードは合計2枚必要なので要注意。

大まかな流れはこちらになります。
RaspberryPiのイメージSD作成方法はPidoraでの作成方法を参考にしました。
こちらは結構詳しく書いてありましたので助かります。

 Pidora Installation

1.NetBSD本家ftpサーバよりKernelファイルのnetbsd-netwalker.bin.gzと
 RaspberryPiイメージファイルをダウンロードします。
 
 母艦を他のPCを使うのであれば良いですが、
 Netwalker本体で操作する場合、容量とメモリが足りなくなるので
 別途USBメモリか何かにRaspberryPiイメージファイルを一度解凍します。
 解凍すると容量は1.8GBになりますので要注意。

2.MicroSDリカバリイメージをNetwalker上のUbuntuでシャープのサイトより
 ダウンロードして作成する。

3.ダウンロードしたnetbsd-netwalker.bin.gzファイルをリカバリディスクのzImageファイル名に
 置き換えて上書きする。
 /media/diskの場所はUSBを指すとdisk-1とかに変わりますので注意。

 sudo cp netbsd-netwalker.bin.gz /media/disk/boot/zImage

4.RaspberryPi用のイメージSDカードを作成する。
 まずはUSBにコピーしたRaspberryPiイメージファイルを置いてNetWalkerに挿します。
 次に本体のMicroSDポートに新品のMicroSDカードを挿入。
 先程作成したリカバリディスクと間違えない様に注意。
 また操作方法を間違えると確実に壊しますので自己責任で注意。
 Kapperも一度母艦OSを壊しました。

 参考
 Pidora Installation

 ddコマンドでイメージファイルをMicroSDに書き込みます。
 10分位でしょうか。結構かかりますので気長に待ちます。
 
 sudo dd if=2014-06-14-netbsd-raspi.img of=/dev/mmcblk0 bs=1M

 ここで注意が必要なのが、いつも/etc/fstabとかで使っている
 /dev/sda1 とか /dev/mmcblk0p1 でなくて、
 /dev/sda とか /dev/mmcblk0 を指定する必要がある事です。
 /dev/mmcblk0p1を指定してしまうと認識できなくなるので母艦で再フォーマット必要です。

5.RaspberryPiでブートイメージの動作確認

 書き換えたブートイメージをRaspberryPiで動作確認。
 無事起動すれば初期設定しログイン画面まで行きます。
 ログイン画面まで出ず、

 boot device:
 root device:

 みたいに出てイメージがマウント出来なければ作成失敗です。

 ログイン画面が出ましたらrootでログインします。
 startxと入力してxが起動出来ましたら尚問題ないかと。

6.RaspberryPiイメージの/etc/fstabの書き換え
 NetBSDでデバイス指定はUSBがld0、SDカードがsd0で決められています。
 /etc/fstabの設定はUSBのld0で標準設定されていますのですが
 Netwalkerではマウント出来ないのでld0⇒sd0に書き換えます。
 実はこれを行うとRaspberyPiで逆にマウント出来なくなりますw
 RaspberryPiで使う場合は面倒なのでもう一枚SDカードが必要でしょうね。

 RaspberryPiを起動させた後で、
 エディタは特になんでも良いですが、初期設定ならviで

 vi /etc/fstab

 ここで確か4行目と5行目をld0⇒sd0に書き換えて保存します。
 RaspberryPiをシャットダウンさせてNetwalkerのUSBポートにSDカードをつなぎます。

7.NetwalkerでNetBSDの起動

 MicroSDのリカバリディスクをNetWalkerのMicroSD portに挿入
 書き換えたRaspberryPiのNetBSD imageファイルをUSB portの SDカードアダプタに挿入する
 [L Mouseボタン][R Mouseボタン]を押しながら5秒ほどPowerボタンを押して起動する。

 まず初期設定のKernelだけが起動してきます。

 boot device:
 root device:

 と出てくるはずなのでsd0と入力して後はenterキーを連打します。
 ちゃんとRaspberryPiイメージと/etc/fstabの書き換えまで出来ていれば
 マウントしてログイン画面に表示されるはずです。
 失敗した場合はイメージの作成からやり直しましょう。
 また

 /: replaying log to disk

 と表示されたまま止まる場合がありますので
 その際は電源を落として再起動させましょう。
 本来なら放置しておけばそのうちNetBSDが起動します。


8.rootでログイン、Xの起動確認

 まだユーザー登録していないのでrootでログインして
 startxしてXorgの起動確認します。
 ここまで動けばとりあえずOKです。


○まとめ
何故かXで無線LANとタッチパッドが機能しません。
これはかなり昔のKernelでお聞きした状態で、今はドライバが更新されて動作するはずです。
原因まではわかってません。
古いカーネルかな?昨日落としたばかりですが。
ifconfig -aしてもネットワークアダプタが出てきません。
ちゃんと動作すれば後はpkgsrcすればアプリは問題ないはず?
RaspberryPiみたいにMicroSD一枚で完結出来る様になればなとも思いますけど。
今の段階では起動させるだけで精一杯かもしれませんが
色々と試してみてくださいな。
posted by kapper at 09:15 | Comment(0) | Netwalker
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

にほんブログ村 IT技術ブログへ
にほんブログ村

Linux ブログランキングへ