欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

配置Samba实现Linux和Windows系统之间的文件互访

程序员文章站 2023-11-03 20:29:40
这篇文章主要介绍了配置Samba实现Linux和Windows系统之间的文件互访,这里主要介绍在Linux端的相关配置,需要的朋友可以参考下... 15-09-23...

samba,是种*软件,用来让unix系列的操作系统与微软windows操作系统的smb/cifs(server message block/common internet file system)网络协定做连结。在目前的版本(v3),不仅可存取及分享smb的资料夹及打印机,本身还可以整合入windows server的网域、扮演为网域控制站(domain controller)以及加入active directory成员。简而言之,此软件在windows与unix系列os之间搭起一座桥梁,让两者的资源可互通有无。

samba是许多服务以及协议的实现,其包括tcp/ip上的netbios(nbt)、smb、cifs (smb的增强版本)、 dce/rpc或者更具体来说msrpc(网络邻居协议套件)、一种 wins服 务器(也被称作netbios name server(nbns))、nt 域协议套件(包括nt domain logons、secure accounts manager(sam)数据库、local security authority(lsa)服务、nt-style打印服务(spoolss)、ntlm以及近来出现的包括一种改进的kerberos协议与改进的轻型目录访问协议(ldap)在内的active directory logon服务)。以上这些服务以及协议经常被错误地归类为netbios或者smb。samba也能够用于共享打印机。

samba能够为选定的unix目录(包括所有子目录)建立网络共享。该功能使得windows用户可以像访问普通windows下的文件夹那样来通过网络访问这些unix目录。

配置Samba实现Linux和Windows系统之间的文件互访
一直以来都以为ftp和nfs是局域网文件共享的常用方式,但是在最近接触samba之后,了解到一些用户需要简化访问学习成本,满足基础的权限控制管理,并支持实时编辑和保存文件,我才明白这些需求使用之前的方法都是很难满足的,而samba却可以完美的支持上述需求,虽然在开始接触时花了一些时间学习,但把配置和语法梳理清楚之后就很简单了。

unix与windows文件共享的最佳方式之一

安装samba
各个平台的安装都蛮简单的,略过

配置samba
建议合理规划目录和用户权限,可以利用用户组来简化授权管理,参见扩展阅读

创建目录(举例)

复制代码
代码如下:

mkdir -p /data2/sm
chmod -r 777 /data2/sm

添加用户(举例)

复制代码
代码如下:

groupadd dengling
useradd -g dengling -s /sbin/nologin dengling
smbpasswd -a dengling

备份smb配置文件并编辑

复制代码
代码如下:

cd /etc/samba
cp smb.conf smb.conf.bak
vi smb.conf
#全局参数
[global]
security = share
lanman auth = yes
log file = /var/log/samba/log.%m
idmap config * : backend = tdb
guest ok = yes
hosts allow = 127., 172., 192.168.1., 192.168.3.
cups options = raw
#共享参数
#常用选项
#[shared_name]
# path = # 文件系统路径
# browseable = {yes|no} # 是否可以被查看到
# public = {yes|no} # 是否可被所有人读
# guest ok = {yes|no} # 与 public 相同
# read only = yes # 是否只读
# writeable = yes # 是否可写
# write list = user1, user2 # 可写用户列表
# @group, +group # 可写组列表
# valid users = # 白名单
# invalid users = # 黑名单
[homes]
comment = home directories
read only = no
browseable = no
[sheji]
comment = sheji
path = /data2/sm/sheji
valid users = share, shenwei, xuwei, shenjiamei, humengchu, rensiqiang, yeting, tongying, jinbo, zengfanan, fengpeisi
read only = no
create mask = 0775
directory mask = 0775


启动samba
检查语法


复制代码
代码如下:
</p> <p>testparm

重启smb服务查看状态

复制代码
代码如下:

service smb restart
smbstatus

windows客户端访问
1.windows*问samba

在“计算机”中输入:\\xxx.xxx.xxx.xxx\

2.windows断开samba共享连接,实在不行可以选择注销或者重启

在【开始】→【运行】→【cmd】回车中输入:net use * /del /y

3.将samba共享的linux目录映射成windows的一个驱动器盘符

在【右键计算机】→【映射网络驱动器】→【文件夹\xx.xx.xx.xx\】