一 安装环境:
虚拟机:RedHat 5.4 192.168.75.128
主机环境:WIN7 32bit 192.168.75.1
网络连接方式:NAT
二 安装步骤:
说明:
Ø samba-3.0.33-3.7.el5.i386.rpm:为Samba服务的主程序包。后面的数字为此包的版本号,要搭建Samba服务器,必须安装此软件包;
Ø samba-client-3.0.33-3.7.el5.i386.rpm:为连接服务器和连接网上邻居的客户端的Samba客户端工具;
Ø samba-common-3.0.33-3.7.el5.i386.rpm:存放通用的工具和库文件,通常此包必须安装;
Ø samba-swat-3.0.33-3.7.el5.i386.rpm:为服务器图形化管理工具,此包安装完成之后,用户可以通过IE或其它浏览器来对Samba服务器进行图形化管理。
1、安装Samba
用以下命令安装:
rpm –ivh samba-client-3.0.33-3.14.el5.i386.rpm
rpm –ivhsamba-3.0.33-3.14.el5.i386.rpm
rpm –ivhsamba-common-3.0.33-3.14.el5.i386.rpm
rpm –ivhsamba-swat-3.0.33-3.14.el5.i386.rpm
安装完成后,使用命令rpm -qa | grepsamba进行查询,发现搭建samba服务器所依赖的所有服务器都已经安装好了即可。
2、配置smb.conf文件
Samba的配置文件一般就放在/etc/samba目录中,主配置文件名为smb.conf,文件中记录着大量的规则和共享信息,所以是samba服务非常重要的核心配置文件,完成samba服务器搭建的大部分主要配置都在该文件中进行。
Samba服务器的工作原理是:客户端向Samba服务器发起请求,请求访问共享目录,Samba服务器接收请求,查询smb.conf文件,查看共享目录是否存在,以及来访者的访问权限,如果来访者具有相应的权限,则允许客户端访问,最后将访问过程中系统的信息以及采集的用户访问行为信息存放在日志文件中。
第一步:修改配置文件
首先备份一下samba的配置文件
cd /etc/samba
mv smb.conf smb.confbak
然后重新创建一个smb.conf文件
touch smb.conf
然后我们把这段写入smb.conf中
[global]
workgroup = WORKGROUP
netbios name = idylan008
server string = Linux Samba Server TestServer
security = share
[share]
path = /linuxshare
writeable = yes
browseable = yes
guest ok = yes
注解:
[global]这段是全局配置,是必段写的。其中有如下的几行;
workgroup 就是Windows中显示的工作组;在这里我设置的是LINUXSIR (用大写);
netbios name 就是在Windows中显示出来的计算机名; server string 就是Samba服务器说明,可以自己来定义;这个不是什么重要的; security 这是验证和登录方式,这里我们用了share ;验证方式有好多种,这是其中一种;另外一种常用的是user的验证方式;如果用share呢,就是不用设置用户和密码了;[share] 这个在Windows中显示出来是共享的目录;
path = 可以设置要共享的目录放在哪里; writeable 是否可写,这里我设置为可写; browseable 是否可以浏览,可以;可以浏览意味着,我们在工作组下能看到共享文件夹。如果您不想显示出来,那就设置为 browseable=noguest ok 匿名用户以guest身份是登录;
第二步:建立相应目录并授权;
[root@localhost~]# mkdir /linuxshare
[root@localhost ~]# id nobody
uid=99(nobody) gid=99(nobody)groups=99(nobody)[root@localhost~]# chown -R nobody:nobody /linuxshare
注释:
关于授权nobody,我们先用id命令查看了nobody用户的信息,发现他的用户组也是nobody,我们要以这个为准。有些系统nobody用户组并非是nobody ;
第三步:重启smbd和nmbd服务器:
[root@localhostmnt]# /etc/init.d/smb restart
三 故障检测与处理:
[root@localhost samba]# smbclient -L//idylan008
[root@localhost samba]# smbclient -L//idylan
注:idylan为主机算计名
检测发现,windows 无法正常读取\\192.168.75.128\linuxshare路径,
发现是SELINUX阻挡了。
关闭SELIUNX
[root@linux /]#getenforce ;查看当前状态
Enforcing
[root@linux /]#setenforce 0;
SELINUX几种状态表示:
enforcing:强制模式,代表 SELinux 运行中,且已经正确的开始限制 domain/type 了;
permissive:宽容模式:代表 SELinux 运行中,不过仅会有警告信息并不会实际限制 domain/type 的存取。这种模式可以运来作为 SELinux 的 debug 之用;
disabled:关闭,SELinux 并没有实际运行。
重新访问后:
--------------------------------
present by dylan.