由于Glusterfs并没有提供对于Windows的客户端程序,一般来说Windows上要使用glusterfs只有通过nfs映射或者通过samba映射来实现,之前介绍过关于Glusterfs nfs映射是通过nfs-ganesha。但是在实际使用中由于nfs-ganesha不是内核级别的稳定性存在一定的问题,性能上也不是太好。同时在实际使用中nfs在windows下的表现特别是对于iis的映射都存在各种问题。因此通过windows的共享是实现的最好方式。
Linux要支持windows共享首先需要安装samba服务。
Samba是一个能让Linux系统应用Microsoft网络通讯协议的软件,而SMB是Server Message Block的缩写,即为服务器消息块 ,SMB主要是作为Microsoft的网络通讯协议,后来Samba将SMB通信协议应用到了Linux系统上,就形成了现在的Samba软件。后来微软又把 SMB 改名为 CIFS(Common Internet File System),即公共 Internet 文件系统,并且加入了许多新的功能,这样一来,使得Samba具有了更强大的功能。
setenforce 0
如要永久关闭则修改配置文件/etc/selinux/config,将SELINU置为disabled
yum install -y samba
systemctl enable samba
systemctl start samba
samba的主要配置文件在: /etc/samba/下,修改smb.cnf就可以来。
这里以glusterfs 4.19的版本来说明如何配置,关于glusterfs 的安装和配置,vol的建立不在表述。
修改/etc/samba/smb.cnf,加入如下配置
[global]
workgroup = SAMBA
security = user
passdb backend = tdbsam
printing = cups
printcap name = cups
load printers = yes
cups options = raw
kernel share modes = no
kernel oplocks = no
map archive = no
map hidden = no
map read only = no
map system = no
store dos attributes = yes
然后增加和配置一个Glusterfs export,如下
[static]
comment = For testing a Gluster volume exported through CIFS
path = /statics
browseable = yes
write list = root
read only = no
[gluster-static]
comment = For samba share of volume static
vfs objects = glusterfs
glusterfs:volume = static
glusterfs:logfile = /var/log/samba/glusterfs-static.%M.log
glusterfs:loglevel = 7
path = /
read only = no
guest ok = yes
配置文件中展示了两个方法,[gluster-static]表示使用glusterfs的支持的方式,而statics则是通过先在磁盘上挂载一个/statics目录到glusterfs上,然后通过smb分享出去。即
mount -t glusterfs 10.10.10.10:/data /statics
开始菜单,运行,输入 \10.10.10.10statics 来实现由于上面的设置允许匿名用户访问应该能顺利打开。
net user \10.10.10.10static z: #映射
net user z:/delete # 删除
其实这个问题不和glusterfs相关,而是和iis以及windows本身相关。 由于asp。net和iis的 application pool一般运行在network service用户下,所以是看不到net use映射的盘的,这会造成程序的错误。解决方案无非两种。
启动一个运行在localsystem或者network service账号下的cms,通过net use来映射.首先从微软官方下载pstool。pstool是system internal的一部分。然后运行如下命令
pstool.exe -i -s cmd.exe
在弹出的cmd下可以使用net use来以映射,可能遇到权限问题,因此输入如下命令:
net use z: \\10.10.10.10\static
安装提示输入用户名和密码
用户名和密码是在smb中配置的,当然也可以是Linux服务器的root账号。
本文为Lokie.Wang原创文章,转载无需和我联系,但请注明来自lokie博客http://lokie.wang