vine-users ML アーカイブ



[vine-users:060903] Re: Diskless(再)

  • From: Hajime Tanaka <BYH01337@xxxxxxxxxxx>
  • Subject: [vine-users:060903] Re: Diskless(再)
  • Date: Fri, 13 Jun 2003 04:30:50 +0900
 岩佐様、たいへん参考になるメールをいただきありがとうございます。
  で、もちろん、kernelのloadに一時的なシステムを使う方法もあ
るかもしれません。ただ、Linuxのloadの方法としては、一般的で
はありません。
  Linuxの場合、わざわざ一時的なLinuxシステムを用意しなくても、
一度に本来必要なkernelをロードできるはずですから、結局、その
ような面倒臭いことをしなければならない理由がありません。

  田中さんがそういうシステムを使っていておっしゃっているのか
どうかは分かりませんが、load出来る大きさとか、real modeとか
protect modeがどうしたとか言う理由で、いったん一時的なシステ
ムを起動してからさらにTFTPをかけてそこから本番のkernelをload
するOSもあるとおもいます。
  理解と言うより、必要性の問題かも知れません。

 いま調べましたらGRUBはPPC版には存在しないようです。本で読みましたところ
GRUBはブートローダのひとつであるということで、PPC版ではブートローダに
BootX, miboot, yabootというものが用意されております。GRUBのようにサーバ
上のシステムをクライアントから読みに行く機能がこれらにあればいいのですが、
引き続き調べてみます。
 さて、組み込みLinuxというものが参考にならないかと思い、調べている過程で
http://homepage2.nifty.com/DenDen/linux/FAQ.htm#LinuxPPCprompt
中に

--------------------------------------------------------------

Q. Linux起動時の設定はどこでどうするの?
A. Linux起動時(LinuxPPC:と表示されている時)にカーネルへ渡すパラメータを設定することが出来ます。
カーネルのパラメータ自体はBootPrompt-HOWTOをご参照ください。
基本的には、コンソールをシリアルポートの1(ttyS0)に設定し、ルートファイルシステムがどこにあるかを指定すればよいと思います。例を示しますので、参考にしてください。

<例>
Linux/PPC load: root=/dev/sda2 console=ttyS0,9600
(ルートファイルシステムはSCSI ID:0のハードディスクの第2パーティション。コンソールはシリアルポート COM1)
Linux/PPC load: root=/dev/nfs nfsaddrs=202.aa.bb.cca:202.aa.bb.ccd nfsroot=202.aa.bb.ccd:/home/mbx/
(ルートファイルシステムはNFS 自分のアドレスは202.aa.bb.cca サーバのアドレスは202.aa.bb.ccd マウントポイントは202.aa.bb.ccdの/home/mbx/をルートとしてマウント

--------------------------------------------------------------
というくだりを見つけました。これはinitrdというものを用いており、
「カーネルロード時にルートファイルシステムをramdisk上に展開させ動作させています。」
とありましたから、GRUBのそれとはまた異なったDisklessの方式なのでしょう。
いまの段階ではこれを試すことと、nfsrootでなく起動CDにシステムを載せてみる
ことのふたつが現実的なものとして私が思いつける方法です。なにかお気づきの点が
ありましたらぜひアドバイスください。
 自分の知らなかった現状に端的に気づかせていただいたという点で、岩佐様に
いただいたご案内、たいへんありがたかったです。

--
田中 元 BYH01337@xxxxxxxxxxx