をさわる

連休中の宿題をやるためにSH環境を構築する。
持ち帰りが楽なようにプラットフォームはUSL-5Pを選んだ。


rougeは、okeシステムの納品以来、1年もさわっていないので、すっかり忘却の彼方だ。
USBユーザーランドな起動システムとして、kernel+initrdシステムにしたのすら忘れている始末だ。
いかんね...
USBハードディスクのパーティション構成をどのようにしたかを思い出せない。困ったな。
swapとext3なんだろうけど、どっちがsda1だっけ。
普段の自分なら、sda1がswapなんだけど、なんか違うような予感もする。


CFの中身はこんな感じだった。これを見ていると、うっすらと思いだしてくる。

# find /media/ -ls
     2    1 drwxr-xr-x   8 root     root         1024 Mar 29  2006 /media/
  1287    1 drwxr-xr-x   3 root     root         1024 Mar 29  2006 /media/etc
  1288    1 -rw-r--r--   1 root     root          187 Mar 30  2006 /media/etc/lilo.conf
  1295    1 drwxr-xr-x   2 root     root         1024 Mar 29  2006 /media/etc/init.d
  1296    1 -rwxr-xr-x   1 root     root          112 Mar 29  2006 /media/etc/init.d/rcS
    11 2298 -rw-r--r--   1 root     root      2342912 Apr  6  2006 /media/vmlinuz-2.6.14-sh
  1290    1 drwxr-xr-x   2 root     root         1024 Apr  6  2006 /media/tmp
  1289    1 drwxr-xr-x   2 root     root         1024 Apr  6  2006 /media/boot
    13    4 -rw-r--r--   1 root     root         3208 Mar 21  2006 /media/boot/boot.b
  1297    1 -rw-r--r--   1 root     root          512 Apr  6  2006 /media/boot/boot.0800
  1293   28 -rw-------   1 root     root        27136 Apr  6  2006 /media/boot/map
    12    1 drwxr-xr-x   2 root     root         1024 Mar 29  2006 /media/initrd
  1283    1 drwxr-xr-x   2 root     root         1024 Mar 29  2006 /media/dev
  1284    0 brw-rw----   1 root     root              Mar 21  2006 /media/dev/sda
  1285    0 brw-rw----   1 root     root              Mar 21  2006 /media/dev/sda1
  1286    0 brw-rw----   1 root     root              Mar 21  2006 /media/dev/sda2
  1281    0 brw-rw----   1 root     root              Mar 21  2006 /media/dev/hda
  1282    0 brw-rw----   1 root     root              Mar 21  2006 /media/dev/hda1
  1292    0 crw-r--r--   1 root     root              Mar 29  2006 /media/dev/console
  1294    0 crw-r--r--   1 root     root              Mar 29  2006 /media/dev/ttySC1
    14    0 lrwxrwxrwx   1 root     root           11 Mar 29  2006 /media/bin -> /initrd/bin
    15    0 lrwxrwxrwx   1 root     root           12 Mar 29  2006 /media/sbin -> /initrd/sbin
    16    1 drwxr-xr-x   2 root     root         1024 Mar 29  2006 /media/proc

CF内のkernel image以外のほぼ唯一の内容はこれ。

# cat /media/etc/init.d/rcS
#!/initrd/bin/ash
#/bin/ash
mount -t proc proc /proc
echo "  - no USB rootfs. Power off."
/initrd/sbin/poweroff


rougeテスト用のドライブイメージを発掘して、そこのメモにsda1/swap,sda2/rootfsとあるのを発見。
こんな感じでドライブを用意

Disk /dev/sda: 10.0 GB, 10056130560 bytes
240 heads, 63 sectors/track, 1299 cylinders
Units = cylinders of 15120 * 512 = 7741440 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1          67      506488+  82  Linux swap / Solaris
/dev/sda2              68        1299     9313920   83  Linux

# mkswap /dev/sda1
# mkfs.ext3 /dev/sda2
# mount /dev/sda2 /media/
# cd /media/
# wget http://iohack.sourceforge.jp/kogiidena/debian26/base/base26-sh4-20060329-etch.tgz
# wget http://iohack.sourceforge.jp/kogiidena/debian26/base/landisk-tools-20061204.tgz
# tar zxvfp base26-sh4-20060329-etch.tgz
# mv debian26/* ./
# rm -r debian26/
# tar zxvfp landisk-tools-20061204.tgz
# mkdir arc
# mv base26-sh4-20060329-etch.tgz landisk-tools-20061204.tgz arc/

この環境でtelntedは有効になっている。
たしか、ユーザーはlandiskでパスワードも同じではなかったかな。rootのパスワードも。
IPアドレスは192.168.1.80に固定されているので、これだけは変更する。
そうそう、telnetdはtcpdを経由しているので、hosts.allowも修正しておく必要がある。


rouge環境にセットして起動してみる。
無事あがったようだ。

# telnet 192.168.123.11
Trying 192.168.123.11...
Connected to 192.168.123.11.
Escape character is '^]'.
Debian GNU/Linux testing/unstable
landisk login: landisk
Password:
Linux landisk 2.6.14-shrouge_baby #1 Thu Apr 6 15:40:08 JST 2006 sh4 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.
landisk@landisk:~$ su -
Password:
landisk:~#

スイッチで電源断ができることも確認した。


sources.listを書き換える。

deb http://iohack.sourceforge.jp/kogiidena/debian26/ etch main
deb-src http://ftp.debian.or.jp/debian/ etch main non-free contrib

/resolv.confを環境に合わせる。

# apt-get update
# apt-get upgrade

ありゃ、ファイルの取得に失敗してしまうぞ。
どうやら、kogiidenaさんのところとパス情報が違うようだ。
debian26/binary-sh4-etch/を探しに行っているが、sf.jpのほうにはdebian26/binary-sh4/しかないのでダメらしい。
シンボリックリンクwgetではミラーされないからかね?
調べてみると、パスの問題もあるが、パッケージインデックスと実際のパッケージの間にミスマッチがあるようだ。
これはなかなか根が深いな。ミラーはあくまでミラーだし。


なんか、連休の合間にやろうと思っていた宿題は終わるのは無理そうな雰囲気だな。


とりあえず、NLS charsetがないのでマウントできないから、強制マウントしてインストールファイルをコピーする。

# mount /dev/sdb1 /media/ -t vfat -o iocharset=euc-jp,codepage=932
# cp /media/setup-ggfh-sh4-linux-20070410.sh ./


実行と評価。
評価可能なクオリティじゃなかったみたい。
残念。
宿題終了。

><