我使用 Samba 4.5 和 ZFS 作为 Windows 8.1 客户端的文件共享。Samba 本身可以运行,我已使用测试了我的 smb.conf testparm
- 它看起来是正确的。smbd 日志未显示任何错误。但我在客户端中看不到任何以前的版本。
我不知道该怎么办,弄清楚我遗漏了什么以及需要什么来修复它。
输出testparm
:
[global]
domain master = Yes
lm announce = Yes
os level = 200
preferred master = Yes
logging = file
max log size = 51200
reject md5 clients = Yes
async smb echo handler = Yes
kernel change notify = No
panic action = /usr/local/libexec/samba/samba-backtrace
pid directory = /var/run/samba
disable spoolss = Yes
load printers = No
printcap name = /dev/null
max mux = 500
name resolve order = wins host bcast
server min protocol = SMB3_02
time server = Yes
auth methods = sam
map to guest = Bad User
security = USER
server role = standalone server
username level = 5
deadtime = 30
hostname lookups = Yes
keepalive = 45
max open files = 2826902
socket options = TCP_NODELAY IPTOS_LOWDELAY SO_KEEPALIVE SO_RCVBUF=131072 SO_SNDBUF=131072
reject md5 servers = Yes
dns proxy = No
wins hook = ***
wins support = Yes
case sensitive = Yes
map archive = No
store dos attributes = Yes
strict locking = No
directory name cache size = 0
dos filemode = Yes
acl allow execute always = Yes
map acl inherit = Yes
access based share enum = Yes
admin users = ***
create mask = ***
directory mask = ***
hosts allow = ***
hosts deny = ***
write cache size = 524288
[Test_share]
path = "***"
hide dot files = No
veto files = /.snapshot/.windows/.zfs/
invalid users = ***
read only = No
vfs objects = zfs_space zfsacl streams_xattr aio_pthread shadow_copy2
shadow:sort = asc
shadow:fixinodes = yes
shadow:format = _%Z-%Y.%m.%d-%H.%M.%S
shadow:delimiter = _
shadow:snapprefix = ^[a-zA-Z0-9_-]+
shadow:snapdir = .zfs/snapshot
zfsacl:acesort = dontcare
nfs4:chown = true
nfs4:acedup = merge
nfs4:mode = special
recycle:subdir_mode = 0700
recycle:directory_mode = 0777
recycle:touch = yes
recycle:versions = yes
recycle:keeptree = yes
recycle:repository = .recycle/%U
示例输出zfs list -t snapshots
Test_pool/***@cronjob-15m_UTC-2017.10.13-00.00.00 0 - 88K -
Test_pool/***@cronjob-15m_UTC-2017.10.13-00.15.00 0 - 88K -
Test_pool/***@cronjob-15m_UTC-2017.10.13-00.30.00 0 - 88K -
Test_pool/***@cronjob-15m_UTC-2017.10.13-00.45.00 0 - 88K -
Test_pool/***@cronjob-15m_UTC-2017.10.13-01.00.00 0 - 88K -
Test_pool/***@cronjob-15m_UTC-2017.10.13-01.15.00 0 - 88K -
输出样例grep shadow -C 5 log.smbd | tail -n 300
:
doing parameter zfsacl:acesort = dontcare
doing parameter invalid users = ***
doing parameter vfs objects = zfs_space zfsacl streams_xattr aio_pthread shadow_copy2
doing parameter shadow:snapdir = .zfs/snapshot
doing parameter shadow:snapprefix = ^[a-zA-Z0-9_-]+
doing parameter shadow:delimiter = _
doing parameter shadow:format = _%Z-%Y.%m.%d-%H.%M.%S
doing parameter shadow:fixinodes = yes
doing parameter shadow:sort = asc
[2017/10/14 17:08:16.429943, 4, pid=39112, effective(0, 0), real(0, 0)] ../source3/param/loadparm.c:3866(lp_load_ex)
pm_process() returned Yes
[2017/10/14 17:08:16.429982, 7, pid=39112, effective(0, 0), real(0, 0)] ../source3/param/loadparm.c:4185(lp_servicenumber)
lp_servicenumber: couldn't find homes
[2017/10/14 17:08:16.430016, 3, pid=39112, effective(0, 0), real(0, 0)] ../source3/param/loadparm.c:1587(lp_add_ipc)
--- AND ---
Load smb config files from /usr/local/etc/smb4.conf
Processing section "[Test_share]"
Loaded services file OK.
smbd_marshall_dir_entry: space_remaining = 65528
[2017/10/14 17:07:33.867623, 10, pid=39112, effective(0, 65533), real(0, 0)] ../source3/smbd/trans2.c:2231(smbd_marshall_dir_entry)
smbd_marshall_dir_entry: SMB_FIND_ID_BOTH_DIRECTORY_INFO
[2017/10/14 17:07:33.867644, 6, pid=39112, effective(0, 65533), real(0, 0)] ../source3/smbd/dir.c:1136(smbd_dirptr_get_entry)
smbd_dirptr_get_entry: dirptr 0x8120420e0 now at offset 2147483648
[2017/10/14 17:07:33.867663, 10, pid=39112, effective(0, 65533), real(0, 0)] ../source3/modules/vfs_shadow_copy2.c:609(shadow_copy2_strip_snapshot_internal)
../source3/modules/vfs_shadow_copy2.c:609: enter path '***/..'
[2017/10/14 17:07:33.867680, 10, pid=39112, effective(0, 65533), real(0, 0)] ../source3/modules/vfs_shadow_copy2.c:618(shadow_copy2_strip_snapshot_internal)
../source3/modules/vfs_shadow_copy2.c:618: abs path '/***'
[2017/10/14 17:07:33.867701, 8, pid=39112, effective(0, 65533), real(0, 0)] ../source3/smbd/dosmode.c:616(dos_mode)
dos_mode: ***/..
[2017/10/14 17:07:33.867719, 10, pid=39112, effective(0, 65533), real(0, 0)] ../source3/modules/vfs_shadow_copy2.c:609(shadow_copy2_strip_snapshot_internal)
../source3/modules/vfs_shadow_copy2.c:609: enter path '***/..'
[2017/10/14 17:07:33.867734, 10, pid=39112, effective(0, 65533), real(0, 0)] ../source3/modules/vfs_shadow_copy2.c:618(shadow_copy2_strip_snapshot_internal)
../source3/modules/vfs_shadow_copy2.c:618: abs path '/***'
[2017/10/14 17:07:33.867754, 5, pid=39112, effective(0, 65533), real(0, 0)] ../source3/smbd/dosmode.c:287(get_ea_dos_attribute)
get_ea_dos_attribute: Cannot get attribute from EA on file ***/..: Error = Attribute not found
[2017/10/14 17:07:33.867771, 5, pid=39112, effective(0, 65533), real(0, 0)] ../source3/smbd/dosmode.c:70(dos_mode_debug_print)
dos_mode_debug_print: dos_mode_from_sbuf returning (0x10): "d"
[2017/10/14 17:07:33.867786, 5, pid=39112, effective(0, 65533), real(0, 0)] ../source3/smbd/dosmode.c:70(dos_mode_debug_print)
一切看起来都正确,但我在客户端中没有看到以前的版本,所以显然它还不够好。
可能缺少了什么?