[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bfree-prj 125] Re: HD からbootする方法



きしだです

 :まさです。
 :浪花さんの助言を受け入れ再編集しました。
 :
 :もし以下の文章を読んで「分かりにくい」とか「もっと詳しく」
 :など指摘していただけると嬉しいです。

今ごろ要望を出して、すいません。
前回のmailの時に指摘事項も説明しとけば良かったです。
ちなみにの部分は私のハマッタ恥ずかしい部分です。
2人めのハマリ人が出ないように追記しておきます。

 :    8.ファイルシステム作成用のツールを make。
 :        kernel/POSIX/mkfs にあるファイルシステム作成用のツールを make します。 
 :                cd kernel/POSIX/mkfs
 :                make 
 :        kernel/POSIX/mkfs ディレクトリに mkfs と statfs というファイルがで きます。 

このプログラム、linuxの持っている ext2fs 用の物と同じな前なので、紛らわしいです。
自分は btron-mkfs とリネームして /usr/local/bin か ~/bin に突っ込んでいます。
(statfsも同じく)
このあたりは cvs の設定ファイルも含めて一通り ~/bin に入れるとわかり良いと思います。
    (cvs update する為 btron-getとか作った)

 :    9.ファイルシステムの作成。
 :        あらかじめ準備しておいた B-Free OS のファイルシステム用のパーティショ ンに B-Free OS のファイルシステムを構築します。 
 :            1.mkfs を実行します。
 :                mkfs(BTRON用)はすでに/sbinに同じ名前のmkfs(Linux用)があるため
 :                間違いやすいので注意が必要です。
 :                kernel/POSIX/mkfs を実行して、パーティションをフォーマットします。 
 :                ./mkfs /dev/HDのパーティション ブロック数 ブロックサイズ I-node数
 :                I-node数とはそのパーティションのファイルの最大数を表わします。ブロックサイズは無条件に512を指定してください。
 :                ブロック数の計算方法はパーティションのサイズ÷512で計算してください。fdiskを起動してpコマンドで情報が見れます。
 :                例 ./mkfs /def/hda4 604800 512 1000
 :                mkfs を実行すると、/lost+found というディレクトリだけがあるファイ ルシステムができます。 

ファイルシステム作成時にはroot権限が必要なはずです。
#と$で書き分ければわかりやすいと思います。

 :            2.mkfs が成功したかを確認します。
 :                statfs を実行してファイルシステムの中を覗いてみます。 
 :                        ./statfs /dev/hda4 dir / 
 :                ファイルシステムのトップディレクトリの中身が表示されます。 

ちなみに root 権限のない時も実行出来、嘘の表示が出ます。
自分は最初これにひっかかりました。(なんで出来てないのかとちょっと悩んだ)
root権限はずーっと持って仕事するものではない(と教えられた)ので、直前に
logoutしてしまったのがはまった原因です。

プログラム修正してチェックルーチンを入れてみるのも良いと思います。

 :  10.B-Free OS をファイルシステムに入れます。
 :        7. で作成した B-Free OS を新しく作ったファイルシステムの中にコピー します。/system/btron386 という名前でコピーする必要
 :        があります。 
 :                cd kernel/BTRON/make
 :                statfs /dev/hda4 mkdir /system
 :                statfs /dev/hda4 write /system/btron386 btron 
 :        これで、/system ディレクトリの下に btron386 というファイルが作られ ます。 
 :                statfs コマンド statfs /dev/hda4 dir /system を実行して、btron386 というファイルがあれば成功です。 

ちなみに書込みに失敗した場合はmkfsからやり直した方が良いようです。

たぶん打ち間違いとか色々あるとは思います。
そんな場合は訳がわからなくなってパニックになりかねません。(特に初めての人は)
無理やり進めるより最初からやった方がすんなり進みますので、tipsとして回避方法や、
やり直し手順(どこまで戻れば直る)をlink先に書いておくと良いと思います。

 :  11.boot パーティションから起動するための準備を行います。
 :        lilo プログラムなどを使って、BTRON の boot パーティションから boot するように設定を変更します。
 :        liloの設定はLinuxのパッケージやバージョンによって方法が異なるため直接的な方法を紹介します。
 :        まずviエディタでetc/lilo.confを編集します。
 :        vi /etc/lilo.conf

打ち間違いを避ける為、web page のカットアンドペーストをお薦めします。
で、その時に全角文字が含まれると旨く行きません。
コマンドは全部半角にするのが良いと思います(たぶん、チェック漏れだと思いますが)

出来上がったら、順に動かしてみるのを手伝いましょうか?
必要なら言ってください。

 :        以下に意味を示します
 :        boot=/dev/hda-------liloがインストールされている場所を表します。FDだと/dev/fd0 パーティション1だと/dev/hda1
 :        delay=100-----------liloが起動するまでの待ち時間です。ここでは10秒を意味します。delay=timeout
 :        image=/boot/vmlinux-Linuxカーネルの位置を指定します。
 :        label=linux----------起動時に入力するとOSが起動します。起動時にTabを押すとラベルの一覧がでます。
 :        root=/dev/hda1------パーティションの位置を示しますl。
 :        other=/dev/hda3-----Linux以外のOSをliloに登録する場合に使います。
 :        label=btron
 :        table=/dev/hda------ohterのOSのパーティションテーブルの位置を指定します
 :        vi初心者の方へ 終了の方法はEscを押した後:wq(保存して終了)、Escの後に:q!(保存せずに終了)
 :        さらに今編集したliloをアクティブにするため
 :        lilo
 :        とコマンドで打ちます。

ちなみに linuxの後に書くことを注意したほうがいいです。
最初にある方が優先で立ち上がります。
デバッグ中の物を最初に書くと、とほほな状態になります。
    (デバッグしてくれと言わんばかりなのが悲しい)

 :  12.boot します。
 :        マシンを再起動します。 
 :        BTRON のブートパーティションを指定して、BTRON のブートプログラムを 実行させます。 
 :        ブートプログラムが起動すると、boot> というプロンプトを表示します。 ここで、B-Free OS が入っているパーティションを指定して
 :        OS を立ち上 げます。 
 :        >boot hd 0 3
 :  13.BTRON OS が起動すれば成功です! 

bios起動時に shift キーを押していると、liloのプロンプトが出ます。
その後 btron(label名)を入力すると起動します
label名を忘れた場合は、lilo の プロンプトで tab キーを押せば一覧が表示されます。
ちなみに、打ち間違えたりして指定した待ち時間が来ると最初に指定した方が
立ち上がります。

ps.
コメントに間違いがあったらご指摘下さい。よろしくお願いいたします。
---------------------------------------------------------------------------
きしだまさみ
mailto:mkishida@fecsi.furuno.co.jp
---------------------------------------------------------------------------