Samba服务器简介与快速配置指南
图1 由Samba提供文件和打印服务的局域网
Samba的工作原理是,让Windows系列操作系统网络邻居的通讯协议——NETBIOS(NETwork Basic Input/Output System)和SMB(Server Message Block)这两个协议在TCP/IP通信协议上运行,并且使用Windows的NETBEUI协议让Linux可以在网络邻居上被Windows看到。其中最重要的就是SMB(Server Message Block)协议,在所有的诸如Windows Server 2003、Windows XP等Windows系列操作系统中广为应用。Samba就是SMB服务器在类UNIX系统上的实现,目前可以在几乎所有的UNIX变种上运行。
文件共享和打印共享是Samba最主要的功能。Samba为了方便文件共享和打印共享,还实现了相关的控制和管理功能。具体来说,Samba完成的功能有:
安装和配置好了Samba服务器后,Linux就可以向局域网中的Windows用户提供文件和打印服务了。
在NetBIOS出现之后,Microsoft就使用NetBIOS实现了一个网络文件和打印服务系统,该系统基于NetBIOS设定了一套文件共享协议,Microsoft称之为SMB(Server Message Block)协议。这个协议被Microsoft用于它们的Lan Manager和Windows服务器系统中,而Windows系统均包括这个协议的客户软件,因而这个协议在局域网系统中影响很大。
随着Internet的流行,Microsoft希望将这个协议扩展到Internet上,成为Internet上计算机之间相互共享数据的一种标准。它将原有的几乎没有多少技术文档的SMB协议进行整理,重新命名为CIFS(Common Internet File System)。因此,为了让Windows和UNIX计算机相集成,最好的办法即是在UNIX中安装支持SMB/CIFS协议的软件,这样Windows客户就不须要更改设置,就能如同使用Windows NT服务器一样,使用UNIX计算机上的资源了。
下面介绍Samba的安装、简易配置以及启动和停止的指令
(1)安装
#yum -y install samba (Fedora,CentOS,SUSE等)
#apt-get install samba (ubuntu)(2)增加共享文件夹
假设你要共享的文件夹为:/home/vincent/share
首先创建这个文件夹
mkdir -p /home/vincent/share
授权
chmod 777 /home/vincent/share
或者:
mkdir -m 777 -p /home/vincent/share
(3)编辑/etc/samba/smb.conf文件
vi /etc/samba/smb.conf
在文件/etc/samba/smb.conf结尾添加如下行:[share]为共享目录的名字,path为共享目录路径
[share]
comment=this is Linux share directory
path=/home/vincent/sharebrowseable=yes
public=yes
为了防止出现中文目录乱码的情况,在workgroup = WORKGROUP 处添加以下代码,?其中根据你的local,UTF-8 有可能需要改成 cp936。
workgroup = WORKGROUP
display charset = UTF-8
unix charset = UTF-8
dos charset = cp936
(4)重启
/etc/init.d/smbd start
可通过smbclient进行测试(安装命令apt-get install?smbclient)
smbclient?-L?//localhost/共享目录名
?
详细配置可参考
http://book.51cto.com/art/201108/282442.htm
?