Samba (The free SMB and CIFS client and server)

[ 戻る | トップページに戻る ]

概要

Samba とは、簡単に言えば Microsoft Windows ネットワークの クライアント/サーバ用ソフトウェア。Windows の共有フォルダへのアクセス、 および共有フォルダの提供などが簡単に実現できる。

URL

http://www.samba.org/ (Official Site)
http://www.samba.gr.jp/ (日本 Samba ユーザ会)
ftp://ring.asahi-net.or.jp/archives/net/samba/ (ミラー)

インストール環境

Plamo Linux 1.4.4 (Kernel 2.2.12 + libc5)
Plamo Linux 2.0 (Kernel 2.2.15 + glibc 2.1.2)
Plamo Linux 2.2.1 (Kernel 2.2.19 + glibc 2.2)
Slackware 7.0 (Kernel 2.2.14 + glibc 2.1.2)

必要なもの

特になし

バージョン

2.0.5a, 2.0.7-ja-1.2, 2.0.7-ja-2.2, 2.0.9-ja-1.0, 2.0.10-ja-1.0

インストール手順 (for 2.0.5a on Plamo 1.4.4)

 $ tar xvfz samba-2.0.5a.tar.gz
 $ cd samba-2.0.5a/source
 $ ./configure
 (snip)
 configure: warning: running as non-root will disable some tests 
 (snip)

途中こんなことを言われた。あれ? configure って root で実行する必要あるんだっけか? ま、いいや。続行。
 $ make
 $ su
 # make install 
 # exit

/etc/rc.d/rc.samba を作成し、chmod 755 rc.samba しておく。 内容は以下の通り。
 #!/bin/sh
 /usr/local/samba/bin/smbd -D 
 /usr/local/samba/bin/nmbd -D

/etc/rc.d/rc.local に以下のエントリを追加。 あとは /usr/local/samba/lib/smb.conf を適宜設定してから、 再起動、もしくは rc.samba を実行すればおしまい。
 if [ -x /etc/rc.d/rc.samba ]; then 
   echo -n "Starting samba "
   /etc/rc.d/rc.samba
   echo "."
 fi

インストール手順 (for 2.0.6 on Plamo 1.4.4/Slack 7.0)

$ tar xvfz samba-2.0.6.tar.gz
$ cd samba-2.0.6/source
$ ./configure --with-i18n-swat --with-smbmount
$ make
(snip)
Compiling smbd/password.c
smbd/password.c: In function `setup_groups':
smbd/password.c:168: warning: comparison is always 0 due to limited range of dat
a type
smbd/password.c:168: warning: comparison is always 0 due to limited range of dat
a type
Compiling smbd/conn.c
(snip)
$ su
# make install
# exit

ワーニングがちょい気になるけど...ま、いいか。 でも Slackware 7.0 だと何も warning 出ないのよね〜。

インストール手順 (for 2.0.7-ja-2.2)

$ tar xvfz samba-2.0.7-ja-2.2.tar.gz
$ cd samba-2.0.7-ja-2.2/source
$ ./configure --with-i18n-swat --with-smbmount --with-ssl
$ make
(snip)
Compiling lib/util_unistr.c
Compiling lib/util_file.c
Compiling lib/util.c
lib/util.c:57: ssl.h: そのようなファイルやディレクトリはありません
make: *** [lib/util.o] Error 1

むぅ。SSL が見つからないらしい。 現在、OpenSSL のヘッダファイルは /usr/local/ssl/include/openssl/ にあるためデフォルトの --with-sslinc=DIR Where the SSL includes are (defaults to /usr/local/ssl) では見つからないらしい。ではこうだっ。
$ ./configure --with-i18n-swat --with-smbmount --with-ssl --with-sslinc=/usr/local/ssl/include/openssl
$ make
(snip)
make[1]: Leaving directory `/usr/local/src/samba-2.0.7-ja-2.2/source/intl'
Compiling lib/util.c
lib/util.c:57: ssl.h: そのようなファイルやディレクトリはありません
make: *** [lib/util.o] Error 1

またダメ。 config.log を見ると...
 -I/usr/local/ssl/include/openssl/include -L/usr/local/ssl/include/openssl/lib 

のように認識されているらしい。 むー。/usr/local/ssl/include/openssl に入るのって OpenSSL のデフォルトなんだ けどなぁ。 直すのは簡単だけど、他に影響が出そうなので、とりあえず samba 側の --with-ssl を外しちゃう。 あとは、他のバージョンの場合と同じ。

重大なことに気づいた。(^^; Samba の SSL サポートは SSLeay を使うらしい。また今度挑戦してみよ。

インストール手順 (for 2.0.9-ja-1.0 以降)

$ bzip2 -dc samba-2.0.9-ja-l.0.tar.bz2 | tar xvf -
$ cd samba-2.0.9-ja-1.0/source
$ ./configure --with-i18n-swat --with-smbmount
$ make
(snip)
Compiling utils/make_printerdef.c
Linking bin/make_printerdef
lib/util.o: In function `smbd_mktemp':
lib/util.o(.text+0x4a88): the use of `mktemp' is dangerous, better use `mkstemp'

むう。なんだか mktemp に関する警告がいっぱい出る (Plamo 2.2.1 の場合。それ以外は問題なし) 。 警告で (コンパイルが) 終っているのが気持悪いが、とりあえず完了しているらしい。 インストールしておしまい。
$ su
# make install
# exit

設定方法

# cd samba-2.0.5a/examples
# cp smb.conf.default /usr/local/samba/lib/smb.conf

smb.conf を適宜編集。漢字コードは以下のように設定する。
 coding system = euc
 client code page = 932

暗号化パスワード対応のための設定。 なお、smb.conf で encrypt passwords = yes とするのを忘れないように。
# mkdir /usr/local/samba/private
# chmod 600 /usr/local/samba/private
# touch /usr/local/samba/private/smbpasswd
# chmod 600 /usr/local/samba/private/smbpasswd
# smbpasswd -a <UNIX 上に存在するユーザ名>
New SMB password: xxxxxxx
Retype new SMB password: xxxxxxx
Added user <UNIX 上に存在するユーザ名>

SWAT の設定。 /etc/services に以下のエントリを追加。
swat    901/tcp

/etc/inetd.conf に以下のエントリを追加。 あとは kill -HUP <inetd の PID> しておしまい。
swat stream tcp nowait.400 root /usr/local/samba/bin/swat swat

[ 戻る | トップページに戻る ]