Samba Windows 文件共享
介绍¶
如果您曾经使用过 Windows 系统,您可能了解 SMB(服务器消息块)用于文件共享。如果您是一位经验丰富的 Linux 管理员,您可能听说过 Samba,但如果您没有听说过,Samba 是 SMB 的事实上的开源实现,用于从 Linux 机器到 Windows 网络启用文件共享和 Active Directory 访问。
安装¶
您需要使用 dnf
安装 Samba
dnf install -y samba
设置共享¶
首先,创建一个您想要与 Windows 客户端共享的目录
mkdir /var/store
接下来,在 /var/store
目录上设置 SELinux 标签
semanage fcontext -a -t samba_share_t "/var/store(/.*)?"
restorecon -Rv /var/store
用要共享的目录替换 /var/store
。
现在配置 Samba
vi /etc/samba/smb.conf
在 smb.conf
文件中,导航到底部并插入以下内容
[Share]
path = /var/store
browseable = yes
writable = no
read only = yes
guest ok = yes
如果您不了解上面的选项,它们是
path
是我们正在共享的目录。将其设置为您的相应目录(在本例中为/var/store
)。browseable
允许客户端进行浏览访问。如果您想禁止浏览,将其设置为no
。writable
允许客户端进行写入访问。如果您想允许写入访问,将其设置为yes
。read only
将共享标记为只读。如果您想允许写入或执行访问,将其设置为no
。guest ok
允许未经身份验证的用户访问我们的共享。如果您想拒绝访客,将其设置为no
。
要测试配置,可以运行以下命令
testparm
启用 Samba¶
配置测试通过后,在 firewall-cmd
中打开 Samba 端口
firewall-cmd --permanent --add-service=samba
firewall-cmd --reload
接下来,您可以启用 Samba
systemctl enable --now smb nmb
访问 Samba 共享¶
您可以使用以下 URI 访问 Samba 共享(注意:用运行 Samba 的机器的 IP 地址或 FQDN 替换 SERVER_IP
)
- Windows:
\\SERVER_IP
- Linux 或 Mac:
smb://SERVER_IP
作者家庭网络上的 SERVER_IP
是 172.20.0.100
,因此虽然说明会根据操作系统而有所不同,但作者将从他们的 Fedora 40 笔记本电脑访问新共享
服务器上可访问的所有文件也都在客户端机器上可用。
结论¶
虽然 SMB 以以 Microsoft 为中心而闻名,但它是一种行业标准,您的 Samba 共享可以从 Linux、Mac、BSD 甚至移动设备访问。所以恭喜您,您现在正在共享服务器上的文件!
作者:Neel Chauhan
贡献者:Steven Spencer, Ganna Zhyrnova