Mar 11, 2005

             onlsbc1, Debian Sarge のブート
          			---  Sarge インストール #4
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
               (http://www-online.kek.jp/~inoue/para-CAMAC/
                                   Work/SBC-Linux54.html)



                        高エネルギー加速器研究機構
                            素粒子原子核研究所
                         物理、オンライングループ
                                井上 栄二

        目的

	    CC/NET コンパクトフラッシュLinuxシステムを USBハードディスクから
	    ブートする。

        項目
        (1). USBブートの検討
        (2). CC/NETコンパクトフラッシュLinuxをUSBデバイスに装着
        (3). /etc/fstab の修正
        (4). USBブート用のカーネル、initrdを配置
        (5). 起動


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

 (1). USBブートの検討

	CC/NET コンパクトフラッシュLinuxシステム(Sarge版) のUSBブートの検討をす
	る。 方法は、CC/NET コンパクトフラッシュLinuxシステム(Sarge版)をインス
	トールした 1.0GBのメディアを、USB-コンパクトフラッシュ変換アダプタに挿し
	てCC/NETのUSBポートに接続する。 起動に使うカーネルおよび initrdイメージ
	はCC/NET本体に実装されているコンパクトフラッシュ上に配置する。 GRUBを	
	使ってこのカーネルおよび initrdイメージを実行させることで USBブートを
	実現する。 したがって、CC/NET で USBブート行うための作業は起動時に使用
	するカーネルおよび initrdイメージの構築が中心になる。


 (2). CC/NETコンパクトフラッシュLinuxをUSBデバイスに装着

	CC/NETコンパクトフラッシュLinuxがインストールしてある1GB のメディアを
	USB-コンパクトフラッシュ変換アダプタに装着する。 このメディアの中の/boot
	下の initrdファイルを取り出して作業領域に展開する。

	追加すべきファイルを、展開したディレクトリに追加し、適切なファイル修正を
	行う。

	追加、修正が完了したら元のようなイメージにしておく。


 (3). /etc/fstab の修正

onlsbc1:/home/inoue# df -k
Filesystem           1K-ブロック    使用   使用可 使用% マウント位置
/dev/hda2              9621880   1012032   8121072  12% /
tmpfs                   152832         0    152832   0% /dev/shm
/dev/sda1               938008    619401    268562  70% /mnt
onlsbc1:/home/inoue#
onlsbc1:/home/inoue# cat /mnt/etc/fstab
# /etc/fstab: static file system information.
#
#                
proc            /proc           proc    defaults        0       0
#/dev/hdc1       /               ext2    defaults,errors=remount-ro 0       1
#/dev/hdc1       /               ext3    defaults,errors=remount-ro 0       1
/dev/sda1       /               ext3    defaults,errors=remount-ro 0       1
/dev/fd0        /media/floppy0  auto    rw,user,noauto  0       0
onlsbc1:/home/inoue#

	これで、起動時に USBデバイスをマウントできるようになる。
	さらに、GRUBが適切なカーネル、initrdイメージを起動するように修正する。
	
	作業領域に出来上がったUSBブート用のカーネル、initrd、および menu.lst を 
	tarファイルにして onlparaマシンにアップロードする。

onlsbc1:/mnt/home/inoue/USBboot# tar cf ccnet-usb.tar initrd-2.4.25-1-386USB.img
 vmlinuz-2.4.25-1-386 menu.lst
onlsbc1:/mnt/home/inoue/USBboot#
onlsbc1:/mnt/home/inoue/USBboot# gzip ccnet-usb.tar
onlsbc1:/mnt/home/inoue/USBboot#
onlsbc1:/mnt/home/inoue/USBboot# ls -l
total 19188
-rw-r--r--   1 root root 5509569 Mar 10 15:44 ccnet-usb.tar.gz
-rw-r--r--   1 root root 4714496 Mar 10 10:23 initrd-2.4.25-1-386USB
-rw-r--r--   1 root root 4707303 Mar 10 10:23 initrd-2.4.25-1-386USB.img
-rw-r--r--   1 root root 3846144 Mar  9 14:54 initrd.img-2.4.25-1-386
-rw-r--r--   1 root root    3486 Mar 10 15:42 menu.lst
-rw-r--r--   1 root root  808860 Mar  9 14:55 vmlinuz-2.4.25-1-386
onlsbc1:/mnt/home/inoue/USBboot#

onlsbc1:/mnt/home/inoue/USBboot# cp ccnet-usb.tar.gz /mnt1/root/USBboot
onlsbc1:/mnt/home/inoue/USBboot#
onlsbc1:/mnt/home/inoue/USBboot# ls -l /mnt1/root/USBboot
total 5400
-rw-r--r--  1 4294967294 4294967294 5509569 Mar 10 15:24 ccnet-usb.tar.gz
onlsbc1:/mnt/home/inoue/USBboot#

	onlgwマシンにもアップロードしておく。

onlsbc1:/mnt/home/inoue/USBboot# scp ccnet-usb.tar.gz inoue@onlgw:/home/inoue/pu
blic_html/Parallel-CAMAC/kits
inoue@onlgw's password:
ccnet-usb.tar.gz                              100% 5380KB   2.6MB/s   00:02
onlsbc1:/mnt/home/inoue/USBboot#


 (4). USBブート用のカーネル、initrdを配置

	USBブート用のカーネル、およびinitrdを CC/NETに実装しているコンパクト
	フラッシュのメディアに配置する。

        CC/NETコンパクトフラッシュLinuxがインストールしてある1GB のメディアを
        USB-コンパクトフラッシュ変換アダプタに装着し、CC/NET の USBポートに接続
	する。

