1.安装samba服务器

 
  
  • [root@d1 Packages]# rpm -qa |grep smb 
  • libsmbclient-3.5.4-68.AXS4.1.x86_64 
  • gvfs-smb-1.4.3-9.AXS4.x86_64 
  • gnome-vfs2-smb-2.24.2-6.AXS4.x86_64 
  • 注:在安装aisanux 4.0的时候,都会把所有的RPM包安装完毕了。除特殊情况外,都不用单独安装。

2.samba配置文件

samba主要的配置文件是/etc/samba/smb.conf,在基本的配置文件中,也只用到其中的一小部分命令选项。 由于SMB是一个非常复杂的协议,所以配置samba的工作就非常的繁琐,大约有超过180项配置项出现smb.conf文件中。该文件有一个清晰的语法结构,与windows的*.ini文件十分类似。文件被分隔成若干节,每一节都由一个被方括号括起来的标志开始(如,[global].[home].[printers]),每一个配置参数或是一个全局参数(影响或控制整个服务器),或是一个服务参数(影响或控制服务器提供的某项服务)。global部分定义的参数用来控制samba的总特性,除该部分外,每一部分都定义了一个专门的服务。查看配置文件:

 

 
  

[root@d1 samba]# grep -v ‘^#’ /etc/samba/smb.conf |grep -v ‘^$’ 

  1.  
  2.  
  3.  
  4. # 忽略了注释配置的samba文件#
  5. #--------------- 
  6. # SELINUX NOTES: 
  7. # 
  8. # If you want to use the useradd/groupadd family of binaries please run: 
  9. # setsebool -P samba_domain_controller on 
  10. # 
  11. # If you want to share home directories via samba please run: 
  12. # setsebool -P samba_enable_home_dirs on 
  13. # 
  14. # If you create a new directory you want to share you should mark it as 
  15. # "samba-share_t" so that selinux will let you write into it. 
  16. # Make sure not to do that on system directories as they may already have 
  17. # been marked with othe SELinux labels. 
  18. # 
  19. # Use ls -ldZ /path to see which context a directory has 
  20. # 
  21. # Set labels only on directories you created! 
  22. # To set a label use the following: chcon -t samba_share_t /path 
  23. # 
  24. # If you need to share a system created directory you can use one of the 
  25. # following (read-only/read-write): 
  26. # setsebool -P samba_export_all_ro on 
  27. # or 
  28. # setsebool -P samba_export_all_rw on 
  29. # 
  30. # If you want to run scripts (preexec/root prexec/print command/...) please 
  31. # put them into the /var/lib/samba/scripts directory so that smbd will be 
  32. # allowed to run them. 
  33. # Make sure you COPY them and not MOVE them so that the right SELinux context 
  34. # is applied, to check all is ok use restorecon -R -v /var/lib/samba/scripts 
  35. # 
  36. #-------------- 
  37. # 
  38. #======================= Global Settings ===================================== 
  39.  
    • #这个是配置文件关于全局参数的设置部分      
    •  
    •  
    •  
    •  
    •  
    •  
    • [global]
    •      
    • # ----------------------- Netwrok Related Options ------------------------- 
    • # 
    • # workgroup = NT-Domain-Name or Workgroup-Name, eg: MIDEARTH 
    • # 
    • # server string is the equivalent of the NT Description field 
    • # 
    • # netbios name can be used to specify a server name not tied to the hostname 
    • # 
    • # Interfaces lets you configure Samba to use multiple interfaces 
    • # If you have multiple network interfaces then you can list the ones 
    • # you want to listen on (never omit localhost) 
    • # 
    • # Hosts Allow/Hosts Deny lets you restrict who can connect, and you can 
    • # specifiy it as a per share option as well 
    • # 
    • #这是设置服务器所要加入的工作组的名称,会再windows 的“网上邻居”中看到MYGROUP工作组,可以再此处设置所需要
    • 的工作组名称
    •  workgroup = MYGROUP
    •  
      •  # 这是设置服务器主机的说明信息,当在windows的“网上邻居”中打开samba上设置工作时,在windows的资源管理器窗口
      • 会列出“名称”和“备注”栏,其中“名称”栏会显示samba服务器的NetBIos名称,而“备注”栏则显示此处设置的“samba
      • server”.当然,可以修改默认的“samba server ”,使用自己的描述信息。   
      •  
      •  
      •  
      •  
      •  server string = d1
      •  
      • #设置出现在“网上邻居” 中的主机名。默认情况下,使用真正的主机名  
      •  
      •  
      •  
      •  
      •   netbios name = samba24
      •  
      • ;    interfaces = lo eth0 192.168.12.2/24 192.168.13.2/24 
      • #这里是设置允许什么样的IP地址的主机访问samba服务器。默认情况下,hosts allow选项被注视,表示允许所有的Ip地
        址的主机访问
        ;   hosts allow = 127. 192.168.228. 
      •      
      • # --------------------------- Logging Options ----------------------------- 
      • # 
      • # Log File let you specify where to put logs and how to split them up. 
      • # 
      • # Max Log Size let you specify the max size log files should reach 
      •      
      •     # logs split per machine
      • #设置日志文件的路径,这一选项要求samba服务器为每一台连接的机器使用一个单独的日志文件,指定文件的位置,名称
      • samba会自动将%m转换成连接主机的NetBIOS名
        log file = /var/log/samba/log.%m 

      •     # max 50KB per log file, then rotate 

      •   #指定日志文件的最大容量(以KB),设置为50KB
      •   max log size = 50 
      •      
      • # ----------------------- Standalone Server Options ------------------------ 
      • # 
      • # Scurity can be set to user, share(deprecated) or server(deprecated) 
      • # 
      • # Backend to store user information in. New installations should 
      • # use either tdbsam or ldapsam. smbpasswd is available for backwards 
      • # compatibility. tdbsam requires no further configuration. 
      •  
      •     security = user 
      •     passdb backend = tdbsam 
      •  
      •  
      • # ----------------------- Domain Members Options ------------------------ 
      • # 
      • # Security must be set to domain or ads 
      • # 
      • # Use the realm option only with security = ads 
      • # Specifies the Active Directory realm the host is part of 
      • # 
      • # Backend to store user information in. New installations should 
      • # use either tdbsam or ldapsam. smbpasswd is available for backwards 
      • # compatibility. tdbsam requires no further configuration. 
      • # 
      • # Use password server option only with security = server or if you can't 
      • # use the DNS to locate Domain Controllers 
      • # The argument list may include: 
      • #   password server = My_PDC_Name [My_BDC_Name] [My_Next_BDC_Name] 
      • # or to auto-locate the domain controller/s 
      • #   password server = * 
      •      
      •      
      • ;    security = domain 
      • ;    passdb backend = tdbsam 
      • ;    realm = MY_REALM 
      •  
      • ;    password server = <NT-Server-Name> 
      •  
      • # ----------------------- Domain Controller Options ------------------------ 
      • # 
      • # Security must be set to user for domain controllers 
      • # 
      • # Backend to store user information in. New installations should 
      • # use either tdbsam or ldapsam. smbpasswd is available for backwards 
      • # compatibility. tdbsam requires no further configuration. 
      • # 
      • # Domain Master specifies Samba to be the Domain Master Browser. This 
      • # allows Samba to collate browse lists between subnets. Don't use this 
      • # if you already have a Windows NT domain controller doing this job 
      • # 
      • # Domain Logons let Samba be a domain logon server for Windows workstations. 
      • # 
      • # Logon Scrpit let yuou specify a script to be run at login time on the client 
      • # You need to provide it in a share called NETLOGON 
      • # 
      • # Logon Path let you specify where user profiles are stored (UNC path) 
      • # 
      • # Various scripts can be used on a domain controller or stand-alone 
      • # machine to add or delete corresponding unix accounts 
      • # 
      • ;    security = user 
      • ;    passdb backend = tdbsam 
      •      
      • ;    domain master = yes 
      • ;    domain logons = yes 
      •      
      •     # the login script name depends on the machine name 
      • ;    logon script = %m.bat 
      •     # the login script name depends on the unix user used 
      • ;    logon script = %u.bat 
      • ;    logon path = \\%L\Profiles\%u 
      •     # disables profiles support by specifing an empty path 
      • ;    logon path =           
      •      
      • ;    add user script = /usr/sbin/useradd "%u" -n -g users 
      • ;    add group script = /usr/sbin/groupadd "%g" 
      • ;    add machine script = /usr/sbin/useradd -n -c "Workstation (%u)" -M -d /nohome -s /bin/false "%u" 
      • ;    delete user script = /usr/sbin/userdel "%u" 
      • ;    delete user from group script = /usr/sbin/userdel "%u" "%g" 
      • ;    delete group script = /usr/sbin/groupdel "%g" 
      •      
      •      
      • # ----------------------- Browser Control Options ---------------------------- 
      • # 
      • # set local master to no if you don't want Samba to become a master 
      • # browser on your network. Otherwise the normal election rules apply 
      • # 
      • # OS Level determines the precedence of this server in master browser 
      • # elections. The default value should be reasonable 
      • # 
      • # Preferred Master causes Samba to force a local browser election on startup 
      • # and gives it a slightly higher chance of winning the election 
      • ;    local master = no 
      • ;    os level = 33 
      • ;    preferred master = yes 
      •      
      • #----------------------------- Name Resolution ------------------------------- 
      • # Windows Internet Name Serving Support Section: 
      • # Note: Samba can be either a WINS Server, or a WINS Client, but NOT both 
      • # 
      • # - WINS Support: Tells the NMBD component of Samba to enable it's WINS Server 
      • # 
      • # - WINS Server: Tells the NMBD components of Samba to be a WINS Client 
      • # 
      • # - WINS Proxy: Tells Samba to answer name resolution queries on 
      • #   behalf of a non WINS capable client, for this to work there must be 
      • #   at least one    WINS Server on the network. The default is NO. 
      • # 
      • # DNS Proxy - tells Samba whether or not to try to resolve NetBIOS names 
      • # via DNS nslookups. 
      •      
      • ;    wins support = yes 
      • ;    wins server = w.x.y.z 
      • ;    wins proxy = yes 
      •      
      • ;    dns proxy = yes 
      •      
      • # --------------------------- Printing Options ----------------------------- 
      • # 
      • # Load Printers let you load automatically the list of printers rather 
      • # than setting them up individually 
      • # 
      • # Cups Options let you pass the cups libs custom options, setting it to raw 
      • # for example will let you use drivers on your Windows clients 
      • # 
      • # Printcap Name let you specify an alternative printcap file 
      • # 
      • # You can choose a non default printing system using the Printing option 
      •   #允许共享打印机,指定是否要加载打印机(使打印机可以共享)。默认值为yes.如果用户想要自动加载打印表,而不是个别地安装,
        则必须在此指定以上两项。    
      •     load printers = yes 
      •   # 
         cups options = raw 
      •  #设置打印机配置温家安路径,这是指定打印机配置文件的位置。打印守护进程读取printcap文件中的配置信息,监视打印机的工作情况
      • ;    printcap name = /etc/printcap 
      •     #obtain list of printers automatically on SystemV 
      • ;    printcap name = lpstat 
      • #设置打印机系统类型,只有在打印系统部是标准的情况下,必须指定;否则 不必指定。指定打印系统类型将影响到smb.conf文件中与打
        印机相关的命令(如print、lpq、lppause及plresune)的执行方式。默认的打印系统类型为cups
        ;    printing = cups 
      •  
      • # --------------------------- Filesystem Options --------------------------- 
      • # 
      • # The following options can be uncommented if the filesystem supports 
      • # Extended Attributes and they are enabled (usually by the mount option 
      • # user_xattr). Thess options will let the admin store the DOS attributes 
      • # in an EA and make samba not mess with the permission bits. 
      • # 
      • # Note: these options can also be set just per share, setting them in global 
      • # makes them the default for all shares 
      •  
      • ;    map archive = no 
      • ;    map hidden = no 
      • ;    map read only = no 
      • ;    map system = no 
      • ;    store dos attributes = yes 
      •  
      •  
      • #============================ Share Definitions ============================== 
      •      
      • [homes] 
      •     comment = Home Directories
      •     browseable = no 
      •     writable = yes 
      • ;    valid users = %S 
      • ;    valid users = MYDOMAIN\%S 
      •      
      • [printers] 
      •     comment = All Printers 
      •     path = /var/spool/samba 
      •     browseable = no 
      •     guest ok = no 
      •     writable = no 
      •     printable = yes 
      •      
      • # Un-comment the following and create the netlogon directory for Domain Logons 
      • ;    [netlogon] 
      • ;    comment = Network Logon Service 
      • ;    path = /var/lib/samba/netlogon 
      • ;    guest ok = yes 
      • ;    writable = no 
      • ;    share modes = no 
      •      
      •      
      • # Un-comment the following to provide a specific roving profile share 
      • # the default is to use the user's home directory 
      • ;    [Profiles] 
      • ;    path = /var/lib/samba/profiles 
      • ;    browseable = no 
      • ;    guest ok = yes 
      •      
      •      
      • # A publicly accessible directory, but read only, except for people in 
      • # the "staff" group 
      • ;    [public
      • ;    comment = Public Stuff 
      • ;    path = /home/samba 
      • ;    public = yes 
      • ;    writable = yes 
      • ;    printable = no 
      • ;    write list = +staff 
      •  
      •  
      •  
      •  
      •  
      •  
      •  
      •  
      •  

 

 

由于时间关系,待续。。。。。。。。。