我真的很困惑 Samba 到底能做什么以及它是如何工作的。以下是我希望它能做的事情:
我在我的局域网上设置了一个 Samba 服务器,每个人都可以看到彼此的共享文件并交换它们。
但一些文档听起来好像它只是允许 Mac/Linux 计算机看到 Windows 计算机。
文档的其他部分使它听起来更像是一个本地服务器,其中 Linux 机器将安装 Samba,并且他们可以看到每个人并对每个人可见,但如果其他人可以看到彼此,那么这种情况也不会改变。
而我读过的其他内容则使它看起来更像是一个文件服务器,每个人都可以看到彼此,但文件传输不是点对点的,而是需要一个主机磁盘作为文件之间的传输。
因此,假设我对 Samba 在实现网络完全交叉可见性的目标方面所做的工作大致了解,那么我需要知道设置服务器需要做什么以及是否可以做到并且值得...
DD-WRT 关于 Samba 的文章有点含糊。前一秒听起来好像只要在 USB 驱动器上设置,我就可以运行 micro 上的服务器,但后一秒又听起来好像 micro 根本无法运行它,等等。
如果我可以从 USB 连接的驱动器运行它,我仍然需要知道文件是否实际存储在该驱动器上。dd-wrt 文章提到:
您可以在主计算机上运行 Samba 服务器并在路由器上运行客户端(从而获得路由器的可写存储),或者可以使用 Samba 在连接到网络的所有计算机之间共享连接到路由器的驱动器(通常通过 USB)。
“在所有计算机之间共享驱动器”这一部分听起来好像我从 Samba 获得的唯一好处是网络上的任何操作系统都可以看到共享驱动器,但它们仍然无法看到彼此。但我非常希望我误解了这一点。
如果计算机可以互相看到但仍然需要磁盘,那么通常需要多少空间比较好?我基于驱动器是一个临时存储点的想法得出这个结论。如果驱动器是一个全功能文件服务器,显然我必须获得一个足够大的驱动器来存储人们想要共享的所有内容。
如果我确实搞错了,是否有任何软件可以实现我的想法?是否有任何软件可以连接到主路由器以桥接所有客户端?
答案1
Samba 是 Microsoft 在 Windows 网络中使用的 CIFS/SMB 协议的开源实现,这意味着您的 Samba 服务器可以与具有符合 CIFS/SMB 协议的软件的 Windows/Mac/*nix 客户端共享文件和打印服务。它还可以充当客户端,连接到托管 CIFS/SMB 共享和打印机的其他 Windows/Samba 系统。Windows、Mac 和 *nix 客户端可以同时拥有允许它们共享文件和打印机的服务器以及可以使用此协议连接到其他计算机上的共享的客户端。在您的网络上拥有 Samba 服务器不会影响您的其他客户端以某种方式在自己的计算机上共享文件的能力,但这些客户端可以配置为连接到 Samba 服务器上的共享。
Samba 的当前生产版本 (3.5) 允许 Samba 计算机加入 Windows 域,但不支持本机 Active Directory/组策略复制。即将推出的 Samba 版本 4.0 正在逐渐合并到每个版本中,并将允许 Samba 服务器在 Windows Server 2003 功能级别充当全功能域控制器,包括 Active Directory 和组策略复制。
答案2
samba 有两部分。客户端和服务器。不过,大多数操作系统会同时安装客户端和服务器。
samba客户端可以浏览和挂载其他samba服务器共享的网络共享。
如果您想共享您的文件以便其他人可以访问,那么请使用 samba 服务器。如果您只想访问其他人的文件,那么只需要 samba 客户端。