一般咱们在windows上搭建samba(smb)服务,若是两台机子再同一个内网的话,而且都开机主机发现功能的话,两个主机是能够再网络中发现的,而且能够使用smb服务。可是一般咱们linux中搭建的samba服务一般都是使用ip进行访问,若是是静态地址还好,能够获取到固定的ip,可是若是是动态地址的话,还必须使用ddns进行动态ip映射。linux
对于Windows 10版本1511之后的版本,默认状况下禁用对SMBv1的支持,所以NetBIOS设备发现被禁用。因此再ubuntu中安装的samba服务没法被windows发现。
WSDD 是 Web Service Discovery host daemon的简称,实现了web服务能够被windows主机发现,这能够有效的帮助smb服务被发现。git
安装wsddgithub
# cd tmp cd /tmp # 下载和解压 wget https://github.com/christgau/wsdd/archive/master.zip unzip master.zip # 重命名wsdd.py sudo mv wsdd-master/src/wsdd.py wsdd-master/src/wsdd # 复制到bin中 sudo cp wsdd-master/src/wsdd /usr/bin # 将wsdd配置为服务 sudo cp wsdd-master/etc/systemd/wsdd.service /etc/systemd/system sudo nano /etc/systemd/system/wsdd.service ######################################################################### [Unit] Description=Web Services Dynamic Discovery host daemon ; Start after the network has been configured After=network-online.target Wants=network-online.target ; It makes sense to have Samba running when wsdd starts, but is not required ;Wants=smb.service [Service] Type=simple ExecStart=/usr/bin/wsdd --shortlog ; Replace those with an unprivledged user/group that matches your environment, ; like nobody/nogroup or daemon:daemon or a dedicated user for wsdd ; User=nobody ; Group=nobody ; The following lines can be used for a chroot execution of wsdd. ; Also append '--chroot /run/wsdd/chroot' to ExecStart to enable chrooting ;AmbientCapabilities=CAP_SYS_CHROOT ;ExecStartPre=/usr/bin/install -d -o nobody -g nobody -m 0700 /run/wsdd/chroot ;ExecStopPost=rmdir /run/wsdd/chroot [Install] WantedBy=multi-user.target # reload start and enable sudo systemctl daemon-reload sudo systemctl start wsdd sudo systemctl enable wsdd # 查看状态 sudo service wsdd status
dnf install wsdd