安装配置Samba实现windows+linux文件共享

    xiaoxiao2023-07-27  132

    当前设置samba的系统环境介绍

    VM下CentOS6.7 64

    IP192.168.0.70

     

    关闭selinux

    setenforce 0

    关闭iptables

    service iptables stop

    安装samba

    yum -y install samba 更改samba配置文件security = user为security = share sed -i '/;/!s/security = user/security = share/' /etc/samba/smb.conf 注释: security = user 定义安全级别 ,使用samba服务自我管理的帐号和密码进行用户认证;用户必须是系统用户,但密码非为/etc/shadow中的密码,而由samba自行管理的文件,其密码文件的格式由passdb bachend进行定义 security = share 匿名共享

    修改samba配置文件

    cat >> /etc/samba/smb.conf << EOF[share] #此处是模块名称,名字随便起comment = blog.whsir.com #注释path = /win #指定目录browseable = yes #如果把此处改成no,smbclient -L //192.168.0.70在用命令查看时,就看不到share,见下图guest ok = yes #是否可浏览,是否可被所有用户看到writable = yes #是否可写(全局可写)create mask = 0644 #新建文件权限644directory mask = 0755 #新建目录权限755EOF

    可以用testparm命令测试下配置文件是否有错误

    Load smb config files from /etc/samba/smb.confrlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)Processing section "[homes]"Processing section "[printers]"Processing section "[share]"WARNING: The security=share option is deprecatedLoaded services file OK.Server role: ROLE_STANDALONEPress enter to see a dump of your service definitions这种是个警告,忽略即可

    创建需要共享的目录

    mkdir /win 更改权限,可以直接更改属组和属组,也可以将目录权限改成777 chown -R nobody.nobody /win或chown -R 777 /win 重启samba service smb restart  

    Windows客户端访问

    开始-运行-打开\192.168.0.70share

    Linux客户端访问

    挂载到linux本地/data目录,即本地data目录就是远程/win目录,此处要求输入密码直接回车即可。

    mount -t cifs //192.168.0.70/share /data  

    给samba添加帐号密码

    更改samba配置文件security = share为security = user

    sed -i '/;/!s/security = share/security = user/' /etc/samba/smb.conf 其他配置跟上面相同(看上面修改samba配置文件部分)

    给samba添加用户,用户必须是当前linux已经存在的用户,不存在则需要创建

    useradd whsir -s /sbin/nologin smbpasswd -a whsir #这里输入两遍密码

    重启samba

    service smb restart  

    Windows客户端访问

    开始-运行-打开\192.168.0.70share就需要密码了

    Linux客户端访问

    挂载到linux本地/data目录,即本地data目录就是远程/win目录,密码就是刚才设置的密码

    mount -t cifs //192.168.0.70/share -o username=whsir /data  

    附录: smbpasswd命令: -a:添加 -x:删除 -d:禁用 -e:启用 -n:将指定的用户密码置空 pdbedit命令: -L :列出samba中所有已添加用户

    注意:手动创建useradd用户时,会有uid和gid,用这个用户在windows端上传修改文件时,权限会变成这个用户的uid和gid,这样就会导致一个权限问题。如果是linux客户端的话,必须在当前linux客户端有这个用户,并且uid和gid跟服务端对应一致,才不会出现权限问题,当然你可以直接让samba使用nobody用户

    samba不允许一个用户使用一个以上用户名与一个服务器或共享资源的多重连接。

    在cmd中输入net use * /del /y即可解决

    最新回复(0)