Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2474004
  • 博文数量: 867
  • 博客积分: 10010
  • 博客等级: 上将
  • 技术积分: 9800
  • 用 户 组: 普通用户
  • 注册时间: 2006-07-27 14:44
文章分类

全部博文(867)

文章存档

2007年(6)

2006年(861)

我的朋友

分类: LINUX

2006-08-23 12:31:57

1.什么是Samba

Samba可以想象成一个局域网上的文件服务器。它可以为在同一个了网中的客户(如Win95、WinNT等)提供文件服务和打印服务。也就是说,Samba服务器可以让LINUX实现象Novell Netware文件服务器提供的功能。

2.Samba工作原理

    Samba的工作原理是,让NETBIOS(Windows95网络邻居的通讯协议)和SMA Server Message Block)这两个协议运行于TCP/IP通信协议之上,并且使用Windows 95的NETBEUI协议让LINUX可以在网络邻居上被Windows 95看到。

其中最重要的就是SMB协议(Server Message Block),这是一个用于不同计算机之间共享打印机、串行口和通讯抽象(如命名管道、邮件插槽等)的协议。SMB协议是一个非常重要的协议,在所有 的Microsoft Windows系列操作系统中广为应用。

Samba是SMB服务器在类UNIX系统上的实现。它是开放源代码的GPL自由软件。目前Samba可以在几乎所有的UNIX变种上运行。 

3.安装Samba服务器

    在RedHat LINUX操作系统中,只要在安装的时候选择了Samba,那么它就会在安装LINUX的同时安装Samba。如果没有选择的话,也可以在光盘上找到Samba的RPM安装包,使用RPM安装它就可以了。

4.配置Samba

    配置Samba的工作其实就是对它的配置文件smb.conf进行相应的设置。Smb.conf关系着Samba服务器的权限设置,以及共享的目录、打印机和机器所属的工作组等各种细致的选项。

    文件smb.conf的语法非常明确。文件被分成段,每一段的名字用一个方括号括起来。在每一段内用“名称=值”的格式来设置参数。最前面加分号表示该句为注释。在后面的讲述中,我们只说明最常用到的最基本的一些部分,而更加深入的设置,请大家阅读这个文件的注释段。

整个配置文件中最基本是三个特殊段。

    1.Global段:配置服务器在整个过程中用到的参数,并为其它段提供缺省值。

      [global]

      workgroup=MYGROUP

      ; hosts allow = 192.168.1. 192.168.2. 127.

      printcap name = /etc/printcap

      load printers = yes

      log file = /var/log/samba/log.%m

    1) 第一句workgroup用来指定机器在网络邻居所处的工作组。默认值为MYGROUP,大家可以根据自己的喜爱进行相应的修改。

    2) 而hosts allow是一个用来指定在局域网中哪些机器可以使用Samba服务的描述。一般情况,无须设置,所以最前面用一个“;”开始,表示将这句注释掉。

    3) 而第三句则是告诉Samba,打印机名称的位置。

    4) 第四行load printers = yes则是告诉Samba服务器,允许浏览所有的打印机。

    5) 最后一句则是指定了log日志文件的存放地址。

    2.Homes段:这个段是用来表示允许客户机连接的用户主目录。在smb.conf文件中没有这个目录的特定内容。当发出服务请求时,就在smb.conf文件的其它部分寻找这种特定的服务。如果没有发现这种服务,并且提供了homes段时,就搜索密码文件去发现用户的主目录。通过分解Homes段,Samba使用户主目录作为共享而使用。下面是这个段的最基本的几个设置。

      [homes]

      comment=Home Directory

      browseable=no

      writable=yes ) 其中comment提定客户机在服务器上可以使用的共享。

    2) browseable则设置Samba在网络浏览表是否显示目录,建议改为browseable=yes。

    3) 最后一句则是表示是否具有写权限。

    3. Printers段:设置打印机的共享状况。样板如下表所示:

      [printers]

      comment=All printers

      browseable=no

      printable=yes                    

    建议将browseable=no改为browseable=yes。

    一般地,在默认的smb.conf文件中已经做了最基本的设置,不加修改就可以应用在多种情况之中。所以建议初学者可以不用修改它。当然如果必要的话,可以参考注释语句进行一些尝试。

    也就是说,如果大家不对smb.conf作修改,客户机已经能够使用最基本的Samba服务.

4.启动Samba服务器

    启动Samba服务器的方法有两种。一种是standalone方式,另一种是Inted方式:

      启动方式         占有资源      反应速度

    Standalone方式       多            快

    Inted方式            少            慢

    我们建议使用Inted方式启动Samba服务器,要注意的是,我们不能同时采用两种方式运行,否则将造成Samba服务工作不政常。而默认状态下也是使用这种启动方式。

) 使用Inted方式启动:

    安装Samba时,会在/etc/services文件中增加类似的以下几行:

      netbios-ns   137/tcp

      netbios-ns   137/udp

      netbios-dgm  138/tcp

      netbios-dgm  138/udp

      netbios-ssn   139/tcp

      netbios-ssn   139/udp

    而在/etc/inetd.conf文件中也新增了以下几行:

      netbios-ssn   stream  tcp  nowait  root  /usr/sbin/smbd  smbd

      netbios-ns    dgram  udp  wait   root  /usr/sbin/nmdb  nmdb

    如果你想要用下一种方式启动,请在它们前面加上一个注释符号“#”,然后执行inetd命令使修改生效。

    2) 使用Standalone方式启动

    如果你要使用这种方式启动,请在/etc/rc.d/rc.local文件中加入以下几行:

       echo “Startting Samba Server……”

       /usr/local/samba/bin/smbd –D -d1

       /usr/local/samba/bin/nmbd –D –d1 –n LINUX

 5.使用Samba服务

    以Windows 9x为例,我们只要打开网上邻居,就可以发现一个新的工作组MYGROUP,下面还有这台LINUX主机。我们就可以使用Samba服务了

阅读(1085) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~