计算机网络Samba简介

Samba是实现跨操作系统的网络资源共享的客户端/服务器技术 。 通过Samba,可以在Windows,Mac和Linux / UNIX客户端共享文件和打印机。

Samba的核心功能来源于其实施服务器消息块(SMB)协议。 SMB客户端和服务器端支持与所有现代版本的Microsoft Windows,Linux发行版和Apple Mac OSX捆绑在一起。 免费的开放软件也可以从samba.org获得。 由于这些操作系统之间的技术差异,该技术相当复杂。

桑巴可以为您做些什么

桑巴可以以几种不同的方式使用。 例如,在Intranet或其他专用网络上,Samba应用程序可以在Linux服务器和Windows或Mac客户端之间传输文件(反之亦然)。 任何使用运行Apache和Linux的Web服务器的人都可以考虑使用Samba而不是FTP来远程管理网站内容。 除简单传输外,SMB客户端还可以执行远程文件更新。

如何从Windows和Linux客户端使用Samba

Windows用户经常映射驱动器以在计算机之间共享文件。 通过在Linux或Unix服务器上运行Samba服务,Windows用户可以利用相同的工具访问这些文件或打印机。 可以通过Windows资源管理器网络邻居Internet Explorer等操作系统浏览器从Windows客户端访问Unix共享。

在相反的方向共享数据的工作原理类似。 Unix程序smbclient支持浏览和连接到Windows共享。 例如,要连接到名为louiswu的Windows计算机上的C $,请在Unix命令提示符处键入以下内容

smbclient \\\\ louiswu \\ c $ -U用户名

其中username是一个有效的Windows NT帐户名称。 (如有必要,Samba将提示输入帐户密码。)

Samba使用通用命名约定(UNC)路径来引用网络主机。 由于Unix命令shell通常以特殊方式解释反斜杠字符,因此在使用Samba时,请记住键入重复的反斜杠,如上所示。

如何从Apple Mac客户端使用Samba

共享上的文件共享选项 Mac系统预置的窗格使您能够找到Windows和其他Samba客户端。 如果Samba无法运行,Mac OSX会自动首先尝试通过SMB访问这些客户端并回退到其他协议。 有关更多信息,请参阅如何在Mac上连接文件共享。

配置Samba的要求

在Microsoft Windows中,SMB服务内置于操作系统服务中。 服务器网络服务(通过控制面板/网络,服务选项卡提供)提供SMB服务器支持,而Workstation网络服务提供SMB客户端支持。请注意,SMB还需要TCP / IP才能正常工作。

在Unix服务器上,两个守护进程smbd和nmbd提供所有Samba功能。 要确定Samba是否正在运行,请在Unix命令提示符下键入

ps ax | grep mbd | 更多

并验证smbd和nmbd是否出现在进程列表中。

以普通的Unix方式启动和停止Samba守护进程:

/etc/rc.d/init.d/smb start /etc/rc.d/init.d/smb stop

Samba支持一个配置文件smb.conf。 用于定制详细信息(如共享名称,目录路径,访问控制和日志记录)的Samba模型涉及编辑此文本文件,然后重新启动守护程序。 最小的smd.conf(足以使Unix服务器在网络上可见)看起来像这样

; 最小/etc/smd.conf [global] guest帐户= netguest workgroup = NETGROUP

一些需要考虑的问题

Samba支持加密密码的选项,但在某些情况下可以关闭此功能。 使用通过不安全网络连接的计算机时,请注意,使用smbclient时提供的纯文本密码很容易被网络嗅探器发现。

在Unix和Windows计算机之间传输文件时,可能会发生名称损坏问题。 尤其是,在复制到Unix系统时,Windows文件系统中混合使用的文件名可以全部变为小写。 取决于正在使用的文件系统(例如,旧的Windows FAT),非常长的文件名也可能被截断为较短的名称。

Unix和Windows系统实现了行尾(EOL) 对ASCII文本文件的约定有所不同。 Windows使用两个字符的回车/换行符(CRLF)序列,而Unix只使用一个字符(LF)。 与Unix mtools软件包不同,Samba在文件传输过程中不执行EOL转换。 使用Samba传输到Windows计算机时,Unix文本文件(如HTML页面)显示为一行非常长的单行文本。

结论

Samba技术已经存在了20多年,并继续定期发布新版本。 很少有软件应用程序享有如此长的使用寿命。 在包括Linux或Unix服务器的异构网络中工作时,Samba的弹性证明了它作为基本技术的作用。 尽管Samba永远不会成为普通消费者需要了解的主流技术,但SMB和Samba的知识对IT和业务网络专业人员有帮助。