2010/05/07

SheevaPlug+でNFSBoot

SheevaPlug+復旧の記録。

送られてきたSheevaPlug+でapt-getをやろうとすると、
"/usr/lib/methods/http not found"(Pathは少しあやふや)なるエラーがでてしまい、plugcomputing.orgからゲットしてきたrootfs.tar.gzやら展開してみるも効果がなく、途方にくれて結局rootfs自体再インストールする事にしました。


で、NFSBootをやりました。
(後から考えたらSDCardにMiniRoot作ってもいけたような気もするんですが・・)
NFSBootをしてNetwork越しのkernel&rootfsでBootし、NANDを書き換えるという作業。

かなり参考した記事は以下


Ubuntu Weekly Recipe
第69回 GW特別企画・電源プラグ型コンピューターSheevaPlugの使い方(1):基礎編
第70回 GW特別企画・電源プラグ型コンピューターSheevaPlugの使い方(2):インストール編

やりたいことをほぼそのままやってくれているので詳細はそちらにゆずるとして・・。

ざっくりやったことを書くと、
母艦側
1. tftpのインストール&設定
2. NFSのインストール&設定
3. NFSBoot用のkernelとrootfsの準備
SheevaPlug側
4. bootcmd, bootargsをNFSBoot用に設定
5. NFSBootする
6. flash_eraseall, nandwriteを使ってkernel, rootfsの上書き(kernelはついでにやった)
7.bootcmd, bootargsをNANDBoot用に設定
8. Boot

注意点があるとすれば、
rootfsのサイズが記事では0x1f800000なんですが、
自分の環境では0x1fb00000にしないとうまく起動してくれなくて、rootfsが読み込めんといわれてkernel panicを何度も起こしました。


あと、別に起動しなくなるわけではないかもしれませんが、bootargsのmtdpartsを記事ではu-bootから指定してますが、自分の環境ではuImageとrootfsだけ書く方に変えました。

長くなったので、とりあえず一旦ここまで。

0 件のコメント: