1、Samba服务的安装
       默认情况下,Red Hat Enterprise Linux 5安装程序没有安装Samba服务,可使用下面的命令检查系统是否已经安装了Samba或查看已经安装了何种版本。
 rpm -q samba
       如果系统还没有安装Samba服务。如果现在要安装,可将Red Hat Enterprise Linux 5的第2张安装盘放入光驱,加载光驱后在光盘的Server目录下找到Samba服务程序的RPM安装包文件samba-3.0.23c-2.i386.rpm,然后使用下面的命令安装Samba。
 rpm -ivh /mnt/Server/samba-3.0.23c-2.i386.rpm
2、Samba服务的主配置文件
     Samba服务的主配置文件/etc/samba/smb.conf由两部分构成。
Global Settings
      该设置都是与Samba服务整体运行环境有关的选项,它的设置项目是针对所有共享资源的。
Share Definitions
      该设置针对的是共享目录个别的设置,只对当前的共享资源起作用。
3、Samba服务的密码文件
     与Samba服务相关的密码文件共有两个。
         /etc/samba/smbpasswd
         /etc/samba/smbusers
4、Samba服务的日志文件
      Samba服务的日志默认存放在/var/log/samba目录中,Samba服务为所有连接到Samba服务器的计算机建立个别的日志文件,同时也将NMB服务和SMB服务的运行日志分别写入nmbd.log和smbd.log日志文件中 。
5、Samba服务的文件共享
 全局参数
设置Samba服务器所属的群组名称或Windows的域名
workgroup = MYGROUP
设置Samba服务器的简要说明
server string = Samba Server
设置可访问Samba服务器的主机、子网或域
hosts allow = 192.168.1. 192.168.2. 127.
设置Samba服务启动时,将自动加载的打印机配置文件
printcap name = /etc/printcap
设置是否允许打印配置文件中的所有打印机开机时自动加载
load printers = yes
设置guest账号名
guest account = pcguest
指定Samba服务器使用的安全等级
security = user
Samba服务器的安全等级共有以下5类。
(1)share安全等级
(2)user安全等级
(3)server安全等级
(4)domain安全等级
(5)ads安全等级
有多个网卡的Samba服务器设置需要监听的网卡
interfaces = 网卡IP地址或网络接口
设置Samba服务器同时充当WINS服务器
wins support = yes
设置WINS服务器的IP地址
wins server = w.x.y.z
用户映射
用户映射通常是在Windows和Linux主机之间进行。两个系统拥有不同的用户账号,用户映射的目的就是将不同的用
户映射成为一个用户。做了映射后的Windows账号,在使用Samba服务器上的共享资源时,可以直接使用Windows账号进行访问。 要使用用户映射,只需将smb.conf配置文件中username map = /etc/samba/smbusers前的注释符号“;”去除 。 然后编辑文件/etc/samba/smbusers,将需要映射的用户添加到文件中。参数格式为:
 单独的Linux账号 = 要映射的Windows账号列表
使用加密口令
全局参数“encrypt password”设置项可用来指定用户的密码是否以加密的方式发送到Samba服务器,默认值是使用
此功能。参数格式如下: encrypt password = yes或no 使用“yes”表示采用加密的方式发送密码,使用“no”则相
反。Windows操作系统也是采用加密的方式发送密码。如果此参数设置为“no”的话,就必须修改Windows系统的注册表。为了简化用户的操作,Samba提供了多种Windows操作系统类型的注册表文件,这些文件存放在/usr/share/doc/samba-3.0.23c/registry目录中 。
共享目录
设置用户个人的主目录
它的相关设置项目如图所示。
6、Samba服务的打印共享
与共享打印有关的配置文件主要是在smb.conf中的[printers]配置项中。配置参数与共享目录是基本相同的 。
7、启动和停止Samba服务
启动Samba服务
/etc/rc.d/init.d/smb start
停止Samba服务
etc/rc.d/init.d/smb stop
重新启动Samba服务
/etc/rc.d/init.d/smb restart
自动启动Samba服务
如果需要让Samba服务随系统启动而自动加载,可以执行“ntsysv”命令启动服务配置程序,找到“smb”服务,在其前面加上“*”星号,然后选择“确定”即可 。
8、Linux客户端的访问
利用主机名访问共享资源
如果用户需要利用主机名访问共享资源的话,可以设置lmhosts文件来实现。它的功能与WINS服务器类似,就是提供主机名与IP地址的对应数据。
该文件的存放位置为:/etc/samba/lmhosts。
每条记录的格式为:
IP地址  主机名(NetBIOS名称)
smbclient
默认情况下,Red Hat Enterprise Linux安装程序会将smbclient安装在系统上,读者可使用下面的命令检查系统
是否已经安装了smbclient或查看已经安装了何种版本。
 rpm -q samba-client
 如果系统还未安装smbclient,应将Red Hat Enterprise Linux 5的第1张安装盘放入光驱,加载光驱后在光盘的
