精华区 [关闭][返回]

当前位置:网易精华区>>讨论区精华>>电脑技术>>● FreeBSD>>网络书籍>>《FreeBSD使用大全》>>FreeBSD连载(66):安装samba

主题:FreeBSD连载(66):安装samba
发信人: Hopper()
整理人: hahalee(2000-02-28 20:03:34), 站内信件
http://www.sina.com.cn 2000年1月7日 13:42 王波

配置和使用Samba
  FreeBSD下实现SMB/CIFS协议的软件为samba ── 一个可以运行在很多种Un
ix系统中的著名自由软件,它使得Unix对外如同一个Lan Manager服务器,向Win
dows客户提供文件和打印服务。 Samba的当前版本为2.0,在FreeBSD下可以通过
Packages Collection或Ports Collection进行安装。

  samba的主页为http://samba.org,包括有大量samba的资源。

  虽然SMB协议主要用于Microsoft网络,但samba的出现与其无关。它是作者A
ndrew Tridgell 试图在一台Sun工作站上完成DEC Pathworks功能的尝试,以完成
他的其他研究工作。Pathworks 是另一个基于SMB的服务器。那时Andrew Tridge
ll对SMB和NetBIOS一无所知,但通过分析DOS客户端和Pathworks的行为,他完成
了Samba的最初版本。此后随着越来越多的人加入Samba的开发,Microsft也公开
了SMB的文档,Samba也越来越完善。使用Samba的使用者一般都会使用过Windows
 NT等其他SMB服务器,根据他们的经验,Samba服务器的性能要超过其他的各种S
MB服务器,包括Windows NT。

  samba软件的主要组成部分有:

  smbd:这就是samba的SMB服务器,它使用SMB协议与客户连接,完成事实上的
用户认证、权限管理和文件共享任务;

  nmbd:提供NetBIOS名字服务的守护进程,可以帮助客户定位服务器和域,如
同Windows NT上的WINS服务器;

  smb.conf:是samba的配置文件,在FreeBSD中它被放在/usr/local/etc目录
中。

  swat:是一个Samba专用的WWW服务器,用于通过客户浏览器配置samba,提供
了对Samba的图形配置界面;

  smbclient:是一个简单的SMB客户程序,用于访问其他SMB计算机共享的文件
或打印资源,例如Windows95 或NT计算机,它的操作和ftp类似。

  smbprint:一个shell脚本,它使用smbclient向Windows计算机上共享出的打
印机上发送要打印的文档。

  nmblookup:用于查询NetBIOS名字的命令行工具。


安装samba

当使用Packages Collection安装了Samba之后,将自动安装一个启动脚本samba.
sh.sample到/usr/local/etc/rc.d目录中,可以将其更名为samba.sh,用于计算
机启动时自动启动samba服务器smbd和nmbd。但要启动samba,还需要更改/usr/l
ocal/etc/目录下的配置文件smb.conf,安装程序将自动安装一个样例文件smb.c
onf.default,可以将其复制为smb.conf文件,然后再进行修改。

# pkg_add samab-2.0.2.tgz
# cd /usr/local/etc
# cp smb.conf.default smb.conf
# cd rc.d
# cp samba.sh.sample samba.sh
# sh samba.sh
Samba
 
 

  为了正常使用samba,必须对smb.conf进行配置,可以直接编辑配置文件,或
者使用图形设置界面进行设置。由于samba是一个非常流行的SMB服务器,因此存
在多种图形界面的配置程序,samba2.0本身提供的 swat就是其中的一种,它作为
一个Web服务器,可以通过WWW浏览器来配置smb.conf。但是即使能通过图形界面
进行设置,但手工编辑smb.conf仍然是最基本的设置方式。

  如同上面的执行命令中所显示的,缺省的smb.conf就正常启动samba服务器,
只是缺省配置并不一定适合用户的具体设置情况。例如域(或工作组)名字缺省
为MYGROUP,而实际网络中则不一定使用这个名字。下面的命令使用Samba提供的
smbclient客户程序,查看缺省smb.conf启动的samba服务器的设置。

# smbclient -L localhost -U%
Added interface ip=202.102.245.60 bcast=202.102.245.255 nmask=255.255.
255.0
Domain=[MYGROUP] OS=[Unix] Server=[Samba 2.0.2]

        Sharename      Type      Comment
        ---------      ----      -------
        IPC$           IPC       IPC Service (Samba Server)
        ascii          Printer   lj5gray-a4-ascii-mono
        lp2            Printer   lj5gray-a4-auto-mono
        lj5gray-a4-ra  Printer   lj5gray auto raw
        wb             Disk      Home Directories

        Server               Comment
        ---------            -------
        fbsdsrv              Samba Server

        Workgroup            Master
        ---------            -------
        MYGROUP 
 
 

  从这个输出结果可以看出,缺省使用的工作组为MYGROUP,提供共享的资源有
IPC$,用户个人目录wb,以及系统中存在的多个打印机资源。samba使用计算机的
hostname生成它NetBIOS名字fbsdsrv。 

  最一般的情况下,只需要将工作组名字改动为与具体网络使用的名字相一致
,就能使得使用Windows计算机的客户正常访问samba服务器了,用户在登录Wind
ows的时候,使用自己在samba所在的Unix服务器上的用户名和口令登录,那么就
可以访问samba服务器上自己的个人目录及打印机资源了。

  FreeBSD将Samba的文档安装到/usr/local/share/doc/samba目录下,一些设
置文件的例子被安装到/usr/local/share/examples/samba目录下,这些文档和例
子对于理解SMB协议,正确设置Samba都是非常重要的参考资料。


启动samba方式

启动samba的基本方法是使用Package中提供的shell程序 ── 安装在/usr/loca
l/etc/rc.d目录下的samba.sh。这个程序将会以守护进程的方式启动smbd和nmbd
两个守护进程(启动时使用-D参数)。这样在计算机启动时就能自动启动samba服
务器。

除了直接启动之外,还可以使用超级服务器inetd来启动samba,这时inetd.conf
中应该包括以下行:

netbios-ssn    stream    tcp  nowait   root /usr/local/sbin/smbd     s
mbd
netbios-ns     dgram     udp  wait  root /usr/local/sbin/nmbd     nmb
d
 
 

  其中netbios-ssn和netbios-ns是在/etc/services中定义的两个用于NetBIO
S 的端口,一个用于NetBIOS会话管理,一个用于NetBIOS名字解析。当这两个端
口就被inetd占据之后,使用上面启动脚本或直接启动smbd和nmbd就无法成功。但
由于inetd效率较低,启动服务器较慢,这种配置只适合偶尔共享自己的文件的计
算机,不适合会被频繁访问的文件/打印服务器。

  当使用samba.sh启动samba之后(或者使用inetd来启动samba),就可以从W
indows 客户机的网络邻居中发现这个FreeBSD服务器。或者使用net use命令直接
访问服务器。

  由于一般在Windows中没有配置WINS服务器,那么就可能会出现名字解析的问
题。为了帮助进行名字解析,可以在Windows的lmhosts文件中增加samba服务器的
NetBIOS名字和IP配置,帮助Windows 解析名字。或者使用samba作为NBNS服务器


  samba在/var/log下留下了大量的访问日志文件,日志文件的名字在smb.con
f中定义。通常日志文件以log开头,以用户名或计算机的NetBIOS为后缀,例如一
台计算机NetBIOS名字为cca,那么它访问这台服务器的日志文件就为log.cca。


未完,待续。。。  



--
小多子:你知道我们佟家百年不衰的道理么?
        那就是,不要一条路走到黑!

※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 202.96.190.123]

[关闭][返回]