onlsun4[39]% ssh toyo@onlsbc1
Password:
Linux onlsbc1 2.4.25-1-386 #2 Wed Apr 14 19:38:08 EST 2004 i686 GNU/Linux
Last login: Thu Mar 10 14:47:27 2005
toyo@onlsbc1:~$
toyo@onlsbc1:~$ su
Password:
onlsbc1:/home/toyo# df -k
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/hdc1               985160    656768    278348  71% /
tmpfs                   152828         0    152828   0% /dev/shm
onlsbc1:/home/toyo#
onlsbc1:/home/toyo# mount -t ext3 /dev/sda1 /mnt
onlsbc1:/home/toyo# df -k
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/hdc1               985160    656768    278348  71% /
tmpfs                   152828         0    152828   0% /dev/shm
/dev/sda1               938008    619557    268406  70% /mnt
onlsbc1:/home/toyo#

	onlgwマシンから USBブート用のカーネル、および initrdファイルを入手する。

onlsbc1:/home/toyo# pwd
/home/toyo
onlsbc1:/home/toyo# scp inoue@onlgw:/home/inoue/public_html/Parallel-CAMAC/kits/
ccnet-usb.tar.gz .
inoue@onlgw's password:
ccnet-usb.tar.gz                              100% 5380KB   5.3MB/s   00:01
onlsbc1:/home/toyo#
onlsbc1:/home/toyo# tar xzf ccnet-usb.tar.gz
onlsbc1:/home/toyo# ls -l
total 10824
drwxr-xr-x  2 1003 toyo    4096 Sep 13 16:29 camac
-rw-r--r--  1 root root 5509569 Mar 10 15:46 ccnet-usb.tar.gz
drwxr-xr-x  2 1003 toyo    4096 Aug 25  2003 check
-rw-r--r--  1 root root 4707303 Mar 10 10:23 initrd-2.4.25-1-386USB.img
-rw-r--r--  1 root root    3486 Mar 10 15:42 menu.lst
drwxr-xr-x  3 1003 toyo    4096 Sep 15 14:04 public_html
drwxr-xr-x  2 1003 toyo    4096 Sep 13 16:41 remote-camac
-rw-r--r--  1 root root  808860 Mar  9 14:55 vmlinuz-2.4.25-1-386
onlsbc1:/home/toyo#

	menu.lst ファイルを入れ替える。

onlsbc1:/home/toyo# mv /boot/grub/menu.lst /boot/grub/menu.lst-org
onlsbc1:/home/toyo# cp menu.lst /boot/grub
onlsbc1:/home/toyo#
onlsbc1:/home/toyo# ls -l /boot/grub/menu*
-rw-r--r--  1 root root 3486 Mar 10 15:49 /boot/grub/menu.lst
-rw-r--r--  1 root root 3106 Sep 17 16:16 /boot/grub/menu.lst-org
onlsbc1:/home/toyo#

	USB-コンパクトフラッシュ変換アダプタに接続してある 1GBのメディアのファイ
	ルシステムの /etc/fstabファイルを修正する。

onlsbc1:/home/toyo# df -k
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/hdc1               985160    667568    267548  72% /
tmpfs                   152828         0    152828   0% /dev/shm
/dev/sda1               938008    619557    268406  70% /mnt
onlsbc1:/home/toyo#
onlsbc1:/home/toyo# vi /mnt/etc/fstab
# /etc/fstab: static file system information.
#
#                

proc            /proc           proc    defaults        0       0
#/dev/hdc1       /               ext2    defaults,errors=remount-ro 0       1
#/dev/hdc1       /               ext3    defaults,errors=remount-ro 0       1
/dev/sda1       /               ext3    defaults,errors=remount-ro 0       1
/dev/fd0        /media/floppy0  auto    rw,user,noauto  0       0
~
~
onlsbc1:/home/toyo#


 (5). 起動

	CC/NETコンパクトフラッシュLinuxシステムをリブートする。 

onlsbc1:/home/toyo# reboot

Broadcast message from root (pts/1) (Thu Mar 10 16:02:15 2005):

The system is going down for reboot NOW!
			:
			:

	システムが立ち上がるのに数分かかる。 USB1.0 のせいかな。

onlsun4[49]% ssh toyo@onlsbc1
Password:
Linux onlsbc1 2.4.25-1-386 #2 Wed Apr 14 19:38:08 EST 2004 i686 GNU/Linux

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.

Last login: Fri Mar  4 17:35:02 2005
toyo@onlsbc1:~$
toyo@onlsbc1:~$ df -k
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/sda1               938008    620021    267942  70% /
tmpfs                   152828         0    152828   0% /dev/shm
toyo@onlsbc1:~$

	ok.   USBデバイス上の CC/NETコンパクトフラッシュLinuxシステムが、立ち上
	がった。

	参考:
	  USBデバイス上のシステムではなく、出荷時に実装されているコンパクト
	  フラッシュ上のシステムを立ち上げるように戻したい場合には、以下の手順
	  を行う。

	  # mount -t ext3 /dev/hdc1 /mnt
	    # mv /mnt/boot/grub/menu.lst /mnt/boot/grub/menu.lst-usb
	    # mv /mnt/boot/grub/menu.lst-org /mnt/boot/grub/menu.lst
	  # reboot

	    



---xxxx