rhce-nfs

    NFS(Network File System,网络文件系统)是FreeBSD支持的文件系统中的一种,它允许网络中的计算机(不同的计算机、不同的操作系统)之间通过TCP/IP网络共享资源,主要在unix系列操作系统上使用。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样。 NFS(Network File System,网络文件系统)是FreeBSD支持的文件系统中的一种,它允许网络中的计算机(不同的计算机、不同的操作系统)之间通过TCP/IP网络共享资源,主要在unix系列操作系统上使用。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样。

  RPC主程序:rpcbind

   NFS主程序:nfs-utils

[root@localhost ~]# yum install rpcbind

[root@localhost ~]# yum install nfs-utils

/etc/exports主配置文件(文件不一定存在)

/etc/exports配置文件的语法与参数

| 共享目录 | 主机名(权限) |

注:主机名可以为*,代表所有主机。也可以例如192.168.76.3,192.168.76.3/24,也可以是主机名,但是主机名必须在/etc/hosts中

权限必须用()括中,多个权限用逗号隔开。  

rw  ,rorw可读写,ro只读
synca,sync

sync代表数据会同步写入到内存与硬盘中,async则代表数据会先暂存于内存当中,而非直接写入硬盘

no_root_squash/root_squash

no_root_squash表示,文件的所属者和所属组是root用户和root组;root_squash表示将root用户和组映射为匿名用户和组(默认设置)。

all_squash/no_all_squash

allsquash:客户端所有用户创建文件时,客户端会将文件的用户和组映射为匿名用户和组noall_squash:客户端普通用户创建的文件的UID和GID是多少,服务端就显示为多少(默认设置)

anonuid=,anongid=

将文件的用户和组映射为指定的UID和GID

每一次更改/etc/exports文件时要更新读取文件内容#exportfs -r

exportfs的选项
-a全部挂载或卸载/etc/exports中的内容
-r重新读取/etc/exports中的信息,并同步更新/etc/exports,/var/lib/nfs/xtab
-u卸载单一目录(和-a一起使用为卸载所有/etc/exports文件中的目录)
-v在export的时候,将详细的信息输出到屏幕上

客户端使用autofs自动挂载

服务端:

[root@localhost ~]# yum install rpcbind
[root@localhost ~]# yum install nfs-utils
[root@localhost ~]# vim /etc/exports
/data  *(ro)
[root@localhost ~]# mkdir /data
[root@localhost data]# echo this is test > /data/file
[root@localhost ~]# systemctl status rpcbind
[root@localhost ~]# systemctl restart rpcbind
[root@localhost ~]# systemctl restart nfs

客户端:

1、在主配置文件里面指定被检测的特定目录为/nfs(该目录不需要事先存在,因为autofs会主动建立该目录),对应的数据文件是/etc/auto.nfs(该文件名可自定义)

2、建立数据对应文件内(/etc/auto.nfs)的挂载信息与服务器对应的资源,该文件是自己创建的。该文件的格式如下:

| 本地端子目录 | [-挂载参数] | 服务器所提供的目录 |

本地端子目录表示你要将服务器所提供的目录挂载在客户端的/nfs的目录名

挂载参数可不写

fgbg

当执行挂载时,该挂载行为会在前台(fg)还是后台(bg)执行,若在前台执行,则mount会持续尝试挂载,直到成功或time out为止;若为后台执行,则mount会在后台持续多次进行mount,而不会影响到前台的程序运行。

softhard

hard表示当两者之间的任何一台主机脱机,则RPC会持续地呼叫,直到对方恢复连接为止。如果是soft的话,那RPC会在time out后重复呼叫,而非持续呼叫

intr

当使用上面提到的hard方式挂载时,若加上intr这个参数,则当RPC持续呼叫时,该次的呼叫是可以被中断的

rsizewsize

读出(rsize)与写入(wsize)的区块大小。这个设置值可以影响客户端与服务器端传输数据的缓冲记忆容量

[root@client ~]# yum install autofs -y

[root@localhost ~]# vim /etc/auto.master
/nfs   /etc/auto.nfs

[root@localhost ~]# vim /etc/auto.nfs
guazai  172.24.8.128:/data
[root@localhost ~]# systemctl restart autofs
[root@localhost ~]# mount | grep /nfs
/etc/auto.nfs on /nfs type autofs (rw,relatime,fd=12,pgrp=4598,timeout=300,minproto=5,maxproto=5,indirect)

练习:

架设一台NFS服务器,并按照以下要求配置

1、开放/nfs/shared目录,供所有用户查询资料;

2、开放/nfs/upload目录,该目录为172.24.8.0/24网段的主机的数据上传目录,并将所有该网段主机上传文件的所属者和所属组映射为nfs-upload,其UID和GID为2001;

3、将/home/tom(该目录为uid=1111,gid=1111的tom用户的家目录)目录仅共享给172.24.8.129这台主机上的jerry用户,jerry对该目录具有访问、新建和删除文件的权限。

服务端:
#vim /etc/exports
/nfs/shared *(ro)
/nfs/upload 192.168.76.0/24(rw,root_squash,anonuid=2001,anongid=2001)
/home/tom  *(ro,anonuid=111,anongid=1111)
/home/tom  192.168.76.5(rw,anonuid=1111,anongid=1111)
然后创建
#mkdir /nfs/shared
#mkdir /nfs/upload
#mkdir /home/tom
#chmod o+w /nfs/upload
#chmod o+w  /home/tom
客户端:
#mkdir /mnt;mkdir /mnt2 ;mkdir /mnt3
#mount 192.168.76.3:/nfs/shared /mnt
#mount 192.168.76.3:/nfs/upload /mnt2
#mount 192.168.76.3:/home/tom /mnt3
#useradd jerry
#su jerry
#cd /mnt3
进行操作

自动挂载
 客户端
#yum install autofs -y
#vim /etc/auto.master
/nfs /etc/auto.nfs
#vim /etc/auto.nfs
mnt 192.168.76.3:/nfs/shared
mnt2 192.168.76.3:/nfs/upload
mnt3 192.168.76.3:/home/tom
# systemctl restart autofs
# mount |grep /nfs

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值