Samba Windows 文件共享
简介¶
如果您曾经处理过 Windows 系统,您可能知道 SMB (Server Message Block) 用于文件共享。如果您是一位经验丰富的 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 共享(注意:将 SERVER_IP
替换为您运行 Samba 的机器的 IP 地址或 FQDN)
- Windows:
\\SERVER_IP
- Linux 或 Mac:
smb://SERVER_IP
作者家庭网络上的 SERVER_IP
是 172.20.0.100
,因此虽然说明根据操作系统有所不同,但作者将从他们的 Fedora 40 笔记本电脑访问新共享。
服务器上可访问的所有文件在客户端机器上也可访问。
结论¶
虽然 SMB 有一个以微软为中心的声誉,但它是行业标准,并且您的 Samba 共享可以从 Linux、Mac、BSD 甚至移动设备访问。所以恭喜您,您现在正在共享您的服务器文件!
作者:Neel Chauhan
贡献者:Steven Spencer, Ganna Zhyrnova