2011年6月4日土曜日

obs600-04 CF_Boot とりあえず

前回 obs600-02 debootstrap で構成した、すっぴんなDebianをCFに移してCF Bootしてみたいと思います。
CFを装着。 ここでは【4GB】サンディスク Ultra 30MB/秒(200倍速) コンパクトフラッシュ (海外リテール品) SDCFH-004G で低価格なものを使っています。#安物で信頼性に難ありそうです。

(1) CF区画の作成
root@squeeze:〜# fdisk -l /dev/sda
Disk /dev/sda: 3 GB, 3996647424 bytes
128 heads, 63 sectors/track, 968 cylinders
Units = cylinders of 8064 * 512 = 4128768 bytes

   Device Boot      Start         End      Blocks   Id  System 
/dev/sda1   *           1         969     3906976    b  FAT32
Warning: Partition 1 does not end on cylinder boundary.                   
root@squeeze:〜# 

root@squeeze:〜# fdisk /dev/sda

   Device Boot      Start         End      Blocks   Id  System 
/dev/sda1               1         892     3596512   83  Linux
/dev/sda2             893         968      302400   82  Linux swap
Command (m for help): w
(2) CFのフォーマット
root@squeeze:〜# mke2fs -j /dev/sda1
root@squeeze:〜# tune2fs -c 0 -i 0 /dev/sda1
root@squeeze:〜# mkswap /dev/sda2
(3) すっぴんなDebianをCFに移す
root@squeeze:〜# mkdir -p /net/tiger
root@squeeze:〜# mount -t nfs 192.168.1.50:/dsk/hda11/OBS600 /net/tiger
root@squeeze:〜# mount /dev/sda1 /mnt
root@squeeze:〜# rsync -a tiger:/dsk/hda11/OBS600/Debian/nfs_squeeze/ /mnt
(4) 起動に必要な変更追加
root@squeeze:〜# rsync -auv /dev/ttyS* /mnt/dev
root@squeeze:〜# ls -l /mnt/dev/ttyS*
crw------- 1 root tty     4, 64 Jun  3 22:05 /mnt/dev/ttyS0
crw-rw---- 1 root dialout 4, 65 Jun  3 21:11 /mnt/dev/ttyS1
crw-rw---- 1 root dialout 4, 66 Jun  3 21:11 /mnt/dev/ttyS2
crw-rw---- 1 root dialout 4, 67 Jun  3 21:11 /mnt/dev/ttyS3

root@squeeze:〜# diff /etc/inittab /mnt/etc/inittab
root@squeeze:〜# grep T0 /mnt/etc/inittab
T0:23:respawn:/sbin/getty -L ttyS0 115200 vt100

root@squeeze:〜# cd /mnt
root@squeeze:/mnt# ls
bin   dev  home  lib64       media  opt   root  selinux  sys  usr
boot  etc  lib   lost+found  mnt    proc  sbin  srv      tmp  var
root@squeeze:/mnt# chroot ./ /bin/bash
root@squeeze:/# mount /proc

root@squeeze:〜# cat /etc/apt/sources.list
deb http://ftp.jp.debian.org/debian squeeze main
#deb http://security.debian.org/ squeeze/updates main
#deb ftp://ftp.plathome.co.jp/pub/OBS600/debian/squeeze ./

#必要そうなものをapt-getする
ping ftp.jp.debian.org
apt-get update
apt-get upgrade
apt-get install nfs-common
apt-get install dump
apt-get install rsync
apt-get install u-boot
apt-get install dselect
apt-get install openssh-client openssh-server

#後日こんなのも、つでにapt-getする
apt-get install ftp ftpd lftp ncftp
apt-get install patch
apt-get install make
apt-get install libncurses5-dev (make menuconfig)
apt-get install usbutils
apt-get install wireless-tools
apt-get install hostapd
apt-get install firmware-ralink
apt-get install bridge-utils
apt-get install zd1211-firmware
apt-get install cpp gcc    (hostapdコンパイル)
apt-get install libssl-dev (hostapdコンパイル)
apt-get install libnl-dev  (hostapdコンパイル)
apt-get install zip unzip

root@squeeze:〜# passwd root
root@squeeze:〜# useradd myuser
root@squeeze:〜# passwd myuser

root@squeeze:〜# cd
root@squeeze:〜# umount /proc
root@squeeze:〜# exit
exit
root@squeeze:/mnt# cd
root@squeeze:〜# umount /mnt
root@squeeze:〜# 
(5) uImage.initrd-cfboot でCF Boot
wget -N ftp://ftp.plathome.co.jp/pub/OBS600/0.5-RELEASE-20110407/powerpc-obs600/installation/uImage.initrd-cfboot
サイズとタイムスタンプ 2122882 Apr 15 01:33 uImage.initrd-cfboot

