Java教程

使用Samba实现文件共享

本文主要是介绍使用Samba实现文件共享,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

  1987年,微软公司和英特尔公司共同制定了SMB(Server Messages Block)服务器消息块协议,旨在解决局域网内的文件或打印机等资源的共享问题,这也使得在多个主机之间共享文件变得越来越简单。到了1991年,当时还在读大学的Tridgwell为了解决Linux系统与Windows系统之间的文件共享问题,基于SMB协议开发出了SMBServer服务程序。这是一款开源的文件共享软件,经过简单配置就能够实现Linux系统与Windows系统之间的文件共享工作。当时,Tridgwell想把这款软件的名字SMBServer注册成为商标,但却被商标局以SMB是没有意义的字符而拒绝了申请。后来Tridgwell不断翻看词典,突然看到一个拉丁舞蹈的名字—Samba,而且这个热情洋溢的舞蹈名字中又恰好包含了“SMB”,于是Samba服务程序的名字由此诞生。Samba服务程序现在已经成为在Linux系统与Windows系统之间共享文件的最佳选择

  首先需要先通过软件仓库来安装Samba服务程序(Samba服务程序的名字也恰巧是软件包的名字),顺手再安装一个samba-client软件包,这是用于一会测试共享目录的客户端程序

    # dnf install samba samba-client

  Samba服务程序的主配置文件: /etc/samba/smb.conf

 Samba服务程序中的参数以及作用

行数 参数 作用
1 # See smb.conf.example for a more detailed config file or 注释信息
2 # read the smb.conf manpage.
3 # Run 'testparm' to verify the config is correct after
4 # you modified it.
5 [global] 全局参数
6 workgroup = SAMBA 工作组名称
7    
8 security = user 安全验证的方式,总共有4种
9    
10 passdb backend = tdbsam 定义用户后台的类型,总共有3种
11    
12 printing = cups 打印服务协议
13 printcap name = cups 打印服务名称
14 load printers = yes 是否加载打印机
15 cups options = raw 打印机的选项
16    
17 [homes] 共享名称
18 comment = Home Directories

 

描述信息
19 valid users = %S, %D%w%S 可用账户
20 browseable = No 指定共享信息是否在“网上邻居”中可见
21 read only = No 是否只读
22 inherit acls = Yes 是否继承访问控制列表
23    
24 [printers] 共享名称
25 comment = All Printers 描述信息
26 path = /var/tmp 共享路径
27 printable = Yes 是否可打印
28 create mask = 0600 文件权限
29 browseable = No 指定共享信息是否在“网上邻居”中可见
30    
31 [print$] 共享名称
32 comment = Printer Drivers 描述信息
33 path = /var/lib/samba/drivers 共享路径
34 write list = @printadmin root 可写入文件的用户列表
35 force group = @printadmin 用户组列表
36 create mask = 0664 文件权限
37 directory mask = 0775 目录权限

 

  • 书本笔记

 

这篇关于使用Samba实现文件共享的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!