Server目录下找到smbclient的RPM安装包文件samba-client-3.0.23c-2.i386.rpm,使用下面命令安装smbclient。
 rpm -ivh /mnt/Server/ samba-client-3.0.23c-2.i386.rpm
smbclient的访问命令格式如下。
列出目标主机共享资源列表
smbclient  -L  //主机名或IP地址 -U 登录用户名
使用共享资源
smbclient    //主机名或IP地址/共享目录名 -U 登录用户名
smbmount/ smbumount
 在Linux服务器或客户端上,可以利用smbmount命令
将共享资源加载到本机,利用smbumount命令将已加
载的共享资源卸载。
 命令格式为:
 smbmount  共享资源地址   加载点    –o   参数
 smbumount 加载点
9、Windows客户端的访问
 Windows的客户端不需要更改任何设置, 就可以在“网上邻居”中打开在3.4.1节定义的工作组查看到安装了
Samba的Linux服务器,或选择菜单“开始→运行”,在打开的“运行”窗口中输入“\\服务器名”或“\\服务器IP地址”,然后单击“确定”按钮即可。
  
samba是连接unix系统和windows系统的桥梁.
      samba的一些简单配置:
   samba的配置文件在/etc/samba/这个文件夹中.
   先介绍一下smb帐号的建立,用useradd增加一个帐号
   再用smbadduser这个命令增加smb的帐号
  [root@localhost /]# cd /etc/samba
  [root@localhost samba]# ls
  lmhosts  secrets.tdb  smb.conf  smbpasswd  smbusers
  我们开始编辑smb.conf这个文件夹.
  我们以建立一个叫test的文件夹来举例子.并这个文件夹只有test能编辑其他人只能看.
我们建立2个smb的帐号,叫test和test1
[root@localhost home]# mkdir test      在/home下建立一个叫test的文件夹
[root@localhost home]# cd /etc/samba  
[root@localhost samba]# vi smb.conf    编辑
# Any line which starts with a ; (semi-colon) or a # (hash)
# is a comment and is ignored. In this example we will use a #
# for commentry and a ; for parts of the config file that you
# may wish to enable
#
# NOTE: Whenever you modify this file you should run the command "testparm"
# to check that you have not made any basic syntactic errors.
#
#======================= Global Settings =====================================
[global]
        log file = /var/log/samba/%m.log
        smb passwd file = /etc/samba/smbpasswd
        load printers = yes
        passwd chat = *New*password* %n\n *Retype*new*password* %n\n *passwd:*all*authentication*tokens*updated*successfully*
        socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
        obey pam restrictions = yes
        username map = /etc/samba/smbusers
        encrypt passwords = yes
# This is the main Samba configuration file. You should read the
# smb.conf(5) manual page in order to understand the options listed
# here. Samba has a huge number of configurable options (perhaps too
# many!) most of which are not shown in this example
#
# Any line which starts with a ; (semi-colon) or a # (hash)
# is a comment and is ignored. In this example we will use a #
# for commentry and a ; for parts of the config file that you
# may wish to enable
#
# NOTE: Whenever you modify this file you should run the command "testparm"
# to check that you have not made any basic syntactic errors.
#
#======================= Global Settings =====================================
[global]
        log file = /var/log/samba/%m.log
        smb passwd file = /etc/samba/smbpasswd
        load printers = yes
        passwd chat = *New*password* %n\n *Retype*new*password* %n\n *passwd:*all*authentication*tokens*updated*successfully*
        socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
        obey pam restrictions = yes
        username map = /etc/samba/smbusers
        encrypt passwords = yes
        passwd program = /usr/bin/passwd %u
        dns proxy = no
        server string = Samba Server
        printing = cups
        unix password sync = yes
        workgroup = MYGROUP
        os level = 20
        printcap name = /etc/printcap
        max log size = 0
        pam password change = yes
上面是smb.conf的基本配置.
我们在smb.conf的最后面插入下面几条.
[TEST]                            这个是共享出来的文件夹的名字
valid users = test,test1          这个是那些能访问的帐号的名单
writeable = yes                   是否可以用smb帐号编辑
available = yes                  是否共享
browseable  = yes              是否用户可以看到此共享资源
path = /home/test                 这个是路径
好了这样我们建立好一个共享文件夹了.简单吧.
最后把smb服务重起一下:/etc/rc.d/init.d/smb restart
 
#useradd liujia               #添加本地系统用户帐户
#passwd liujia                #添加本地系统用户帐户密码
#smbpasswd -a liujia             #添加samba帐户,一定要加-a
 
testparm /etc/samba/smb.conf liujia ipaddress#测试liujia这个帐户