请注意,我最初在 Synology DiskStation 上发现了以下问题。为了确保我没有报告 Synology 特有的错误,我在 Linux 服务器上重现了该问题。以下问题基于我的 Linux 服务器测试。
我在 Ubuntu 16.04.3 LTS 上使用 Samba 版本 4.3.11-Ubuntu 设置了一个 Samba 服务器,并创建了一个共享。
当我通过 Samba 2.0 将该共享挂载到另一个 Ubuntu 16.04.3 LTS 客户端上时,我能够从客户端添加和删除文件并创建硬链接。
但是,当我尝试创建软链接时,出现以下“操作不支持”错误:
#ln -s foo.txt foo.link
ln: failed to create symbolic link 'foo.link': Operation not supported
当我将协议设置为 SMB 1.0 时,我可以创建软链接。不幸的是,由于该版本存在漏洞,因此无法创建软链接。
我在网上搜索到的信息表明,SMB 2.0 应该支持符号链接,但我似乎无法让它们工作。我发现一些帖子指出了类似的问题,但我没有找到有效的解决方案或解释。
有人可以阐明或建议一种方法吗?
这是我的服务器上 smbstatus 的输出:
Samba version 4.3.11-Ubuntu
PID Username Group Machine Protocol Version
------------------------------------------------------------------------------
1317 smbuser smbuser 10.160.9.226 (ipv4:10.160.9.226:53454) SMB2_02
Service pid machine Connected at
-------------------------------------------------------
smbdata 1317 10.160.9.226 Thu Mar 1 14:04:53 2018
以下是我的 smb.conf 文件的内容。请注意,我还尝试了“wide links = yes”,但没有成功。
[global]
follow symlinks=yes
create mask=0744
directory mask=0755
wide links = no
unix extensions = no
min protocol=NT1
security=user
local master=no
realm=*
passdb backend=smbpasswd
printing=cups
max protocol=SMB3
winbind enum users=yes
load printers=yes
workgroup=WORKGROUP
[smbdata]
recycle bin admin only=no
ftp disable modify=no
ftp disable download=no
write list=nobody,nobody
browseable=yes
mediaindex=no
hide unreadable=no
win share=yes
enable recycle bin=no
invalid users=nobody,nobody
read list=nobody,nobody
ftp disable list=no
edit synoacl=yes
valid users=smbuser
writeable=yes
guest ok=yes
path=/share/smbdata
skip smb perm=yes
comment="Test share"