openfiler作为文件服务器,windows、linux挂载NFS实现共享,以及windows、linux实现SMB/CIFS

时间:2023-01-26 21:39:06

登陆

首先登陆openfiler的web界面,配置的ip为192.168.1.111,所以浏览器地址栏输入https://192.168.1.111:446/ 用户名:openfiler 密码:password

登陆成功后进入status界面,这里显示了服务器的基本信息,系统状态,硬件信息,网络,内存以及挂载的磁盘情况。

还可以看出该web管理工具一共由七部分组成,分别为System、Volume、Quato、Share、Server、Accounts

 

 

System

点击System进入,这部分是整个系统的配置和管理,包括网络设置、HA集群设置、始终设置、UPS管理、备份和安全控制。备份使用了快照技术,对服务器做个快照供用户下载进行备份,要执行恢复时,只需上传即可,比较简单的功能。

Network Setup

网络设置分为三部分:Network Configuration配置网络信息、Network Interface Configuration配置网卡信息(动态DHCP和静态Static)和Network Access Configuration是设置允许哪些IP段可以访问主机服务器,对于它的设置直接影响了IScsi的使用IScsi Target中Network ACL控制的就是这里的设置,对FTP和SMB服务没有影响这里设置的用户和Accounts里设置的用户是不同的。如下图所示:

Volumes

该部分提供了软Raid、IScsi和LVM卷管理功能,点击volumes,如果想要对磁盘做Raid,那么在添加卷之前就应该建立好软Raid。

Block Device

Block Device对屋里磁盘进行管理,磁盘可以进行分区,点击Block Device进入配置:

点击选中的物理磁盘进入分区界面,我选择/def/sdb:

分区分为Physical volume和RAID array member。如果想做软Raid就需要选择Raid array member。

Software Raid不详细说了,如果想要创建软Raid,那么必须在分区时选择 RAID array member类型,然后管理界面会显示所有类型为RAID array member且没有创建软Raid的分区情况,你可以选中需要创建软Raid的分区然后选择Raid级别和块大小,选好后点击Add array就可以创建软Raid了:

Volume Group

Volume Group是对卷组进行管理的,如果创建了物理分区,这里就会在管理界面看到这些物理卷。选择你要添加的物理卷,然后给卷组取个名字,点击Add volume group添加卷组。

Add Volume

成功添加卷组后,就可以在卷组上创建逻辑卷了点击Add Volume就可以进入管理界面:

首先在Select Volume Group中选择需要创建的逻辑卷的卷组,然后点击Change选择卷组。

在Create a volume in ***中填上逻辑卷名、逻辑卷描述、需要分配给该逻辑卷的大小以及逻辑卷的文件类型点击Create创建。如果选择XFS和Ext*类型那么久可以再逻辑卷上创建文件,对外提供文件共享服务了;如果选择block那么久需要在IScsi Targets总设置相关信息才能提供IScsi服务。

Share

点击share进入:

openfiler里的Share是对文件的共享设置,首先得创建一个文件。点击卷组,弹出创建子文件夹的选项。创建一个文件夹后就会显示出来,点击子文件夹名,就会弹出配置界面:

 

这里可以继续创建更多的子文件夹并也可以设置共享,点击Make Share进入共享设置。

一共有三个地方需要设置:Share Access Control Mode、Group access Configuration和Host access configuration。

Share Access Control Mode:有两种模式:Public guest access模式用户不需要目录/权限服务器的认证就可以访问共享和Controlled access模式下用户需要Group access和Host access的联合才可以实现访问共享。

Group access Configuration:在openfiler的级别高于Host access,对于ftp协议,Host access的作用仅限于控制用户是否能访问openfiler,假如是none,就不能访问,使用ro或rw,就能够访问,使用ftp时,ro和rw是相同的,对于Host access来说,读写由Group access的配置决定,意思是说,使用ftp时,ro和rw权限要用Group access进行配置。

关于primary group(简称pg),因为openfiler的user能够加入多个组,因此必须有pg属性,再通过Host access认证后,pg属性的作用才会体现出来,实际pg的属性的组拥有文件夹的任何权限。

