编者按:Linux是源代码开发运动的产物。自它诞生以来,无数爱好者们为它痴迷,关心爱护它,不断地为维护改进Linux系统而作出自己的努力。也因此,目前的Linux已经成为许多用户的爱机中的必备之物了。但是Windows的易用性也让大部分用户割舍不下。如何让使用微软系统的用户和爱好Linux的用户一起自由地分享资源呢?借助网络和Samba,可以轻易地实现。
一、Samba的基础知识
1.什么是Samba?
Samba 是一组软件包,运行于Linux系统中,用来实现与Windows系统之间的通信。它允许Linux系统出现在Windows的网络邻居中,使Windows 用户享受由Linux主机提供的文件与打印服务。
2.Samba能做什么?
Samba由两个主要程序组成,它们是smbd和nmbd。这两个守护进程在服务器启动到停止期间持续运行,功能各异。Smbd和nmbd使用的全部配置信息全都保存在smb.conf文件中。Smb.conf向smbd和nmbd两个守护进程说明输出什么以便共享,共享输出给谁及如何进行输出。
Samba提供了基于CIFS的四个服务:文件和打印服务、授权与被授权、名字解析、浏览服务。前两项服务由smbd提供,后两项服务则由nmbd提供。简单地说,smbd进程的作用是处理到来的SMB软件包,为使用该软件包的资源与Linux进行协商,nmbd进程使主机(或工作站)能浏览Linux服务器。
二、Samba的设置
用户可以使用“man swat”命令来设置Samba,由于swat的不足之处在于不能得到相关的解释,所以对初学者来说最好使用“vi /etc/smb.conf”来配置Samba,用户可从中得到相关解释,此处将对Samba中常用的配置作重点介绍。
用户使用vi编辑器对smb.conf文件进行编辑,可以添加、删除及修改smba提供的多种服务。Smb.conf一般位于/etc 目录下,在定制符合实际需求的smb.conf时,最好使用# cp /etc/smb.conf /etc/smb.conf.old <cr> 进行备份。
在缺省情况下,Red Hat Linux的samba在启动时就已投入运行。当我们修改了smb.conf后,必须重新启动samba服务,才能使修改有效。为此,可利用系统脚本来手工启动和停止samba。具体方法如下:
# /etc/rc.d/init.d/smb start <cr> (启动samba)
# /etc/rc.d/init.d/smb stop <cr> (停止samba)
1.全局参数的设置
该部分由[global]段完成Global的设置,该部分提供了全局参数,对samba的功能具有很大的影响,主要用来设置整个系统规则。[global]段主要内容有(注:在下面所有段的设置中,括号中的内容为注释部分):
[global]
workgroup=mygroup (提供NT域名或工作组名,mygroup是系统提供的缺省名字,用户可根据实际情况,给出与windows的域名或工作组名相同的名字,以指出samba将在该域或工作组范围中起作用。)
server string=samba server (指定服务信息通常为samba服务。)
hosts allow =163.1.1.5,163.1.1.8 (允许登录的Linux-samba的主机名单,用IP地址给出,多个IP地址用空格分开,不在名单中的主机将不能得到samba提供的服务。)
printcap name =/etc/printcap (指定printcap文件地址,通常为/etc/printcap,包含了Linux打印机的配置信息,在ReaHat linux中,lpd守护进程读取printcap文件的配置信息,然后监测系统的打印请求并管理打印进程。)
load printers =yes (允许使用共享打印机时,默认值为yes。)
security =user (指定安全模式。大多数用户使用user级的安全模式,samba用本地Unix口令文件验证。如果设置为server时,samba将用password server设定windows NT域服务器验证方式,格式为password server=NT域名。)
domain logons =yes (为从win95工作站登录samba提供域名登录服务,应使该项置为yes。)
新闻热点
疑难解答