经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » 数据库/运维 » Linux/Shell » 查看文章
samba服务设置与访问共享文件夹
来源:cnblogs  作者:快看,有奥特曼  时间:2021/12/31 8:51:06  对本文有异议

samba服务设置与访问共享文件夹

  • linux设置文件夹共享
  • windows连接共享文件夹(运行->//IP/route)
  • linux连接共享文件夹

1、基本服务安装与配置

  • linux环境下文件夹的共享是可以由samba提供这项服务,所以首先需要安装samba
  1. yum install samba samba-client
  • 安装完成后,samba服务并未运行,要么手动启动服务,要么重启计算机。
  • 查找Samba服务名称并启动服务
  1. rpm -ql samba | grep serivce
  2. systemctl start smb.service
  3. systemctl start nmb.service
  • 启动samba服务后确定端口
  1. nestat -atunp | grep '[sn]mb'
  • 确定samba运行时需要的端口为139/445(tcp)、137/138(udp),将这些端口全部放开
  1. firewall-cmd --zone=public --add-port=139/tcp --permanent
  2. firewall-cmd --zone=public --add-port=445/tcp --permanent
  3. firewall-cmd --zone=public --add-port=137/udp --permanent
  4. firewall-cmd --zone=public --add-port=138/udp --permanent
  5. firewall-cmd --reload

2、配置共享文件夹

  • 编辑samba的配置文件/etc/samba/smb.conf,设置/root/java为共享文件夹,如下:
  1. [global] #全局samba服务器全局设置,对整个服务器有效
  2. workgroup = WORKGROUP #设置samba server需要加入的工作组或者域,当设置为WORKGROUP时,可以在网上共享邻居看到。
  3. security = user #安全验证方式,share|user|server|domain,默认为user(需要提供用户名和密码,并由samba服务验证)
  4. passdb backend = tdbsam #用户后台,smbpasswd|tdbsam|ldapsam,tdbsam:使用一个数据库文件来建立用户数据库(passdb.tdb),默认在/etc/samba目录下。passdb.tdb用户数据库可以使用smbpasswd –a来建立Samba用户,不过要建立的Samba用户必须先是系统用户。也可以使用pdbedit命令来建立Samba账户。
  5. printing = cups #打印机类型
  6. printcap name = cups #指定打印机配置文件
  7. load printers = yes #是否在开启 samba server 时即共享打印机。
  8. cups options = raw
  9. #########################共享文件夹的定义#####################################################
  10. [homes] #共享名称(特殊的,用户家目录。默认设置)
  11. comment = Home Directories
  12. valid users = %S, %D%w%S #%S:当前服务名(如果存在), %D:当前用户所属域或工作组名称,
  13. browseable = No
  14. read only = No
  15. inherit acls = Yes
  16. [printers] #共享名称 (默认设置)
  17. comment = All Printers
  18. path = /var/tmp
  19. printable = Yes
  20. create mask = 0600
  21. browseable = No
  22. [print$] #共享名称,打印机驱动(默认设置)
  23. comment = Printer Drivers
  24. path = /var/lib/samba/drivers
  25. write list = @printadmin root
  26. force group = @printadmin
  27. create mask = 0664
  28. directory mask = 0775
  29. #自定义共享文件夹
  30. [java] #共享名称,即客户端访问Samba服务器时浏览到的目录名,该名称不要求与本地目录名相同,但在当前Samba服务器必须唯一。如Windows访问共享文件夹时:\\ip\共享名称
  31. comment = share all #提示信息,任意
  32. path = /root/java #需要被共享的目录
  33. browseable = yes #是yes/否no,在浏览资源中显示共享目录,若为否则必须指定共享路径才能存取
  34. writeable = yes #允许写入
  • 配置文件修改完成后,重启samba服务后生效。
  1. systemctl restart smb.service
  • 添加samba用户,才能在user的安全模式下访问,注意:samba不使用系统的用户和密码
  1. smbpasswd -a root //映射系统用户到samba,并为该用户在samba服务中设置密码。

3、客户端访问共享文件夹

  • linux访问共享文件夹,以挂载到本地的方式访问
  1. #挂载
  2. mount -t cifs -o username="root",password="sambapasswd" //ip/共享名称 挂载目录
  3. #卸载
  4. umount 挂载目录
  • 直接访问共享目录
  1. #前提:安装samba-client
  2. smbclient -L //ip -U 用户名 #查看该用户在目的地址上可访问的共享文件夹
  3. smbclient //ip/共享名称 -U 用户名
  • windows访问

4、客户端访问错误处理

  • windows访问报错“不允许一个用户使用一个以上用户名与一个服务器或共享资源的多重连接 ”

1、cmd->net use 查看网络连接状况,找到关于共享文件夹的连接(远程名为 访问共享文件夹的地址)
2、删除:net use \ip\共享名 /del

  • windows访问报错:没有访问权限

vim /etc/sysconfig/selinux
->SELINUX=disabled

原文链接:http://www.cnblogs.com/zengyang-blogs/p/15728420.html

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号