=> setenv bootargs root=/dev/sda1 rootdelay=15 console=ttyS0,115200
=> tftpboot 0x400000 192.168.1.70:uImage.initrd-cfboot
Waiting for PHY auto negotiation to complete.. done
ENET Speed is 100 Mbps - FULL duplex connection (EMAC0)
Using ppc_4xx_eth0 device
TFTP from server 192.168.1.70; our IP address is 192.168.1.29
Filename 'uImage.initrd-cfboot'.
Load address: 0x400000
Loading: *#################################################################
  #################################################################
  ###############
done
Bytes transferred = 2122882 (206482 hex)
=> bootm 0x400000
## Booting kernel from Legacy Image at 00400000 ...
   Image Name:   0.5-RELEASE-20110407-cfboot
   Created:      2011-04-14  14:28:31 UTC
   Image Type:   PowerPC Linux Multi-File Image (gzip compressed)
   Data Size:    2122818 Bytes =  2 MB
   Load Address: 00000000
   Entry Point:  00000000
   Contents:
      Image 0: 1694843 Bytes =  1.6 MB
      Image 1: 420055 Bytes = 410.2 kB
      Image 2: 7902 Bytes =  7.7 kB
   Verifying Checksum ... OK
## Loading init Ramdisk from multi component Legacy Image at 00400000 ...
## Flattened Device Tree from multi component Image at 00400000
   Booting using the fdt at 0x6045a4
   Uncompressing Multi-File Image ... OK
   Loading Ramdisk to 0fdfe000, end 0fe648d7 ... OK
Using OpenBlockS 600 machine description
Linux version 2.6.29 (root@obs600-official) (gcc version 4.2.3) #1 Wed Apr 13 16:46:11 JST 2011
Found initrd at 0xcfdfe000:0xcfe648d7
Zone PFN ranges:
  DMA      0x00000000 -> 0x00020000
  Normal   0x00020000 -> 0x00020000
  HighMem  0x00020000 -> 0x00040000
Movable zone start PFN for each node
early_node_map[1] active PFN ranges
    0: 0x00000000 -> 0x00040000
MMU: Allocated 1088 bytes of context maps for 255 contexts
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 260096
Kernel command line: root=/dev/sda1 rootdelay=15 console=ttyS0,115200
UIC0 (32 IRQ sources) at DCR 0xc0
UIC1 (32 IRQ sources) at DCR 0xd0
UIC2 (32 IRQ sources) at DCR 0xe0
PID hash table entries: 2048 (order: 11, 8192 bytes)
clocksource: timebase mult[6aaaab] shift[22] registered
Console: colour dummy device 80x25
Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
Memory: 1034884k/1048576k available (3292k kernel code, 12624k reserved, 148k data, 102k bss, 140k init)
Calibrating delay loop... 1196.03 BogoMIPS (lpj=2392064)
Mount-cache hash table entries: 512
net_namespace: 988 bytes
NET: Registered protocol family 16
bio: create slab  at 0
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
cfg80211: Using static regulatory domain info
cfg80211: Regulatory domain: US
 (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp)
 (2402000 KHz - 2472000 KHz @ 40000 KHz), (600 mBi, 2700 mBm)
 (5170000 KHz - 5190000 KHz @ 40000 KHz), (600 mBi, 2300 mBm)
 (5190000 KHz - 5210000 KHz @ 40000 KHz), (600 mBi, 2300 mBm)
 (5210000 KHz - 5230000 KHz @ 40000 KHz), (600 mBi, 2300 mBm)
 (5230000 KHz - 5330000 KHz @ 40000 KHz), (600 mBi, 2300 mBm)
 (5735000 KHz - 5835000 KHz @ 40000 KHz), (600 mBi, 3000 mBm)
