Last Update: "2009/01/01 21:31:27 makoto"
samba
Samba は Windows 用のファイルサーバ機能を提供します。
これには次の三つの部品が含まれています。
smbd | File サーバ |
nmbd | 名前解決 |
winbindd | アカウント情報サーバ (Windows -> Unix) |
版
pkgsrc では次の三つが用意されています。通常は net/samba の方を使います。
(2008/08)
pkgsrc directory | version |
pkgsrc/net/samba2 | |
pkgsrc/net/samba20 | |
pkgsrc/net/samba | samba-3.0.30 |
pkgsrc/net/ja-samba | (obsolete) |
pkgsrc/net/gtksamba | |
設定
設定は
/usr/pkg/etc/samba/smb.conf
に行います。
ここは次のようになっています。
drwx------ 2 root wheel 512 May 4 23:46 private/
-rw-r--r-- 1 root wheel 9986 May 4 23:46 smb.conf
更に
private/
の下には簡単な方式の認証文字列があります。
-rw------- 1 root wheel 8192 May 5 09:59 secrets.tdb
-rw------- 1 root wheel 0 May 5 09:59 smbpasswd
これを設定するには smbpasswd
(/usr/pkg/bin/smbpasswd) を使いますが、root 権限が必要です。
ttyp0:makoto@mini 10:45:56/050505(...net/samba)> sudo smbpasswd -L -a username
New SMB password:
Retype new SMB password:
Added user username.
ttyp0:makoto@mini 10:46:11/050505(...net/samba)>
また、上の設定のうち smb.conf については、
その記述例は
/usr/pkg/share/examples/samba/
に置いてあります。設置時には、その中の smb.conf.default が写してありますから、
いきなり変更してしまっても、簡単に元に戻せます。
/usr/pkg/share/examples/samba/
には他にも次のようなものがあります。
名前 | shell? | |
adduser.sh* | YES | |
deluser.sh* | YES | |
mknissmbpasswd.sh* | YES | smbpasswd → smbpasswd NIS+ table |
mknissmbpwdtbl.sh* | YES | smbpasswd と smb group を NIS+ に作成 |
mksmbpasswd.sh* | YES | SMB password file を作成 |
samba.schema | | |
smb.conf.default | | /usr/pkg/etc/samba/smb.conf に写して変更 |
updatesmbpasswd.sh* | YES | |
smb.conf
smb.conf 変更例
既に何か関連のものが動いているかどうかは smbd nmbd というような名前の処理(process)
があるかどうかを ps ax 等で調べれば分ります。
/etc/rc.d
以前の版 2.2.8 くらいでは /etc/rc.d の下におくものは /usr/pkg/etc/rc.d/
に用意されていました。しかし最近は /usr/pkg/share/examples/rc.d に
置いてあります。
これらを /etc/rc.d の下に次のように
写して、機械の起動時の設定用とします。
cd /usr/pkg/share/examples/rc.d
cp nmbd /etc/rc.d/
cp smbd /etc/rc.d/
cp samba /etc/rc.d/
cp winbindd /etc/rc.d/
あるいは全部を一度に、次のように写す方が簡単です。
cd /usr/pkg/share/examples/rc.d
cp nmbd smbd samba /etc/rc.d/
これらを実際に有効にするには
/etc/rc.conf に 次のように書いておきます。
smbd=YES
nmbd=YES
samba=YES
起動
/etc/rc.conf に設定する前なら、
# env smbd=YES nmbd=YES /etc/rc.d/samba start
# env smbd=YES nmbd=YES /etc/rc.d/samba restart
などとします。設定が済んでいれば、単に
# /etc/rc.d/samba start
などが使えます。
add user
上で passwd を設定した他に、更に
user を追加する方法は次のようにします。
sudo pdbedit -a username
debug
# /usr/pkg/sbin/nmbd -d 50
などとすると、/var/log/log.nmbd にこまかい記録が残ります。 smbd の方も同様です。
powerpc の場合、次のような問題があります。
ttyp0:root@kuro-hg 10:02:04/061011(~)# /etc/rc.d/samba start
Starting nmbd.
/usr/pkg/sbin/nmbd: Unsupported relocation type 6 in non-PLT relocations
Starting smbd.
/usr/pkg/sbin/smbd: Unsupported relocation type 6 in non-PLT relocations
Following patch fixes this problem
Index: Makefile
===================================================================
RCS file: /e/s900/cvsync/pkgsrc/net/samba/Makefile,v
retrieving revision 1.165
diff -u -r1.165 Makefile
--- Makefile 1 Oct 2006 14:58:38 -0000 1.165
+++ Makefile 11 Oct 2006 02:11:43 -0000
@@ -57,6 +57,7 @@
CONFIGURE_ARGS+= --with-swatdir=${PREFIX}/share/samba/swat
CONFIGURE_ARGS+= --with-libsmbclient
+CONFIGURE_ARGS+= --disable-pie
.include "../../converters/libiconv/buildlink3.mk"
CONFIGURE_ARGS+= --with-libiconv=${BUILDLINK_PREFIX.iconv}
problem
samba-3.0.32nb1 SMB/CIFS protocol server suite
[2009/01/01 21:27:07, 0] lib/interface.c:load_interfaces(201)
ERROR: Could not determine network interfaces, you must use a interfaces config line
adding following line fix the problem
interfaces = 192.168.1.0/24
|