[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bfree-prj 162] HD からboot する方法のマニュアル
- To: BtronML <bfree-prj@iijnet.or.jp>
- Subject: [bfree-prj 162] HD からboot する方法のマニュアル
- From: masa <jnetwork@network.or.jp>
- Date: Thu, 29 Apr 1999 22:10:44 +0900
- Reply-To: bfree-prj@iijnet.or.jp
- Sender: owner-bfree-prj@iijnet.or.jp
少しの間さぼっていましたけど、また再開したいと思います。
HD から boot する方法
version 1.0
1997/11/18
内藤 隆一
打ち間違いを避ける為、カットアンドペーストをお薦めします。
注意 1:root権限でアクセスしていないUSERへ。
HD のパーティションにアクセスするコマンドは root 権限で実行しなければなりません。
具体的には
./tool/writeboot
dd(cp)
mkfs
statfs
lilo.conf の編集
lilo の実行
make だけはユーザー権限で実行できます。
注意 2:あらかじめLinuxに慣れてないUSERへ.
本文に出てくるコマンド(writeboot、mkfs、statfs)を実行するときの注意
違うディレクトリにコマンドがある場合(POSIX/mkfs/statfs /dev/hda4 mkdir /system)
今いるディレクトリにコマンドがある場合(./statfs /dev/hda4 mkdir /system)
/sbinにコマンドを置いて実行する場合(statfs /dev/hda4 mkdir /system)
(/sbinに置くことによってすべてのディレクトリから実行できる。
1.B-Free OS をインストールするパーティションを確保します。
LinuxとBtronを一つのハードディスクにインストールする例を紹介します。
Linuxをインストールする途中にパーティションを編集する場面(fdisk)で以下のように確保します。
パーティションの大きさはB-FreeOS Bootが1Mぐらい、B-FreeOS Sfsが1M(最低)20M(推奨).
パーティション システム ID
/hda1 LinuxOS native 83
/hda2 LinuxOS swap 82
/hda3 B-FreeOS Boot 70
/hda4 B-FreeOS Sfs 71
これは一つの例であって強制ではありません、例えばLinuxOS swapなしでもできますし、
1と2、3と4を入れ替えた設定もできます。すべてを入れ替えてもできると思います。
しかしこのマニュアルでは上の設定に従って説明しますので、
違った環境でインストールする方はその都度応用をきかせてください。
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<落としてきたファイル>
以下にインストールに使用するディレクトリを示します。
btron-pc---boot-----tool
|
--kernel---BTRON-make
|
--POSIX--mkfs
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コマンドはroot権限がないと実行できません。
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 に書き込みます。
注意:dd(cp)コマンドはroot権限がないと実行できません。
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コマンドはroot権限がないと実行できません。
mkfs(BTRON用)はすでに/sbinに同じ名前のmkfs(Linux用)があるため
間違いやすいので注意が必要です。
kernel/POSIX/mkfs を実行して、パーティションをフォーマットします。
./mkfs /dev/HDのパーティション ブロック数 ブロックサイズ I-node数
I-node数はそのパーティションのファイルの最大数です。ブロックサイズは無条件に512バイトを指定してください。
ブロック数の計算方法はパーティションのサイズ÷512で計算してください。fdiskを起動してpコマンドで情報が見れます。
そこに書いてあるBlock数は1024バイトで計算してあるのでB-Freeではこれの2倍の数字を設定してください。
例 ./mkfs /def/hda4 604800 512 1000
ここは300MB(かなり大きい)の例です。
mkfs を実行すると、superblock =数字, bitmap block = 数字, inode block = 数字と一行だけ表示されます。
5行表示されているとLinux用のmkfsが実行されていますのでコマンドを正確に打ち直してください
2.mkfs が成功したかを確認します。
statfs を実行してファイルシステムの中を覗いてみます。
注意:statfsコマンドはroot権限がないと実行できません。
./statfs /dev/hda4 dir /
実行すると
2 20666 0000 0000 . 60byte
2 20666 0000 0000 .. 60byte
2 20666 0000 0000 lost+found 40byte
lost+foundがあれば成功です。
10./systemディレクトリの制作
ファイルシステムを入れるためのディレクトリを制作します。
注意:statfsコマンドはroot権限がないと実行できません。
statfs /dev/hda4 mkdir /system
なにも表示されなければ成功です。次のコマンドで確かめてください。
statfs /dev/hda4 dir /
6 20666 0000 0000 . 80byte
6 20666 0000 0000 .. 80byte
2 20666 0000 0000 lost+found 40byte
3 20666 0000 0000 system 60byte
systemがあれば成功です。
11.B-Free OS をファイルシステムに入れます。
注意:statfsコマンドはroot権限がないと実行できません。
7. で作成した B-Free OS を新しく作ったファイルシステムの中にコピー します。
/system/btron386 という名前でコピーする必要があります。
cd kernel/BTRON/make
statfs /dev/hda4 write /system/btron386 btron
これで、/system ディレクトリの下に btron386 というファイルが作られ ます。
statfs /dev/hda4 dir /system を実行します。
3 20666 0000 0000 . 80byte
6 20666 0000 0000 .. 80byte
1 0666 0000 0000 lbtron386 323584byte
btron386 というファイルがあれば成功です。
12.boot パーティションから起動するための準備を行います。
注意:lilo.confの編集とiloコマンドの実行はroot権限がないとできません。
lilo プログラムなどを使って、BTRON の boot パーティションから boot できるように設定を変更しす。
liloの設定はLinuxのパッケージやバージョンによって方法が異なるため直接的な方法を紹介します。
まずviエディタでetc/lilo.confを編集します。
vi /etc/lilo.conf
以下に意味を示します。
書く順番は#Linuxより#Btronを先に書いてしまうと#Btronが強制的に
立ち上がってしまうので注意が必要です。
boot=/dev/hda #liloがインストールされている場所を表します。
#FDだと/dev/fd0 パーティション1だと/dev/hda1
delay=100 #liloの待ち時間です。ここでは10秒を意味します。delay=timeout
#Linux
image=/boot/vmlinux #Linuxカーネルの位置を指定します。
label=linux #起動時に入力する(linux)とOSが起動します。
root=/dev/hda1 #パーティションの位置を示しますl。
#Btron
other=/dev/hda3 #Linux以外のOSをliloに登録する場合に使います。
label=btron
table=/dev/hda #ohterのOSのパーティションテーブルの位置を指定します
vinの終了の方法はEscを押した後:wq(保存して終了)、Escの後に:q!(保存せずに終了)
さらに今編集したliloをアクティブにするため
lilo
とコマンドで打ちます。
13.boot します。
マシンを再起動します。
BTRON のブートパーティションを指定して、BTRON のブートプログラムを 実行させます。
例1 bios起動時に shift キーを押していると、liloのプロンプトが表示されます。その後にbtron(label名)を
入力すると起動します。label名を忘れた場合は、lilo の プロンプトで tab キーを押せば一覧が表示されます。
打ち間違えたりして指定した待ち時間が来ると最初に指定した方が立ち上がります。
例2 bios起動時にlilo の プロンプトが表示されます。 tab キーを押せば一覧が表示されます。ここで
B-Free OSが入っているパーティションを指定して OS を立ち上 げます。なにもせずに指定した待ち時間が
来ると最初に指定した方が立ち上がります。
ブートプログラムが起動すると、boot> というプロンプトを表示します。
14.BTRON OS が起動させます。
>boot ハードディスクから起動 ハードディスクの位置 パーティーションの位置
>boot hd 0 3
init>と表示されれば成功です。
B-Free オフィシャルホームページへ戻る
Copyright (C) 1996,1997 B-Free Project