BONA Light System に Linux のインストール。
BONA Light System(以下 LS)に Linux のインストール。インストール先のメディアは
CF(Compact Flash) である。
まず、 CD-ROM ドライブを接続し、 CF もスロットに挿した。 CD-ROM 起動を
行うので knoppix 日本語版の最新をダウンロードしてきた。
# wget ftp://ftp.dnsbalance.ring.gr.jp/archives/linux/knoppix/iso/knoppix_20040216-20040220.iso
CD-ROM に焼いて、この CD から起動するように LS の bios の変更をした。
LAN の口にケーブルを差し込んで、起動してみた。問題なく起動した。
遠隔操作できるように、knoppix で sshd の起動を行う。
[knoppix]# /etc/init.d/ssh start
ログインできるように toyota ユーザの追加。
[knoppix]# vi /etc/passwd
[knoppix]# vi /etc/shadow
[knoppix]# passwd toyota
[knoppix]# mkdir /home/toyota
[knoppix]# chown toyota /home/toyota
さらに su コマンドが実行できるように、root のパスワードなどの設定。
[knoppix]# passwd
[knoppix]# vi /etc/sudoers
これで、リモートから操作できるようになった。
CF のフォーマットを行う。まず、 CF のデバイス名を調べる。
[knoppix]# dmesg | grep -i hitachi
hdc: Hitachi XXM2.3.0, CFA DISK drive
なので、ターゲットは hdc である(本当は日立製ではなく、 RENESAS 製なんだけど…)。
現在の状態を調べてみる。
[knoppix]# fdisk -l /dev/hdc
Disk /dev/hdc: 64 MB, 64094208 bytes
4 heads, 32 sectors/track, 978 cylinders
Units = シリンダ数 of 128 * 512 = 65536 bytes
デバイス Boot Start End Blocks Id System
/dev/hdc1 * 1 978 62576 6 FAT16
これを Linux の領域として確保して、 boot フラグも付ける。fdisk
コマンドを使用して、領域の変更をした。
[knoppix]# fdisk /dev/hdc
で、こうなった。
[knoppix]# fdisk -l /dev/hdc
Disk /dev/hdc: 64 MB, 64094208 bytes
4 heads, 32 sectors/track, 978 cylinders
Units = シリンダ数 of 128 * 512 = 65536 bytes
デバイス Boot Start End Blocks Id System
/dev/hdc1 * 1 978 62576 83 Linux
mke2fs の実行。
[knoppix]# mke2fs /dev/hdc1
mke2fs 1.35-WIP (31-Jan-2004)
Filesystem label=
OS type: Linux
Block size=1024 (log=0)
Fragment size=1024 (log=0)
15680 inodes, 62576 blocks
3128 blocks (5.00%) reserved for the super user
First data block=1
8 block groups
8192 blocks per group, 8192 fragments per group
1960 inodes per group
Superblock backups stored on blocks:
8193, 24577, 40961, 57345
Writing inode tables: done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 29 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
tune2fs の実行。その前に、現在の設定を調べる。
[knoppix]# tune2fs -l /dev/hdc
tune2fs 1.35-WIP (31-Jan-2004)
Filesystem volume name:
Last mounted on:
Filesystem UUID: f9709523-82fd-40d0-96af-c5ffdc6d53bd
Filesystem magic number: 0xEF53
Filesystem revision #: 1 (dynamic)
Filesystem features: filetype sparse_super
Default mount options: (none)
Filesystem state: clean
Errors behavior: Continue
Filesystem OS type: Linux
Inode count: 15680
Block count: 62592
Reserved block count: 3129
Free blocks: 60592
Free inodes: 15669
First block: 1
Block size: 1024
Fragment size: 1024
Blocks per group: 8192
Fragments per group: 8192
Inodes per group: 1960
Inode blocks per group: 245
Filesystem created: Sat Apr 3 15:19:58 2004
Last mount time: n/a
Last write time: Sat Apr 3 15:20:36 2004
Mount count: 0
Maximum mount count: -1
Last checked: Sat Apr 3 15:19:58 2004
Check interval: 0 ()
Reserved blocks uid: 0 (user root)
Reserved blocks gid: 0 (group root)
First inode: 11
Inode size: 128
Default directory hash: tea
Directory Hash Seed: 40552cb6-e322-4e82-aaf4-920620b8f767
う〜ん。Maximum mount count が -1 ってどんな設定なのだろう。0 だったら、
チェックする最大マウント回数を無視するようなのだけど。調べても、よく
わからないし。これを 0 にしようか悩んだけど、とりあえず、このままで
tune2fs コマンドから値の変更を行わないことにした。
[knoppix]# mount /dev/hdc1 /mnt/hdc1
マウントは問題なし。lilo.conf の作成をする。
下のような感じ。
# /etc/lilo.conf
boot=/dev/hdc
vga=normal
delay=10
image=/vmlinuz
root=/dev/hdc1
label=linux
read-write
作成した lilo.conf をコピーして、 lilo のインストール。
[knoppix]# cp lilo.conf /mnt/hdc1/etc/
[knoppix]# /sbin/lilo -v -r /mnt/hdc1
Warning: root at /mnt/hdc1 has no /dev directory
LILO version 22.5.8, Copyright (C) 1992-1998 Werner Almesberger
Development beyond version 21 Copyright (C) 1999-2003 John Coffman
Released 10-Oct-2003, and compiled at 16:48:46 on Feb 13 2004
Debian GNU/Linux
Fatal: stat /dev/hdc: No such file or directory
なんか、出たけど、見なかったことに。K7-DDR[kashyyyk] マシンで、簡単な
(モジュールを使わない) kernel を作成をして、LS にコピーし、起動してみた。
〜LS の kernel 作成〜
LS 用に kernel を作成した。NIC 周りは RTL8139 を選択すれば良いのだが、
問題は付属している無線 LAN のユニット。これは USB で接続されているので、
かなり厄介である。
試しに、この無線 LAN のユニットを接続して knoppix で起動してみたのだが、
途中で止まってしまった。やはり、一筋縄ではいかないようである。
調べた結果、チップは ATMEL の AT76C503A であり、このドライバは
http://atmelwlandriver.sourceforge.net/downloads.html
で発見して、早速 kernel にインストールしようと思ったのだけど、どうも
/usr/src の下を探しに行っていたり、 PC CARD 用のドライバを入れようと
していたり、なんとなく気持ちが悪い。解析して patch を作成しようとしたが、
時間がかかりそうなので、とりあえず、放置することにした。
|
|
LS が起動せずに、うんともすんとも言わなくなってしまった。 lilo の
インストールに失敗したようである。仕方が無いので、もう一度やってみる。
調べてみると、 lilo -r では一度 chroot をしているようであるので、
/dev 周りを少し作ってみた。
[knoppix]# cd /mnt/hdc1/dev
[knoppix]# mknod null c 1 3
[knoppix]# mknod zero c 1 5
[knoppix]# mknod hdc b 22 0
[knoppix]# mknod hdc1 b 22 1
これで再び lilo のインストール。
[knoppix]# lilo -v -r /mnt/hdc1
LILO version 22.5.8, Copyright (C) 1992-1998 Werner Almesberger
Development beyond version 21 Copyright (C) 1999-2003 John Coffman
Released 10-Oct-2003, and compiled at 16:48:46 on Feb 13 2004
Debian GNU/Linux
Warning: LBA32 addressing assumed
Reading boot sector from /dev/hdc
Fatal: creat /boot/boot.1600: No such file or directory
う〜ん。 create じゃなくて creat なのは何でだろう…。気にせずに、
ディレクトリの作成。
[knoppix]# mkdir /mnt/hdc1/boot
これで、もう一度。
[knoppix]# lilo -v -r /mnt/hdc1
LILO version 22.5.8, Copyright (C) 1992-1998 Werner Almesberger
Development beyond version 21 Copyright (C) 1999-2003 John Coffman
Released 10-Oct-2003, and compiled at 16:48:46 on Feb 13 2004
Debian GNU/Linux
Warning: LBA32 addressing assumed
Reading boot sector from /dev/hdc
Backup copy of master disk volume ID record in /boot/boot.1600
Using MENU secondary loader
Calling map_insert_data
Boot image: /vmlinuz
Added linux *
Writing boot sector.
/boot/boot.1600 exists - no boot sector backup copy made.
なんとなく、うまくいった感じがする。これで、起動してみた。うまく起動した。
kernel も走って、無事に(?) kernel が panic を起こした。
Warning: unable to open an initial consolr.
Kernel panic: No init found. Try passing init= option to kernel.
こんな感じで。さて、これから initrd の作成。と、思ったが、明日にする。
|