[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bfree-prj 124] HD からboot する方法
- To: BtronML <bfree-prj@iijnet.or.jp>
- Subject: [bfree-prj 124] HD からboot する方法
- From: masa <jnetwork@network.or.jp>
- Date: Sun, 11 Apr 1999 12:44:27 +0900
- Reply-To: bfree-prj@iijnet.or.jp
- Sender: owner-bfree-prj@iijnet.or.jp
まさです。
浪花さんの助言を受け入れ再編集しました。
もし以下の文章を読んで「分かりにくい」とか「もっと詳しく」
など指摘していただけると嬉しいです。
初心者の方歓迎です。
注意:あらかじめLinuxに慣れてないUSERへ.
本文に出てくるコマンド(writeboot、mkfs、statfs)を実行するときの注意
違うディレクトリにシェルスプリクトがある場合(POSIX/mkfs/statfs /dev/mkdir /system)
今いるディレクトリにシェルスプリクトがある場合(./statfs /dev/mkdir /system)
/sbinにシェルスプリクトを置いて実行する場合(statfs /dev/mkdir /system)
(/sbinに置くことによってすべてのディレクトリから実行できる。
1.B-Free OS をインストールするパーティションを確保します。
LinuxとBtronを一つのハードディスクにインストールする例を紹介します。
Linuxをインストールする途中にパーティションを編集する場面で以下のようにします。
/dev/hda1 Linux native
/dev/hda2 Linux swap
/dev/hda3 B-FreeOS boot
/dev/hda4 B-FreeOS sfs
2.B-Free OS のソースを落とします。
URL: ftp://www.sccs.chukyo-u.ac.jp/pub4/B-Free/pub/IBM-PC/ の下に、b-free-pc.xx.yy.zz.tar.gz という名前で入っていま
す。
(xx.yy.zz はバージョンです。値の大きいものが新しいバージョンです)
3.落としたファイル (tar + gzip ファイル) を適当なディレクトリで展開します。
tar xvzf<落としてきたファイル>
4.Make します。 boot ディレクトリに入り、make を実行します。
cd boot
make hd_image
boot ディレクトリに bootimage_hd というファイルができます。
5.ブートプログラムを変更します。
1.boot/toolディレクトリに入り、makeを実行します。
2.bootディレクトリに戻ります。
cd ..
3.writebootで4で作ったbootimage_hdにハードディスク情報を書き込みます。
writeboot -v -w >デバイス< >パーティション番号< >ブートイメージ<
例 tool/writeboot -v -w /dev/hda 3 bootimage_hd
すると、以下のようなメッセージが出力されます。
device: /dev/hda, partition: 3, bootimage: bootimage_hd
/dev/hda3
geometry:
heads: 128
cylinders: 621
sectors: 63
start:
heads: 0
cylinders: 610
sectors: 1
old geometry information:
cylinder 4
head 5
sector 6
old start CHS information:
cylinder 1
head 2
sector 3
geometry と start の各項目は、HD によって違っています。
make hd_image で作成した直後のブートイメージを指定すると、old geometry
information と old start DHS information は、この通りの値が出力されま
す。もし、違った値が出たら bootimage_hd がおかしいことが考えられます。
なお、writeboot を 1 回実行すると、この値は違った値が出力されます。
# 要するに、ブートイメージに書き込まれている値が出力されるわけです。
6.boot プログラム を HD に書き込みます。
5. で作成した boot プログラムを、あらかじめ確保しておいた boot 用の パーティションに書き込みます。
dd if=bootimage_hd of=/dev/hda3 または cp bootimage_hd /dev/hda3
7.kernel を make します。
kernel/BTRON/make ディレクトリに移動し、make コマンドを実行します。
cd kernel/BTRON/make
make
kernel/BTRON/make ディレクトリの下に btron というファイルができます。
8.ファイルシステム作成用のツールを make。
kernel/POSIX/mkfs にあるファイルシステム作成用のツールを make します。
cd kernel/POSIX/mkfs
make
kernel/POSIX/mkfs ディレクトリに mkfs と statfs というファイルがで きます。
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 というディレクトリだけがあるファイ ルシステムができます。
2.mkfs が成功したかを確認します。
statfs を実行してファイルシステムの中を覗いてみます。
./statfs /dev/hda4 dir /
ファイルシステムのトップディレクトリの中身が表示されます。
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 というファイルがあれば成功です。
11.boot パーティションから起動するための準備を行います。
lilo プログラムなどを使って、BTRON の boot パーティションから boot するように設定を変更します。
liloの設定はLinuxのパッケージやバージョンによって方法が異なるため直接的な方法を紹介します。
まずviエディタでetc/lilo.confを編集します。
vi /etc/lilo.conf
以下に意味を示します
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
とコマンドで打ちます。
12.boot します。
マシンを再起動します。
BTRON のブートパーティションを指定して、BTRON のブートプログラムを 実行させます。
ブートプログラムが起動すると、boot> というプロンプトを表示します。 ここで、B-Free OS が入っているパーティションを指定して
OS を立ち上 げます。
>boot hd 0 3
13.BTRON OS が起動すれば成功です!