まず最初は LS-WSGL
BUFFALO INC. LinkStation series LS-WSGL-EM678 login: root login[1187]: root login on `ttyS0' BusyBox v1.1.1 (2008.11.04-08:25+0000) Built-in shell (ash) Enter 'help' for a list of built-in commands. #
# ls /mnt array1 authtest disk2 msdfs_root usbdisk1 array2 disk1 etc ram # mount /dev/sda6 /mnt/disk1/ XFS mounting filesystem sda6 # cd /mnt/disk1/share/hackkit/ # ls LS-WSGL_hackkit_step1_0.02.sh hackkit_081122.tar.gz hackkit_001.sh mkimage #
# sh hackkit_001.sh hackkit_003.sh: hackkit_001.sh: 79: Syntax error: "}" unexpected (expecting "then") #がー。
まあ、最初はそんなもの。
[yasunari@giga unified]$ diff -u hackkit_001.sh hackkit_010.sh --- hackkit_001.sh 2008-12-03 21:30:01.000000000 +0900 +++ hackkit_010.sh 2008-12-05 22:32:34.000000000 +0900 @@ -51,6 +51,11 @@ # / のマウント mount_root() { + if [ $MACHINE = LSWSGL ] + then + echo building md... + /etc/init.d/startSysMd.sh + fi echo mounting root file system ... if [ ! -d $MOUNTPOINT ] @@ -61,6 +66,7 @@ if [ $MACHINE = LSWSGL ] then + mkdir $MOUNTPOINT/.buffalo mv $MOUNTPOINT/lib/modules $MOUNTPOINT/.buffalo rm -fr $MOUNTPOINT/* @@ -68,8 +74,6 @@ mv $MOUNTPOINT/.buffalo/modules $MOUNTPOINT/lib rmdir $MOUNTPOINT/.buffalo - mkdir $MOUNTPOINT/mnt/disk1 - mkdir $MOUNTPOINT/mnt/disk2 fi } #--------------------------------------------------------- @@ -80,6 +84,19 @@ cd $MOUNTPOINT tar zxvf $HACKKIT + + # must be in an archive + mknod $MOUNTPOINT/dev/rtc c 10 135 + + if [ $MACHINE = LSWSGL ] + then + mkdir $MOUNTPOINT/mnt/disk1 + mkdir $MOUNTPOINT/mnt/disk2 + + mknod $MOUNTPOINT/dev/md0 b 9 0 + mknod $MOUNTPOINT/dev/md1 b 9 1 + mknod $MOUNTPOINT/dev/md10 b 9 10 + fi } #--------------------------------------------------------- @@ -524,9 +541,9 @@ edit_initrd() { echo editing initrd ... - dd if=/boot/initrd.buffalo of=/boot/initrd.gz bs=64 skip=1 - echo gunziping /boot/initrd.gz ... - gunzip /boot/initrd.gz + dd if=$MOUNTPOINT/boot/initrd.buffalo of=$MOUNTPOINT/boot/initrd.gz bs=64 skip=1 + echo gunziping $MOUNTPOINT/boot/initrd.gz ... + gunzip $MOUNTPOINT/boot/initrd.gz if [ ! -d /tmp/root ] then mkdir /tmp/root || exit @@ -540,7 +557,7 @@ fi done - mount -o loop /boot/initrd /tmp/root || exit + mount -o loop $MOUNTPOINT/boot/initrd /tmp/root || exit mv /tmp/root/linuxrc /tmp/root/linuxrc.orig if [ $MACHINE = LSWSGL ] then @@ -551,16 +568,6 @@ echo "---- in hackkit linuxrc ---" -exit 0 -EOF - else - cat > linuxrc <<EOF -#!/bin/sh - -export PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin:/usr/local/sbin - -echo "---- in hackkit linuxrc ---" - mount proc /proc -t proc mount sysfs /sys -t sysfs @@ -575,18 +582,29 @@ umount -a exit 0 EOF + else + cat > /tmp/root/linuxrc <<EOF +#!/bin/sh + +export PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin:/usr/local/sbin + +echo "---- in hackkit linuxrc ---" + +exit 0 +EOF + fi chmod 700 /tmp/root/linuxrc umount /tmp/root - echo gziping /boot/initrd ... wait 5 minutes - gzip /boot/initrd || exit + echo gziping $MOUNTPOINT/boot/initrd ... wait 5 minutes + gzip $MOUNTPOINT/boot/initrd || exit chmod 755 $WORK/mkimage chown root.root $WORK/mkimage - $WORK/mkimage -A ARM -O Linux -T ramdisk -C gzip -a 0x00000000 -e 0x00000000 -n initrd -d /boot/initrd.gz $MOUNTPOINT/boot/initrd.buffalo + $WORK/mkimage -A ARM -O Linux -T ramdisk -C gzip -a 0x00000000 -e 0x00000000 -n initrd -d $MOUNTPOINT/boot/initrd.gz $MOUNTPOINT/boot/initrd.buffalo - rm -f /boot/initrd.gz + rm -f $MOUNTPOINT/boot/initrd.gz } #--------------------------------------------------------- @@ -624,7 +642,7 @@ case "$PRODUCTID" in 0x00000009) MACHINE=LSGL - # 各パーティションのフォーマット + # 各パーティションのフォーマット(LS-WSGL 以外) format_disk # / のマウント mount_root @@ -656,7 +674,7 @@ # /boot のマウント mount_boot - # /boot のコピー + # /boot のコピー(LS-WSGL 以外) copy_boot # initrd の編集 edit_initrd @@ -666,7 +684,7 @@ 0x0000000A) MACHINE=HSDHGL - # 各パーティションのフォーマット + # 各パーティションのフォーマット(LS-WSGL 以外) format_disk # / のマウント mount_root @@ -698,7 +716,7 @@ # /boot のマウント mount_boot - # /boot のコピー + # /boot のコピー(LS-WSGL 以外) copy_boot # initrd の編集 edit_initrd @@ -713,7 +731,7 @@ 0x0000000E) MACHINE=LSHGL - # 各パーティションのフォーマット + # 各パーティションのフォーマット(LS-WSGL 以外) format_disk # / のマウント mount_root @@ -745,7 +763,7 @@ # /boot のマウント mount_boot - # /boot のコピー + # /boot のコピー(LS-WSGL 以外) copy_boot # initrd の編集 edit_initrd @@ -755,7 +773,7 @@ 0x0000000F) MACHINE=LSCL - # 各パーティションのフォーマット + # 各パーティションのフォーマット(LS-WSGL 以外) format_disk # / のマウント mount_root @@ -787,7 +805,7 @@ # /boot のマウント mount_boot - # /boot のコピー + # /boot のコピー(LS-WSGL 以外) copy_boot # initrd の編集 edit_initrd @@ -803,8 +821,8 @@ SWAPPARTITION=/dev/md10 DATAPARTITION="" - # 各パーティションのフォーマット - format_disk + # 各パーティションのフォーマット(LS-WSGL 以外) + # format_disk # / のマウント mount_root # アーカイブの展開 @@ -835,8 +853,8 @@ # /boot のマウント mount_boot - # /boot のコピー - copy_boot + # /boot のコピー(LS-WSGL 以外) + # copy_boot # initrd の編集 edit_initrd # /boot のアンマウント [yasunari@giga unified]$ファイル名が、何度作り直したかをあらわしている。。。
ただ、ひとつだけ対応方法のわからないエラーが残ってしまった。
INIT: version 2.86 booting Setting the system clock. Activating swap...Adding 1003896k swap on /dev/md10. Priority:-1 extents:1 across:1003896k done. Setting the system clock. Cleaning up ifupdown.... Loading kernel modules...done. Checking file systems...fsck 1.41.3 (12-Oct-2008) done. Setting kernel variables (/etc/sysctl.conf)...Unknown HZ value! (107) Assume 100. done.Unknown HZ value! (107) Assume 100 って誰が何で出してるん?
さあ、次はどれを確認しよ。。。
|
← LS-WTGL/R1, LS-WHGL/R1 シリーズファームウェア アップデータ |
ハックの記録 LinkStation/玄箱 をハックしよう |
→ ハックキットの一本化のためのインストーラのデバッグ(2)LS-CL |