我对 Samba 4.14.12 有这样的配置:
[global]
netbios name = MyRouter
interfaces = br-lan eth0
server string = MyRouter
unix charset = UTF-8
workgroup = WORKGROUP
bind interfaces only = yes
#server min protocol = SMB2
passdb backend = smbpasswd
dns proxy = no
socket options = IPTOS_LOWDELAY TCP_NODELAY
use sendfile = yes
map to guest = Bad User
load printers = no
printcap name = /dev/null
disable spoolss = yes
printing = bsd
client signing = mandatory
## disable core dumps
enable core files = no
#smb encrypt = desired
security = user
mdns name = mdns
#delete veto files = yes
######### Dynamic written config options #########
disable netbios = yes
smb ports = 445
aio read size = 0
aio write size = 0
[HDDSoft]
path = /media/HDDSoft/HDD_DATI/+PC
create mask = 0666
directory mask = 0777
read only = yes
guest ok = no
guest only = yes
[hdd]
path = /media/HDDSoft/HDD_DATI
valid users = root
create mask = 0666
directory mask = 0777
browseable = no
read only = no
guest ok = no
为什么它不显示在网络文件资源管理器中?
答案1
Windows 7 使用 SMB 版本 2.1。 Samba 的最新版本更喜欢版本 3。取消注释此指令以确保向后兼容性:
server min protocol = SMB2
另外(正如我的建议先前的评论)您的 W7 客户端是否能看到网络中的其他设备?如果没有,请确保您已激活网络发现,因为默认情况下它并不总是打开。
答案2
我解决了问题。问题是西德(WSD/LLMNR 发现/名称服务守护进程)协议丢失。
从包装中WSDD2在吉图布
随着 Microsoft 在 Windows 10 上完全关闭 SMB1 功能,本地网络上的任何 Samba 共享对于 Windows 计算机来说都变得不可见(从 Windows 7 启动)。这是因为计算机浏览器服务需要 SMB1 才能运行。较新的 Windows 系统可以使用 WSD(设备的 Web 服务)来发现其他计算机上托管的共享
该项目的主要目的是在 Samba 服务器上启用 WSD,以便 Unix 机器上托管的网络共享可以出现在 Windows 文件资源管理器/网络中。