cfg80211: Calling CRDA for country: US
NET: Registered protocol family 2
IP route cache hash table entries: 16384 (order: 4, 65536 bytes)
TCP established hash table entries: 65536 (order: 7, 524288 bytes)
TCP bind hash table entries: 65536 (order: 6, 262144 bytes)
TCP: Hash tables configured (established 65536 bind 65536)
TCP reno registered
NET: Registered protocol family 1
checking if image is initramfs...it isn't (no cpio magic); looks like an initrd
Freeing initrd memory: 410k freed
audit: initializing netlink socket (disabled)
type=2000 audit(0.604:1): initialized
highmem bounce pool size: 64 pages
Registering unionfs 2.5.7 (for 2.6.29.6)
msgmni has been set to 1000
alg: No test for stdrng (krng)
io scheduler noop registered
io scheduler anticipatory registered (default)
io scheduler deadline registered
io scheduler cfq registered
OBS600 LED driver v0.2
Push switch driver v0.1
Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled
serial8250.0: ttyS0 at MMIO 0xef600200 (irq = 26) is a 16550A
console [ttyS0] enabled
serial8250.0: ttyS1 at MMIO 0xef600300 (irq = 16) is a 16550A
brd: module loaded
PPC 4xx OCP EMAC driver, version 3.54
MAL v2 /plb/mcmal, 2 TX channels, 2 RX channels
RGMII /plb/opb/emac-rgmii@ef600b00 initialized with MDIO support
/plb/opb/emac-rgmii@ef600b00: input 0 in RGMII mode
eth0 (emac): not using net_device_ops yet
eth0: EMAC-0 /plb/opb/ethernet@ef600900, MAC 00:0a:85:04:19:9e
eth0: found Generic MII PHY (0x02)
/plb/opb/emac-rgmii@ef600b00: input 1 in RGMII mode
eth1 (emac): not using net_device_ops yet
eth1: EMAC-1 /plb/opb/ethernet@ef600a00, MAC 00:0a:85:04:99:9e
eth1: found Generic MII PHY (0x03)
Driver 'sd' needs updating - please use bus_type methods
f8000000.nor_flash: Found 1 x16 devices at 0x0 in 16-bit bank
 Amd/Fujitsu Extended Query Table at 0x0040
f8000000.nor_flash: CFI does not contain boot bank location. Assuming top.
number of CFI chips: 1
cfi_cmdset_0002: Disabling erase-suspend-program due to code brokenness.
cmdlinepart partition parsing not available
RedBoot partition parsing not available
Creating 7 MTD partitions on "f8000000.nor_flash":
0x000000000000-0x000003de0000 : "kernel + initrd"
0x000003de0000-0x000003e60000 : "user config area"
0x000003e60000-0x000007e60000 : "user program area"
0x000007e60000-0x000007ee0000 : "flat device tree"
0x000007ee0000-0x000007f60000 : "test program"
0x000007f60000-0x000007fa0000 : "u-boot env"
0x000007fa0000-0x000008000000 : "u-boot"
Initializing USB Mass Storage driver...
usbcore: registered new interface driver usb-storage
USB Mass Storage support registered.
dwc_otg: version 2.60a 22-NOV-2006
dwc_otg: Shared Tx FIFO mode
dwc_otg: Using DMA mode
dwc_otg dwc_otg.0: DWC OTG Controller
dwc_otg dwc_otg.0: new USB bus registered, assigned bus number 1
dwc_otg dwc_otg.0: irq 17, io mem 0x00000000
dwc_otg: Init: Port Power? op_state=1
dwc_otg: Init: Power Port (0)
usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
usb usb1: Product: DWC OTG Controller
usb usb1: Manufacturer: Linux 2.6.29 dwc_otg_hcd
usb usb1: SerialNumber: dwc_otg.0
usb usb1: configuration #1 chosen from 1 choice
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 1 port detected
mice: PS/2 mouse device common for all mice
i2c /dev entries driver
ibm-iic ef600400.i2c: using standard (100 kHz) mode
ibm-iic ef600500.i2c: using standard (100 kHz) mode
DS1340: I2C based RTC driver.
DS1340: found DS1340 on IBM IIC
Netfilter messages via NETLINK v0.30.
NET: Registered protocol family 17
registered taskstats version 1
Waiting 15sec before mounting root device...
usb 1-1: new high speed USB device using dwc_otg and address 2
usb 1-1: New USB device found, idVendor=0424, idProduct=2514
usb 1-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
usb 1-1: configuration #1 chosen from 1 choice
hub 1-1:1.0: USB hub found
hub 1-1:1.0: 4 ports detected
usb 1-1.1: new high speed USB device using dwc_otg and address 3
usb 1-1.1: New USB device found, idVendor=05e3, idProduct=0702
usb 1-1.1: New USB device strings: Mfr=0, Product=1, SerialNumber=0
usb 1-1.1: Product: USB Storage
usb 1-1.1: configuration #1 chosen from 1 choice
scsi0 : SCSI emulation for USB Mass Storage devices
scsi 0:0:0:0: Direct-Access     SanDisk  SDCFH-004G       0014 PQ: 0 ANSI: 0
sd 0:0:0:0: [sda] 7813120 512-byte hardware sectors: (4.00 GB/3.72 GiB)
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Assuming drive cache: write through
sd 0:0:0:0: [sda] 7813120 512-byte hardware sectors: (4.00 GB/3.72 GiB)
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Assuming drive cache: write through
 sda: sda1 sda2
