Linux中samba服务器的搭建
一、先查看系统中是否安装有samba服务相关的软件包
1 [root@S2 samba]# rpm -qa|grep samba 2 samba-3.6.23-45.el6_9.x86_64 3 samba-winbind-3.6.23-45.el6_9.x86_64 4 samba-common-3.6.23-45.el6_9.x86_64 5 samba-client-3.6.23-45.el6_9.x86_64 6 samba-winbind-clients-3.6.23-45.el6_9.x86_64
samba-3.6.23-45.el6_9.x86_64 //服务器端软件,主要提供samba服务器的守护程序,共享文档,日志的轮替
samba-common-3.6.23-45.el6_9.x86_64 //主要提供samba服务器的设置文件与设置文件语法检验程序testparm
samba-client-3.6.23-45.el6_9.x86_64 //客户端软件,主要提供linux主机作为客户端时,所需要的工具指令集
二、使用yum进行包的安装(这样可以解决包之间的依赖关系),当然也可以使用rpm的方式单个进行安装
yum install -y samba
安装成功之后,系统会生成服务的配置文件和一些命令工具
/etc/samba/smb.conf //是samba服务的主配置文件
/etc/init.d/smb //是samba的启动/关闭文件
三、查看服务的启动情况,设置服务开机自动启动
[root@S2 .ssh]# service smb start
设置开机自动启动
[root@S2 samba]# chkconfig --level 35 smb on
四、修改smb服务配置文件
[global] //设置samba服务整体环境 workgroup = WORKGROUP //设置工作组名称 server string = Samba Server Version %v //服务器说明 [laiGei] //共享目录的名称 comment = Public stuff //注释说明 path = /usr/local/laige //共享目录的路径 public = yes //是yes/否no公开共享,若为否则进行身份验证(只有当security = share 时此项才起作用) writeable = yes //是yes/否no不以只读方式共享当与read only发生冲突时,无视read only browseable = yes //是yes/否no在浏览资源中显示共享目录,若为否则必须指定共享路径才能存取 guest ok = yes //是yes/否no公开共享,若为否则进行身份验证(只有当security = share 时此项才起作用)
共享的目录的路径是/usr/local/laige, 对外的名称是laiGe
配置文件修改完成之后,重启一下服务
[root@S2 samba]# service smb restart
五、添加一个共享用户
用来访问共享文件先添加一个普通用户 (因为要添加的共享用户必须是系统用户)
# useradd laige //因为不需要在shell中登录,所以可以不设置密码 然后使用smbpasswd添加共享用户并设置密码 # smbpasswd -a laige
六、使用windows来访问linux中的samba服务器(网络互通的情况下)
ps:有几个只需要注意的问题:
1,防火墙要关闭, # service iptables stop
2,selinux要设置成disabled,路径是/etc/sysconfig/selinux
3,注意共享目录的权限设置
4,要设置成不需要用户名密码直接访问,需要修改配置文件,将security设置成security = share。
使用smbpasswd添加共享用户的常用方法:
smbpasswd -a 添加用户(被添加用户必须是系统用户)
smbpasswd -d 冻结用户 (这个用户不能用了)
smbpasswd -e 恢复用户 (将冻结的用户解冻)
smbpasswd -n 将用户密码设置为空
smbpasswd -x 删除用户
出现问题:
1、访问的时候无法在目录下创建文件和目录
解决:检查IPtables和selinux是否关闭
iptables -F setenforce 0