Top/Linux/Samba3.0

Samba3.0はてなブックマーク

Windows NT/2000互換のファイルサーバ/プリント・サーバ機能を提供するソフトウェア。


サービス提供対象

OS可否
Windows NT系 (NT,2000,XP etc...)サポート (XPで確認)
Windows 9X系 (98,98SE,Me etc...)サポート (未確認)
Mac OS Xサポート (確認)
Mac (OS X未満)利用不可 (未確認)

インストール

以下

サーバー192.168.0.38
クライアント192.168.0.0/24
実体ディレクトリ/var/samba/public
ユーザーhoge

と仮定。

libiconvにパッチを当てインストール

libiconvでサポートされているcp932の変換は、マイクロソフトの変換と異なるため、
パッチを当て既存のものとは別の場所(ここでは /opt/libiconv-1.8 と仮定)へインストール

tar zxvf libiconv-1.9.2.tar.gz
zcat libiconv-1.9.2-cp932.patch.gz | patch -p0
cd libiconv-1.9.2/
./configure --prefix=/opt/libiconv
make
make check
make install
vi /etc/ld.so.conf
/opt/libiconv/lib
ldconfig -v

Sambaのインストール

wget http://us1.samba.org/samba/ftp/samba-3.0.10.tar.gz
tar zxvf samba-3.0.10.tar.gz
cd samba-3.0.10/source/
./configure --with-libiconv=/opt/libiconv --with-smbmount
make
make install

文字コードの設定

vi /usr/local/samba/lib/smb.conf
[global]
dos charset = CP932
unix charset = EUCJP-MS
display charset = CP932
項目概要推奨
dos charsetWindowsの文字コードCP932(シフトJIS*1
unix charsetLinuxの文字コードEUCJP-MS(Fedora等はUTF-8)
display charsetSWATの文字コード環境に応じて

SWAT

xinetdにSWATを登録 (via Chapter 32. SWAT The Samba Web Administration Tool)

vi /etc/xinetd.d/swat
# default: off
# description: SWAT is the Samba Web Admin Tool. Use swat \
#              to configure your Samba server. To use SWAT, \
#              connect to port 901 with your favorite web browser.
service swat
{
	port    = 901
	socket_type     = stream
	wait    = no
	only_from = 192.168.0.0/24
	user    = root
	server  = /usr/local/samba/sbin/swat
	log_on_failure  += USERID
	disable = no
}
chkconfig swat on

ブラウザで http://192.168.0.38:901/ に接続して文字化けしていたら、
下記のように適当に変換するか上記 smb.conf の display charset を見直す。この辺りは適当に。

cd /usr/local/samba/lib/
cp ja.msg ja.msg.org
iconv -f CP932 -t EUCJP ja.msg.org > ja.msg
/etc/rc.d/init.d/xinetd restart

実体ディレクトリの作成とユーザーの追加

実体ディレクトリの作成

groupadd samba
mkdir -p -m 775 /var/samba/public
chown -R .samba /var/samba/public

ユーザーの追加

useradd -g samba -d /usr/local/samba -s /bin/false hoge
/usr/local/samba/bin/smbpasswd -a hoge

設定

Linux/Samba3.0/設定

Samba2.2からの移行(ファイル名の変換)

(via yamk日記(2004-06-25))

convmvを使う。
対象ディレクトリをコピーしてから行うと安全です。
まず、正常に変換されるかテスト。

convmv -r -f euc-jp -t utf8 *

実際に変換。

convmv --notest -r -f euc-jp -t utf8 *

ポート

nmbdUDP 137
UDP 138
smbdTCP 139
TCP 445
swatTCP 901

関連

参考

Amazon

*1 Microsoftががそう呼んでいるもの
差分 一覧