我有一台安装了 Samba 的 Ubuntu 服务器 22.04,它有 2 个物理以太网连接。在该服务器上,我有多个共享文件夹,我希望文件夹 A、B 和 C 在接口 1 上可用,文件夹 C、D 和 E 在接口 2 上可用。
我尝试遵循有关多个 samba 实例的 samba wiki 教程,但由于它是针对 RedHat 的,因此存在一些差异,我不太擅长通过。将“接口”行放在文件夹规范中而不是全局规范中可能是完美的。
有人成功地在不同的界面上分割共享文件夹吗?
谢谢。
答案1
我找到了一种方法来实现它。按照这个方法linuxtopia——虚拟服务器
在 smb.conf 文件中,我们可以添加一个参数 %i,即客户端调用的 IP。请确保在 conf 文件中指定了您的接口。然后,在 smb.conf 中使用“include = smb-%i.conf”(它将是主配置文件,包含所有常规设置和常用共享文件夹(如果需要)).最后,制作2(如果有更多接口则更多)名为 smb-ip-of-the-server.conf 的文件,其中包含特殊的共享文件夹和特定的全局参数。
我仍在尝试使其与 netbios 名称和 netbios 别名一起工作,但如果我在 conf 文件中输入“smb ports = 139”,它似乎不起作用。如果我这样做,就无法再访问 smb 服务器,即使我在行首用 # 注释该行...
编辑:netbios 对我来说似乎是死路一条。我正在尝试使用 DHCP 或 DNS 将主机名映射到服务器网络接口。修改客户端中的 windows hosts 文件效果很好,但我不想为所有设备都这样做。我正在寻找路由器级别或服务器级别的解决方案。
编辑 2:默认情况下,我的路由器防火墙会阻止 Netbios 端口...因此,我最终在路由器选项中使用了 DNS 属性(server1.srv 用于 ip1 而 server2.srv 用于 ip2)看起来运行完美。希望这能帮到别人。