玄箱/HG のハックキット化(5)Windows 向けファイルサーバ


玄箱/HG で samba を rebuild して HD-LAN V2 と速度を比較する。

ソースパッケージの入手

ftp.samba.gr.jp の /pub/samba-jp/samba-2.2.8a-ja/packages/VineLinux2.6/ から samba-2.2.8a.ja-1.0vl1.src.rpm をいただいて来たのが置いてあるので、 それを 玄箱/HG に持ってきた。

コンパイルに必要なパッケージのインストール

[root@hackkit /tmp]# apt-get update
ヒット http://updates.vinelinux.org 2.6/ppc/base/pkglist.updates
ヒット http://updates.vinelinux.org 2.6/ppc release.updates
ヒット http://updates.vinelinux.org 2.6/ppc/base/srclist.updates
ヒット http://updates.vinelinux.org 2.6/ppc release.updates
無視 http://updates.vinelinux.org 2.6/$(ARCH)/base/mirrors
無視 http://updates.vinelinux.org 2.6/$(ARCH)/base/mirrors
ヒット http://www.t.ring.gr.jp 2.6/ppc/base/pkglist.main
ヒット http://www.t.ring.gr.jp 2.6/ppc release.main
ヒット http://www.t.ring.gr.jp 2.6/ppc/base/pkglist.updates
ヒット http://www.t.ring.gr.jp 2.6/ppc release.updates
ヒット http://www.t.ring.gr.jp 2.6/ppc/base/srclist.main
ヒット http://www.t.ring.gr.jp 2.6/ppc release.main
ヒット http://www.t.ring.gr.jp 2.6/ppc/base/srclist.updates
ヒット http://www.t.ring.gr.jp 2.6/ppc release.updates
無視 http://www.t.ring.gr.jp 2.6/$(ARCH)/base/mirrors
無視 http://www.t.ring.gr.jp 2.6/$(ARCH)/base/mirrors
ファイル依存を処理しています... 完了
パッケージリストを読みこんでいます... 完了
依存情報ツリーを作成しています... 完了
W: http://www.t.ring.gr.jp/pub/linux/Vine/apt/ は認証を省略します。
W: http://www.t.ring.gr.jp/pub/linux/Vine/apt/ は認証を省略します。
W: http://updates.vinelinux.org/apt/ は認証を省略します。
W: http://updates.vinelinux.org/apt/ は認証を省略します。
[root@hackkit /tmp]# apt-get install pam-devel readline-devel ncurses-devel patch  autoconf libtool
パッケージリストを読みこんでいます... 完了
依存情報ツリーを作成しています... 完了
* patch は既に最新バージョンがインストールされています
以下の追加パッケージがインストールされます:
  automake libtool-libs m4
以下のパッケージが新たにインストールされます:
  autoconf automake libtool libtool-libs m4 ncurses-devel pam-devel readline-devel
0 個のアップグレードパッケージ, 8 個の新規パッケージ, 0 個の削除/リプレースパッケージ, 1 個の保留パッケージがあります。
取得パッケージ: 2224kB のアーカイブを取得します。インストール後は 6284kB が使用されます。
続行しますか? [Y/n]y
取得:1 http://www.t.ring.gr.jp 2.6/ppc/main autoconf 2.13-10vl0 [231kB]
取得:2 http://www.t.ring.gr.jp 2.6/ppc/main automake 1.4p4-2vl0 [306kB]
取得:3 http://www.t.ring.gr.jp 2.6/ppc/main libtool 1.4.2-4vl1 [609kB]
取得:4 http://www.t.ring.gr.jp 2.6/ppc/main libtool-libs 1.4.2-4vl1 [19.0kB]
取得:5 http://www.t.ring.gr.jp 2.6/ppc/main m4 1.4.1-3vl1 [83.1kB]
取得:6 http://www.t.ring.gr.jp 2.6/ppc/main ncurses-devel 5.2-16vl2 [771kB]
取得:7 http://www.t.ring.gr.jp 2.6/ppc/updates pam-devel 0.75-39vl1.1 [59.8kB]
取得:8 http://www.t.ring.gr.jp 2.6/ppc/main readline-devel 4.1-6vl5 [146kB]
取得完了: 2224kB を 32s (68.2kB/秒)
RPM コマンドを実行しています (-U)...
pam-devel                   ##################################################
automake                    ##################################################
ncurses-devel               ##################################################
m4                          ##################################################
autoconf                    ##################################################
libtool                     ##################################################
readline-devel              ##################################################
libtool-libs                ##################################################