Host access configuration:Host access是针对某个客户端的具体访问进行配置,按协议来分,cifs/smb、nfs、http和ftp。并且能够配置3种访问级别,none、ro和rw。需要注意的是,每次更改后,选中restart services再确定修改,否则可能出现修改失败,这部分是在Group access后起作用的,也就是说如果某个用户所在的组通过了Group access认证,那么这个用户在网络上的任何客户端都可以获得相应的权限。如果设置了Host access那么用户在Host access配置的主机上登陆时,权限还要受Host access中设置的限制。

 

在这里我们我们除了要开启nfs服务还要开启SMB/CIFS    服务,在之前的配置中也同样适应SMB服务,勾选RW权限点击update后,这样我们的共享文件夹就建好了,再次点击Shares即可看见共享信息,并且还可以对其进行修改:

Windows客户端挂载nfs

安装openfiler的内容这里就不详细说明了,另篇文章单独介绍,此处只介绍NFS共享等基本操作,以及windows和linux挂载共享目录

Win7 旗舰版和企业版自带NFS客户端,打开控制面板找到"打开或关闭windows功能"(默认是不开启的)。勾选NFS确定之后即可使用。

注:如果不开启NFS客户端,在cmd下执行mount命令时可会出现"mount不是内部命令或外部命令错误"

需要注意的是,win7没有windows server 2008和其他版本的一些服务,比如用户名映射,Active Directory 域服务,这必然导致权限问题,之后会讲解决办法。

 

打开cmd就可以挂载NFS了,服务器是由openfiler创建的共享提供,共享了一个目录,所有权限是nginx的权限uid=499 gid=498,这个一会会用到。

 

服务器端:

检查一下nfs服务以及portmap服务是否开启:

# service nfs status 或/etc/init.d/nfs status

#service portmap status

 

#showmount -e (可以查看可共享挂载的目录,以及可以连接的网段)

 

windows客户端挂载:

C:\Users\WMY> mount 192.168.1.111:/mnt/volsdb/nfs-share/nfs_share N: 注:我的服务器ip:192.168.1.111

如上所示192.168.1.111这台服务器上的目录已经挂载到了N盘,cmd下继续输入mount命令查看已经挂载的文件系统。

C:\Users\ares>mount

 

注:如果所挂载的windows的盘符已经存在出现,如下图所示:

 

解挂:

执行完挂载操作后就可以在windows实现共享了,但是还需要做一个映射,右键点击计算机->选择映射网络驱动器:

映射后就在计算机位置显示网络位置:

 

windows端:

服务器端:

随意添加一个文件,发现服务器端 和客户端的数据是同步的,至此NFS服务就ok了。

Linux客户端挂载nfs

linux作为客户端,把NFS共享目录一样当做文件来处理,首先创建一个挂载点:

#mkdir /wmy

#mkdir /wmy/nfs

然后使用mount命令来挂载:

mount -t nfs 192.168.1.111:/mnt/volsdb/nfs-share/nfs_share /wmy/nfs

可以看出已经挂载成功,并且服务器端的数据已经同步到客户端了。

查看挂载信息:showmount –e 192.168.1.111

卸载命令:

#umount /wmy/nfs

有时候会出现设备繁忙:device is busy卸载不了,umount -l /wmy/nfs可以强制卸载,但不建议这么操作。可以先使用:

# fuser -km /wmy/nfs (fuser 可以显示出当前哪个程序在使用磁盘上的某个文件、挂载点、甚至网络端口,并给出程序进程的详细信息)

# umount /wmy/nfs

如果还是不行则可以使用:umount -l /wmy/nfs

注:有时候会出现挂载不上的问题。权限问题,只需修改文件夹的权限为755即可。

还有就是portmap(端口映射服务器)未启动。

附录

顺便再提一下SMB/CIFS的方式。这个很简单,其他地方都一样,具体操作详见3Volume章节,不同的是在Share设置时开启SMB/CIFS的读写权限,以及设置Service界面的SMB/CIFS服务为开启:

windows端连接很简单:\\192.168.1.111

linux端:

首先,我们要通过linux/ubuntu里的smbclient查看:

#smbclient –N –L \\192.168.1.111

这是查看到的结果,接下来我们就要用上图红色区域部分来实现SMB/CIFS:

# mount –t cifs //192.168.1.111/volsdb.nfs-share.nfs_share /wmy/nfs/ -o username=openfiler,password=password