memo

Samba

設定

設定内容を確認する

Samba共有フォルダへのコピーを速度制限する

次の行を smb.conf に追記

max xmit = 2048

OpenLDAP で認証を行う場合の設定

/etc/samba/smb.conf

dos charset = CP932
display charset = UTF-8
workgroup = WORKGROUP
netbios name = sambasvr
obey pam restrictions = Yes
passdb backend = ldapsam:ldap://10.1.2.3
ldap admin dn = uid=Administrator,ou=Users,dc=foo,dc=domain,dc=net
ldap group suffix = ou=Groups
ldap machine suffix = ou=Computers
ldap passwd sync = Yes
ldap suffix = dc=foo,dc=domain,dc=net
ldap user suffix = ou=Users

LDAP サーバに接続するためのパスワードを設定

smbpasswd -w <password>
Setting stored password for "uid=Administrator,ou=Users,dc=foo,dc=domain,dc=net" in secrets.tdb

削除ファイルをゴミ箱に移す設定

[global]セクションに
vfs objects = recycle
を記述。

各共有フォルダのセクションに

recycle:repository = .recycle/%u
recycle:keeptree = yes
recycle:touch = yes
recycle:versions = yes
recycle:maxsize = 100000000
recycle:exclude = *.tmp *.temp *.o *.obj ~$* *.~??
recycle:exclude_dir = /tmp|/cache
recycle:noversions = *.doc *.xls *.ppt

を記述。

cd /opt/samba/share
mkdir .recycle
chmod 777 .recycle

さらに tmpwatch を cron で実行して、削除後一定期間経過したファイルをゴミ箱から削除。

/usr/sbin/tmpwatch 168 /opt/samba/share/.recycle
168時間 ⇒ 1週間

トラブルシューティング

Windows 2000/XP から SAMBA の共有フォルダに接続できない

MacOS High Sierra から Samba 共有フォルダにファイルをコピーすると、ファイルのパーミッションに force create mode が反映されない。

グルーブとユーザが読めないファイルが作成される。 smb.conf の [global] セクションに、次の設定を追記
unix extensions = no

Samba 3.x に対して High Sierra から同じ名前のファイルを 2回コピーできない。

再現方法

  1. High Sierra から Samba 3.x の共有フォルダにファイルをコピー
  2. Samba 3.x が稼働するサーバ側で、コピーされたファイルを移動、または削除
  3. High Sierra から Samba 3.x の共有フォルダに同じ名前のファイルをコピー
    「”“という項目が存在するため、操作を完了できません。」というメッセージが表示される。

※回避方法
smb.conf の [blobal] セクションに次の設定を追記
max protocol = SMB2

Samba 3.x のデフォルト値は NT1
Samba 4.x では SMB3(設定項目名は server max protocol に変更)