RadHat系统下的Samba服务器的配置方法

来源:互联网 发布:java界面编程代码 编辑:程序博客网 时间:2024/06/10 23:25
     文件和打印机共享是局域网最常用的功能。同一网络下,如果所有的主机都是windows系统,那么很容易实现文件和打印机的共享,但在实际的网络中,不仅会有windows主机也还有linux主机,在这种情况下,Samba服务器就发挥了重大的作用:它其实是专门用于windows和linux之间进行共享文件和打印机的一个软件包,当然其功能远飞如此。这里我们主要介绍实现文件的共享功能。
     其中有一个非常重要协议SMB(Server Message Block),把linux伪装成windows一样使其和windows可以互相通信。
下面我们主要学习:
1、掌握Samba服务器的安装和配制方法。
2、掌握linux与windows的资源共享和互访方法。
3、了解使用Samba共享用户认证和文件系统

一、虚拟机的安装。这里虚拟机的安装比较简单:
 第一步:我们可以下载一个VMware Workstation(中文名“威睿工作站”),是一款功能强大的桌面虚拟计算机软件,提供用户可在单一的桌面上同时运行不同的操作系统,和进行开发、测试 、部署新的应用程序的平台。点击安装,网上有很多破解版的资源。
 第二步:安装虚拟机。
 (1)我们可以在Redhat官方网站或者Chinaunix论坛上下载RedHat的.iso镜像文件,进入VMware Workstation10操作平台,然后点击“创建新的虚拟机”:
 (2)可以选择典型或者选择“自定义(高级)(c)”,通常情况下选择典型,然后“下一步”:
 (3)选择“安装程序光盘映像文件(iso)(M)”,这一步把我们下载Redhat.iso文件加载到此处;
 (4)在”此虚拟机的内存“中,可以调节虚机的内存大小,参考PC机的实际内存大小,建议虚机的内存选择”2048“或者”4096“。一般选择2G,2048M就可以了然后选择”下一步“:
 (5)“已准备好创建虚拟机”,点击“完成”就可以完成创建虚拟机了。
 这时候需要等待一些时间,到这里我们的Redhat虚拟机就算安装成功了!
二、Samba服务器的安装:
 安装好虚拟机以后,我们需要查看系统内是否有安装samba服务器:
 (1)、检测samba有无安装
 rpm -q samba
 如果没有安装,则会显示“no samba package”.
 查看samba相关联的包
 rpm -qa | grep samba
 (2)、如果没有安装这里我们进行Samba服务器的安装;
 如果上面查询出由安装但是不完全的时候,我们需要对其进行卸载:卸载命令:
rpm -e samba.client-3.5.4  //等等一些;
 然后将含有samba服务器文件的的光盘文件挂载在系统的/mnt目录下,这里需要注意的是主要要把cdrom驱动器连接,在右下角有个光盘符号,必须设置为连接状态,
 不然这里会出现一个错误:你的分区总是挂载不上,总提示“mount:you must specify the filesystem type”的错误。
 然后在虚拟机设置里,将含有Samba.iso的文件加载到CDROM目录下。最后在使用命令:
 mount /dev/cdrom /mnt cd /mnt
 与Samba想关联的包一般放在/mnt/Server/Packages里面;
 我们可以用一下命令查询Smaba相关文件的信息:
 ls |grep samba
 这样就会列出与samba相关的包信息。
 然后我们用命令安装就可以了:
 rpm -ivh samba*;
 或者一个一个安装都行。到这里samba服务器就算安装完事了!
三、Red Hat Samba服务器的配置详解:
 1、Samba配置文件应存放在:
  /etc/samba/smb.conf    //一般其配置文件都放在这里面;
  如果不知道其路径;可以用find/whereis来查找;
 2、samba的配置文件:
  “#”注释的行,都是介绍信息和描述;
  “;”号来注释为有效设置行;

 3、设置格式:
  [段名]
  设置项=值;

 4、配置文件里包括五个设置段:
 (1)[global] 设置全局环境选项;整体设置;
  >workgroup= 指定工作域或组
  >server string =描述信息,在windows你登录以后,会有描述信息;
  >security:(samba主要用于内网)
   #share 去权限验证;
   #user  缺省的设置;由linux Samba服务器做验证;(推荐,在服务器端来验证,设置用户名和密码)
   #server 第三方主机验证;
   #domain  第三方主机验证,(第三方必须是windows域控制器)
   >>hosts allow= 限定主机访问  
     a、那些主机访问[允许优先,如果允许和禁止都有,那么是可以访问的]
     hosts allow 如果注释掉所有的主机都可以访问;192.168.12 192.168.13 www.baidu.com
     hosts deny  www.baidu.com //禁止百度访问 
     b、那些用户访问
 (2)[homes]设置用户宿主目录共享;[每一个用户都可以访问samba服务器你的宿主目录,默认是开启的]
  comment= Home[宿主目录的描述]
  browseable= no无权限共享目录隐藏,是否可看
  writeable= yes [只读或者可写的]
 (3)[printers] 设置打印机共享;
 (4)[sharefiles] 设置文件共享;

 (5)log file= 指定日志文件存放位置
    log file的启用十分有必要,可以知道有那些主机在访问该linux服务器。
    max log size= 58指定日志文件大小;
    如果超过了58k,则删除旧的存储新的;

  在查看配置文件的时候,由于文件里的注释比较多,我们可以将以#号开始的行都去掉:
 grep -V "^#" /etc/samba/smb.conf >/etc/samba/smb.conf
  另外一个比较好的习惯是,我们在修改配置文件的时候最好对文件进行备份。
  copy /etc/samba/smb.conf /etc/samba/smb.conf.bak
  配置完事儿以后我们可以通过下面的命令来检查语法错误:
  testparm//检查语法和目录
  输入回车看配置文件;
 5、启动、停止、重启samba服务:
 /etc/rc.d/init.d/smb start /etc/rc.d/init.d/smb stop /etc/rc.d/init.d/smb restart
 或者:
 service smb start service smb stop service smb restart
 Samba有两个守护进程:smbd 和nmbd
 ---smbd监听139TCP端口【处理 SMB请求包,负责用户验证和文件共享】
 ---nmbd监听137和138UDP端口【查看有哪些目录,用于处理浏览共享和计算机名称解析】
四、测试访问
 1、Windows客户端访问samba服务器共享资源:
 “开始” - “运行” ,输入 \\Samba服务器地址
 2、在linux查看Samba访问的客户端信息
 smbstatus
 查看日志:
ls /var/log/samba
 3、windows本地查看远程连接是否
 net use
 本地关闭远程连接:
 net use * /delete /y 
 再次登录:会话断开;这里主要是我们的用户改变的时候需要删除之前的用户信息,因为windows默认的情况下记录了上一次登录用户的信息,这里可以用下面
 两条命令可以避免重启机器。
 (1) net use * /delete /y    不用问我确认; (2) net use * /del     最后再确认: y;
这里比较完整地概括性叙述了Redhat系统和samba服务器的安装及应用!后面将会继续讲解一些细节问题。

原创粉丝点击