リビルド

リビルド時間がわかるように、 開始時に start というファイルを、終了時に end というファイルを作成する
[root@hackkit /tmp]# ls
samba-2.2.8a.ja-1.0vl1.src.rpm
[root@hackkit /tmp]# touch start ;  rpm --rebuild samba-2.2.8a.ja-1.0vl1.src.rpm ; touch end
samba-2.2.8a.ja-1.0vl1.src.rpm をインストール中
	:
小1時間後、ようやく rebuild が終わった。
[root@hackkit /tmp]# ls -ltr
合計 7116
-rw-r--r--    1 root     root      7271635 Nov 12 20:16 samba-2.2.8a.ja-1.0vl1.src.rpm
-rw-r--r--    1 root     root            0 Nov 12 20:19 start
-rw-r--r--    1 root     root            0 Nov 12 21:06 end
47分。ということは、おおよそ HD-LAN V2 の 3/4。 200MHz/266MHz = 3/4 なので計算は合う。
コンパイル速度は CPU のクロックだけで決まるものではないので偶然の一致か。

Samba パッケージのインストール

[root@hackkit /root]# ls /usr/src/redhat/RPMS/ppc/samba-2.2.8a.ja-1.0vl1.ppc.rpm
/usr/src/redhat/RPMS/ppc/samba-2.2.8a.ja-1.0vl1.ppc.rpm
[root@hackkit /root]# rpm -ivh /usr/src/redhat/RPMS/ppc/samba-2.2.8a.ja-1.0vl1.ppc.rpm
samba                       ################################################
[root@hackkit /root]#

不具合修正

パス

smb.conf の作成

/etc/samba/smb.conf は内向きサーバの HD-HGLAN からコピーしてきた。
[root@hackkit /root]# cd /etc/samba/
[root@hackkit samba]# ls
lmhosts  smb.conf  smbpasswd  smbusers
[root@hackkit samba]# mv smb.conf{,.orig}
[root@hackkit samba]# ftp giga.yamasita.jp
Connected to giga.yamasita.jp.
220 ProFTPD 1.2.10rc1 Server (ProFTPD Basic Configuration) [giga.yamasita.jp]
Name (giga.yamasita.jp:yasunari):
331 Password required for yasunari.
Password:
230 User yasunari logged in.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> cd /etc/samba
250 CWD command successful
ftp> bin
200 Type set to I
ftp> hash
Hash mark printing on (1024 bytes/hash mark).
ftp> get smb.conf
local: smb.conf remote: smb.conf
227 Entering Passive Mode (192,168,1,32,4,31).
150 Opening BINARY mode data connection for smb.conf (2278 bytes)
##
226 Transfer complete.
2278 bytes received in 0.00124 secs (1.8e+03 Kbytes/sec)
ftp> bye
221 Goodbye.
[root@hackkit samba]#

ユーザの追加

[root@hackkit samba]# smbpasswd -a yasunari
New SMB password:
Retype new SMB password:
Added user yasunari.
[root@hackkit samba]#

Samba の起動

[root@hackkit samba]# /etc/rc.d/init.d/smb start
SMBサービスを起動中:                                       [  OK  ]
NMBサービスを起動中:                                       [  OK  ]
[root@hackkit samba]#

動作確認

Windows マシンの Explorer から \\hackkit\yasunari が見えることを確認。 OK。

Samba の自動起動

[root@hackkit samba]# chkconfig smb on
[root@hackkit samba]# chkconfig --list smb
smb             0:off   1:off   2:off   3:on    4:on    5:on    6:off
[root@hackkit samba]#
ということで、Windows 向けファイルサーバも問題なし。

ハックの記録 → 玄箱/HG のハックキット化(6)Windows 向けプリンタサーバ
LinkStation/玄箱 をハックしよう

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