centos下samba配置

检测安装Samba服务
 
 (1).检查Samba服务包是否已安装:
       
rpm -qa | grep samba

     
 (2).如未安装,则插入第一张安装盘,执行:
       
mount /mnt/cdrom
       cd /cdrom/Redhat/RPMS

   
 (3).进入目录后安装Samba文件:
     注意:运Samba至少需要三个文件,分别为:
          samba-common-2.2.7a-7.9.0.i386.rpm    //服务器和客户端均需要的文件
          samba-2.2.7a-7.9.0.i386.rpm                  //服务器端文件
          samba-client-2.27a-7.9.0.i386.rpm          //客户端文件
     
     安装上述3个文件.      
     
rpm -ivh samba-common-2.2.7a-7.9.0.i386.rpm     //另外两个省略不写


 (4).安装完成后弹出光驱:
       
cd;eject



2.设置密码文件.
 
 (1).此设置的作用是将Linux中的系统用户(/etc/passwd)导入到samba密码文件中
     ( /etc/samba/smbpasswd)

       
cat /etc/passwd | mksmbpasswd.sh > /etc/samba/smbpasswd

 
 (2).接下来给smbpasswd等文件及文件夹设置访问权限.
       
chown root:root /etc/samba/smbpasswd
       chmod 600 /etc/samba/smbpasswd
       chmod 600 /etc/samba

     查看一下:
       
ll -d etc/samba

 
 (3).如果您想手动添加一个用户,则首先要保证Linux中该用户存在,步骤:
       
useradd austin
      passwd austin
      smbpasswd -a austin    //此步为添加Samba用户



3. 配置 /etc/samba/smb.conf文件.
 
 虽然文件内容众多,但需要改动的不多,一般为按需所配:
 
 (1).修改[global](全局配置参数)
     
     
workgroup = workgroup    //工作组名称
     
     server string = samba server %v at %h     //设置服务器名称.%v为版本号,%h为运行
                                                                     smb服务的主机名
     
     host allow = 192.168.80. 192.168.70.    //允许访问服务器的主机
     
     client code page = 939   //支持简体中文共享名

     
   上述四条为比较重要的.其他配置大家可按需按情况修改.
 

 (2).创建共享文件夹.
     
     由于用户使用权限有多种(读,写,执行),而又访问者又有多种(用户,组),所以创建共享资源的访问方式有多种,下面暂举几例:
     
  例一: 建立资源,使登陆到该服务器的用户均有权使用该空间(包括读,写)
       <1>.编辑smb.conf文件
           
vi smb.conf

           
[resource]
               comment = local resource        
               path = /var/samba/resource      
               read only = no                  
               public = yes                      //允许guest用户访问

       
       <2>. 建立共享文件夹
             
mkdir -p /var/samba/resource

       
       <3>. 由于任何人都能使用,所以得给该文件夹设置访问权限.  
             
chmod 707 /var/samba/resource

       
       <4>. 如果想在该文件夹中放置预共享文件,而又不想花
               时间从别的文件夹中cp过来,此时可以使用指针.
           
                比如想共享 /usr/share/doc中的文件,则可以:
             
                 
ln -s /usr/share/doc /var/samba/resource/doc

           
                 进入 /var/samba/resource ls一下,是不是出现指针文件了!

   例二: 建立一资源,只能让用户austin全权访问.
           <1>. 编辑smb.conf文件
               
vi smb.conf

                 
[austin]
                   comment = austin
                   path = /var/samba/austin
                   vaild users = smz           //只允许austin访问
                   public = no
                   writable = yes

           
           <2>. 建立共享文件夹
                 
mkdir -p /var/samba/austin

           
           <3>. 由于只能让austin使用,所以得给该文件夹设置访问权限.  
                 
chown austin:austin /var/samba/austin

                 
chmod 700 /var/samba/austin

                此时该文件夹属于austin用户,并且只能由austin用户访问.

   例三: 建立一资源,只能让root,zhang和wang访问.
           <1>. 编辑smb.conf文件
               
vi smb.conf

                 
[zhang wang]
                    comment = zhang wang
                    path = /var/samba/zhangwang
                    vaild users = zhang wang        
                    public = no
                    writable = yes
                    creat mask = 0707

           
           <2>. 建立共享文件夹
                 
mkdir -p /var/samba/zhangwang

           
           <3>. 给该文件夹设置访问权限.  
                 
chmod 707 /var/samba/zhangwang

                 此时该文件夹只能root,zhang,wang访问了.

    例四: 建立一资源,让指定的组group2中的用户访问.
           <1>. 编辑smb.conf文件
               
vi smb.conf

                 
[group]
                    comment = group2
                    path = /var/samba/group2
                    public = yes
                    writable = yes
                    write list = @group2         //设置读写访问用户列表

           
           <2>. 建立共享文件夹
                 
mkdir -p /var/samba/group2

           
           <3>. 给该文件夹设置访问权限.  
                 
chown group2.group2 /var/samba/group2

                 
chmod 770 /var/samba/group2

                此时该文件夹只能由group2中的用户访问了.


(3). 以上为创建共享文件夹,下面为创建共享打印机.
   
    <1>. 配置打印机的方面有很多,比如使用redhat-config-printer命令即可调出配置
             菜单.
   
    <2>. 当然smb.conf中也要设置啊:
         
     
[global]
         printcap name = /etc/printcap     //配置文件路径
         
       [printers]
         writable = no
         guest ok = yes                    //guest可用
         browseable = no                   //不可浏览
         ptrintable = yes
         path = /var/spool/samba          //队列位置
         printer admin = root             //打印机管理员

         
       其他配置不变或按情配置
       
       接下来再添加print驱动设置:
       
[print$]
          comment = printer drivers
          path = /etc/samba/drivers
          browseable = yes
          guest ok = no
          read only = yes
          write list = root

       
         接着创建drivers文件夹:
mkdir -p /etc/samba/drivers


         最后给用户准备打印机驱动,并启动打印共享:
         
cupsaddsmb -a -U root       //-a为共享所有打印机 -U为以root身份执行

                                                     
cupsaddsmb
命令


4. 测试并启动Samba服务器.
   
testparm //测试

   
service smb start
 
   
pstree | grep mbd   //查看是否启动




5. 访问Samba

(1). 从Windows端访问.
     使用"网络邻居"访问即可.
 
(2). 访问时可以使用IP地址,也可以使用主机名访问.
     
vi /etc/samba/lmhosts

       
192.168.80.35      smz_f91
          //创建主机名与IP的映射
     
     访问时,使用smbclient命令,使用方法如下:
       
       smbclient -L IP/主机名 [-U 用户名]              //浏览Linux/Windows资源列表
       
       smbclient -L 192.168.80.35                                 //浏览Linux
       
       smbclient -L 192.168.80.45 -U administrator       //浏览Windows
       
       smbclient //IP/共享文件夹名 -U 系统用户名        //详细查看某一共享资源的
                                                                                               内容
       
       smbclient //192.168.80.45/123 -U root/administrator      //以root或administrator身份
                                                                                   登陆45主机访问共享文件夹123

猜你喜欢

转载自liujianguangaaa.iteye.com/blog/992363