nfs与samba实现文件共享服务的流程

nfs与samba实现文件共享服务的流程

    nfs与samba都是能够实现文件共享的服务应用,其用法大致相同,但是挂载选项与配置文件的设置机制不同,下面介绍这两种文件共享服务的内容。

    一.nfs服务的安装与配置

    服务端主机的配置:

    1.安装nfs服务:yum -y install nfs.utils;

    2.nfs的配置文件:/etc/exports;/etc/export.d/*。nfs的配置文件只需要添加能够挂载nfs服务器目录的主机条目即可,非常简单,比如:

        /mysql/data    10.1.0.0/16(rw)  这就表示允许10.1.0.0(16)网段内的主机通过/mysql/data目录的挂载使用服务端nfs的应用。

    3.创建nfs配置文件的目录,设置目录权限为客户端应用权限,比如需要实现共享mysql数据,就将目录属主属组设置为mysql:mysql,注意这里不能使用root用户,由于nfs服务拥有一种保护机制,跨主机使用nfs服务时,root用户没有执行与写入权限。必须是客户端执行进程的属主uid与服务端nfs文件夹属主uid相同才可以拥有rwx权限。

    4.启用nfs服务:service nfs restart;

    客户端主机的配置:

    1.这里使用mysql应用举例,安装mysql或者mariadb,创建一个数据库。

    2.修改mysql的主配置文件/etc/my.cnf,修改其中的datadir=/mydata,这里的/mydata是随便创建的一个新的空闲目录,这样的话就将mysql的数据文件都存放在/mydata中了。

    3.mount -t nfs 10.1.252.232:/mysql/data /mydata;将服务端主机的/mysql/data目录挂载至客户端主机的/mydata目录下,并重启mysql服务;service mysql restart;

    完成上述配置之后,就可以启用nfs服务了,可以看到客户机的/mydata与/服务机的/mysql/data目录下存放着的是客户机的mysql数据,并且只有服务端有权限修改目录文件。

    二.samba服务的安装与配置

    服务端主机的配置:

    1.安装samba服务:yum install samba;

    2.编辑samba的主配置文件/etc/samba/smb.conf;在Share Definitions条目下添加一个新的共享服务,比如这样:

        [dafeige]

comment =dafeigewenjian

path = /data/application/web

browseable = yes

guest ok =yes

writable =yes 

    这里定义了名为dafeige的共享ID,comment表示描述,path定义了dafeige所指向的路径,browseable表示是否可供用户浏览,guest ok表示是否允许来宾访问,writable表示是否支持写入操作。

    3.使用smbpasswd或者pdbedit命令创建samba用户和密码:

    smbpasswd [options] username;其中option中包括:-a 增加用户;-x 删除用户;-d 禁用用户;-e 启用用户;举例说明:smbpasswd -a xiaofei;执行之后提示设置密码;这时就成功添加了一个samba用户。

    4.service smb start;service nmb start;启用samba服务。

    客户端主机的配置

    客户段应用samba有两种方式:

    第一种:使用smbclient命令。这个命令可以实现客户端交互式访问服务端的samba服务目录,前提是服务端需要提供一个samba用户并让客户知晓;比如使用上述的xiaofei,密码为123.可以这样进行交互式访问:smbclient //10.1.252.232/dafeige -U xiaofei;输入密码123之后,却无法对目录进行cp等写入删除操作。

    为社么呢?实际上是由于没有对目录的执行权限所导致的,与nfs服务一样,如果想要对服务端主机执行写入操作,客户端主机用户的uid必须与服务端目录属主uid相同,这里使用root用户同样不可以。这时需要对服务端目录的属主以及权限进行修改,所以对服务端主机执行:chown -R xiaofei:xiaofei /data/application/web;重新登录,就可以对目录执行写入操作了。

    第二种:挂载目录的方式。这种方式与nfs的挂载方式性质一样,将服务端的目录挂载至客户端的目录下,实现文件存放在服务端上共享的目的。不同的是挂载方式有所不同,举例说明:

    mount -t cifs //10.1.252.232/dafeige /mydata;这里是使用samba服务的挂载方式。对比一下nfs的挂载方式:

    mount -t nfs 10.1.252.232:/data/application/web /mydata;可以看出nfs挂载直接指向服务端的目录,而samba挂载在share_ID dafeige定义的path路径下,格式也有所不同。

    如此配置完毕后,检查端口是否启用正常,就分别可以使用这两种文件共享服务惹!

原创文章,作者:mcgeewang,如若转载,请注明出处:http://www.178linux.com/53775

(1)
mcgeewangmcgeewang
上一篇 2016-10-23 21:56
下一篇 2016-10-23 22:08

相关推荐

  • LVM(逻辑卷管理)

    LVM 逻辑卷管理 概述:      LVM是将一个或多个硬盘的分区在逻辑上集合,相当于一个大硬盘来使用,当硬盘的空间不够使用的时候,可以继续将其它的硬盘的分区加入其中,这样可以实现磁盘空间的动态管理,相对于普通的磁盘分区有很大的灵活性。与传统的磁盘与分区相比,LVM为计算机提供了更高层次的磁盘存储。它使系统管理员可以更方便的为…

    Linux干货 2016-09-05
  • linux终端类型

    终端分为:             ∟  物理终端         定义:可将显示器,键盘,鼠标直接接入主机接口的终端;     &nbsp…

    Linux干货 2016-10-18
  • 《 Git 权威指南 》学习笔记

    这个没办法直接发博客了,篇幅太长,无法直接在 Blog 上排版了,直接发上 pdf 文档了。 接 《LNAMP Shell 部署脚本》 博文的内容,线上测试系统的 Git 环境部署。 整个 Git 环境包括了:     Git / Gitweb     Gitolite / Gerrit &nbsp…

    Linux干货 2015-10-27
  • CentOS 更改改网卡名称

    1 查看你的CentOS7网卡名字叫什么(通常第一个网卡叫做eno16777736) ip addr 2 编辑配置文件 vi /etc/sysconfig/network-scripts/ifcfg-eno16777736 把配置文件里面所有eno16777736改为eth0 3 把网卡配置文件名字也修改一下 cd /etc/sysconfig/networ…

    2018-01-18
  • samba应用

    samba详解 前言 前面学过了NFS,是一个网络文件系统,可以让远程连接像访问本地文件一样,在同一个网络上的多个用户间共享目录和文件系统。只不过NFS只是针对于两个linux主机,我们现在需要linux主机和windows主机都能共享,这个时候就用到了samba。 1、步骤,允许个别用户访问 1、安装下面三个包: samba samba-common sa…

    Linux干货 2016-12-21
  • 细说linux上的特殊权限位

    linux上的文件的权限 linux的哲学思想之一就是一切皆文件。这样说来,每台安装了linux的主机上,就会有大量的文件。而另一方面,linux在安全方面有着极为出色的表现。众所周知,linux是一个多用户的系统,因此为一个文件加上合适的权限为显得非常有必要了。linux上的基本权限我就不一一介绍了,请不熟悉的同学自行百度脑补。我们来说说linux上文件和…

    Linux干货 2017-04-10