sd 0:0:0:0: [sda] Attached SCSI disk
RAMDISK: Compressed image found at block 0
VFS: Mounted root (ext2 filesystem) on device 1:0.
Segmentation fault
Segmentation fault
Setting real-root-dev to sda1.
kjournald starting.  Commit interval 5 seconds
EXT3-fs: mounted filesystem with ordered data mode.
VFS: Mounted root (ext3 filesystem) readonly on device 8:1.
Trying to move old root to /initrd ... /initrd does not exist. Ignored.
Unmounting old root
Trying to free ramdisk memory ... okay
[prepare_namespace] Executing flashcfg...
[prepare_namespace] Finished executing flashcfg
Freeing unused kernel memory: 140k init
modprobe: FATAL: Could not load /lib/modules/2.6.29/modules.dep: No such file or directory

INIT: version 2.88 booting
Using makefile-style concurrent boot in runlevel S.
.udev/ already exists on the static /dev! ... (warning).
Starting the hotplug events dispatcher: udevd.
Synthesizing the initial hotplug events...done.
Waiting for /dev to be fully populated...done.
Activating swap...Adding 306424k swap on /dev/sda2.  Priority:-1 extents:1 across:306424k 
done.
Checking root file system...fsck from util-linux-ng 2.17.2
/dev/sda1: clean, 12377/224896 files, 115319/899128 blocks
done.
EXT3 FS on sda1, internal journal
Cleaning up ifupdown....
Setting up networking....
Loading kernel modules...done.
Activating lvm and md swap...done.
Checking file systems...fsck from util-linux-ng 2.17.2
done.
Mounting local filesystems...done.
Activating swapfile swap...done.
Cleaning up temporary files....
Configuring network interfaces...done.
Starting portmap daemon....
Starting NFS common utilities: statd failed!
Cleaning up temporary files....
Setting kernel variables ...done.
startpar: service(s) returned failure: nfs-common ... failed!
INIT: Entering runlevel: 2
Using makefile-style concurrent boot in runlevel 2.
Starting portmap daemon...Already running..
Starting NFS common utilities: statd failed!
Starting enhanced syslogd: rsyslogd.
Starting periodic command scheduler: cron.
Starting OpenBSD Secure Shell server: sshd.
startpar: service(s) returned failure: nfs-common ... failed!

Debian GNU/Linux 6.0 squeeze ttyS0

squeeze login: root
Password: 
Linux squeeze 2.6.29 #1 Wed Apr 13 16:46:11 JST 2011 ppc

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.
root@squeeze:〜# df
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/sda1              3540000    404812   2955364  13% /
tmpfs                   518252         0    518252   0% /lib/init/rw
udev                     10240        64     10176   1% /dev
tmpfs                   518252         0    518252   0% /dev/shm
root@squeeze:〜# uname -a
Linux squeeze 2.6.29 #1 Wed Apr 13 16:46:11 JST 2011 ppc GNU/Linux

root@squeeze:〜# dhclient eth0
eth0: link is up, 100 FDX, pause enabled
root@squeeze:〜# ifconfig -a eth0
eth0      Link encap:Ethernet  HWaddr 00:0a:85:04:19:9e  
          inet addr:192.168.1.29  Bcast:192.168.1.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:3 errors:0 dropped:0 overruns:0 frame:0
          TX packets:2 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:744 (744.0 B)  TX bytes:684 (684.0 B)
          Interrupt:25 

root@squeeze:〜# ping -c 2 www.google.com
PING www.l.google.com (66.249.89.99) 56(84) bytes of data.
64 bytes from nrt04s01-in-f99.1e100.net (66.249.89.99): icmp_req=1 ttl=53 time=30.5 ms
64 bytes from nrt04s01-in-f99.1e100.net (66.249.89.99): icmp_req=2 ttl=53 time=29.1 ms
root@squeeze:〜# 
すっぴんなDebianがCFからBootしました。いっぱいエラーがでてます。
Segmentation fault     does not exist. Ignored.
No such file or directory (warning)   failed!
まだ、とりあえず状態です。これらエラーを解消したり、
OBS600独自の/usr/sbin/runledや/usr/sbin/pshdのコピーはおいおい行います。
ここが自分ごのみのOpenBlockSにするスタート地点です。
--

0 件のコメント:

コメントを投稿