HD-120LAN samba の rebuild でテスト


chroot した状態ではエラーになった samba の rebuild を実行する。

この状態(/mnt/HackKit の各ディレクトリを / へシンボリックリンク)で rebuild がうまくいけばカーネル(chroot) の問題だろうし、 うまくいかなければ reiser FS (こっちもカーネルか)の問題だと思われる。

今、使っている /mnt/HackKit は chroot でジェイルを作ったときのツリーそのままなので、 設定追加やライブラリのインストールは必要なく、 いきなり rebuild を実行する。

root@SECO:/mnt/HackKit/tmp# rpm --rebuild samba-2.2.8a.ja-1.0vl1.src.rpm 
Installing samba-2.2.8a.ja-1.0vl1.src.rpm
Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.45060
+ umask 022
+ cd /usr/src/redhat/BUILD
+ cd /usr/src/redhat/BUILD
	:
	:

Linking bin/smbd
/usr/bin/ld:smbd/notify.o: file format not recognized; treating as linker script
/usr/bin/ld:smbd/notify.o:1: parse error
collect2: ld returned 1 exit status
make: *** [bin/smbd] Error 1
Bad exit status from /var/tmp/rpm-tmp.8999 (%build)
root@SECO:/mnt/HackKit/tmp# 
むむむ。結局エラー。原因は、reiser FS か?

ext3 で確認

もうだんだん”簡単インストール”とはかけ離れてきているが、、、

HD-120LAN に実験 HDD を接続し、 ext3 にフォーマットして、 samba のコンパイルを試してみることにした。

いつもの IDE 2分岐ケーブルと、電源分岐ケーブルで、 プライマリスレーブとして、接続した。

hda: WDC WD1200AB-00CBA1, ATA DISK drive
hdb: FUJITSU M1636TAU, ATA DISK drive
ide0 at 0xbffef8-0xbffeff,0xbffef6 on irq 17
hda: 234441648 sectors (120034 MB) w/2048KiB Cache, CHS=232581/16/63, UDMA(100)
hdb: 2511840 sectors (1286 MB) w/128KiB Cache, CHS=2491/16/63, DMA
Partition check:
 hda: hda1 hda2
 hdb:
パーティションを切って、フォーマットする。
root@SECO:~# mfdisk -c /dev/hdb

Command (m for help): p

Disk /dev/hdb: 16 heads, 63 sectors, 2491 cylinders
Units = cylinders of 1008 * 512 bytes

   Device Boot    Start       End    Blocks   Id  System

Command (m for help): n
Command action
   e   extended
   p   primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-2491, default 1): 
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-2491, default 2491): 
Using default value 2491

Command (m for help): w
The partition table has been altered!

Syncing disks.
root@SECO:~# mkfs -j /dev/hdb1
mke2fs 1.22, 22-Jun-2001 for EXT2 FS 0.5b, 95/08/09
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
157120 inodes, 313858 blocks
15692 blocks (5.00%) reserved for the super user
First data block=0
10 block groups
32768 blocks per group, 32768 fragments per group
15712 inodes per group
Superblock backups stored on blocks: 
	32768, 98304, 163840, 229376, 294912

Writing inode tables:  done                           
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 34 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.
root@SECO:~# 
/mnt2 にマウントして、/mnt をコピーする
root@SECO:~# mkdir /mnt2
root@SECO:~# monunt /dev/hdb1 /mnt2
root@SECO:~# df
Filesystem           1k-blocks      Used Available Use% Mounted on
/dev/hda1            116955072    431836 116523236   1% /mnt
/dev/hdb1              1235664     32828   1140068   3% /mnt2
root@SECO:~# cd /mnt
root@SECO:/mnt# tar cf - HackKit share  share-mac |(cd /mnt2; tar xvf -)
	:
root@SECO:/mnt# cd /mnt2
root@SECO:/mnt2# /mnt2/HackKit/usr/sbin/chroot /mnt2/HackKit
[root@SECO /]# cd tmp
[root@SECO /tmp]# ls
samba-2.2.8a.ja-1.0vl1.src.rpm
[root@SECO /tmp]# rpm --rebuild samba-2.2.8a.ja-1.0vl1.src.rpm 
samba-2.2.8a.ja-1.0vl1.src.rpm をインストール中
実行中(%prep): /bin/sh -e /var/tmp/rpm-tmp.43429
+ umask 022
+ cd /usr/src/redhat/BUILD
	:
	:
書き込み中: /usr/src/redhat/RPMS/ppc/samba-2.2.8a.ja-1.0vl1.ppc.rpm
実行中(%clean): /bin/sh -e /var/tmp/rpm-tmp.91414
+ umask 022
+ cd /usr/src/redhat/BUILD
+ cd samba-2.2.8a-ja-1.0
+ rm -rf /var/tmp/samba-2.2.8a.ja-root
+ exit 0
実行中(--clean): /bin/sh -e /var/tmp/rpm-tmp.1357
+ umask 022
+ cd /usr/src/redhat/BUILD
+ rm -rf samba-2.2.8a-ja-1.0
+ exit 0
[root@SECO /tmp]# 
できたやん。

原因は reiser FS で決まりか???

でも、ファイルシステムにエラーの原因があるとしたら、 通常の NAS としての使い方でもエラーが出るんではないだろうか?
100BASE-TX の速度だと問題にならないのだろうか???

HD-HLAN, HD-HGLAN では reiser FS をやめて ext3 に変更されているのも気になる。
何も不都合がないのなら、あえて変える必要も無いと思うんだが、、、


LinkStation/玄箱 をハックしよう → HD-120LAN 再び監獄へ

Copyright (C) 2004 Yasunari Yamashita. All Rights Reserved.
yasunari @ yamasita.jp
山下康成京都府向日市