nfs的部署

一、nfs的介绍
nfs==network file system (网络文件系统),可以用于 网络文件共享 ,他允许网络中的计算机可以通过tcp/ip的网络共享资源。在NFS的应用中,服务端的NFS设置可以要挂载的客户端,给予其一定的权限;而客户端的应用可以通过挂载的形式挂载上远程NFS服务端的文件,当客户端访问NFS设置的共享目录时,就像访问本地文件一样。
再简单点,就相当于windows的共享文件,映射成自己本客户端将远程服务端的目录地的磁盘,作用就是共享文件。

二、nfs的挂载原理
比如服务器端共享了一个gx目录后,其他有权访问NFS服务器的客户端就可以将这个共享目录挂载到自己本地的磁盘上,并且可以看到gx内的所有数据。客户端会根据服务器端设置的权限,进行有权限访问。
客户端和服务端是通过网络进行传输的 。两者之间想要传输数据需要有对应的网络接口。那么服务器端是使用哪个端口来进行传输的呢?其实 NFS服务器是随机选择端口来进行传输数据 。那么客户端又是怎么知道服务器的端口呢?其实NFS服务器是通过远程过程调用(remote procedure call)协议/服务来实现的。也就是说 RPC服务会统一管理NFS的端口,客户端和服务器端通过RPC服务先沟通要使用哪个端口,之后再利用这些端口(小于1024)来进行数据传输。

三、nfs的配置
1.服务端的配置
▶(1)因为用到了nfs和rpc,所以需要提前在服务端安装两个包
yum install nfs-utils rpcbind
其中nfs-utils用于nfs服务的配置等,rpcbind用于服务器端和客户端进行通信。
▶(2)编辑配置文件
vim /etc/exports
添加:/mnt 192.168.2.222(rw,sync,all_squash,anonuid=501,anongid=501)
解释 :/mnt 是服务器端要共享给客户端的目录,可以自定义,一般客户端挂载的目录和 服务器端的尽量一致。
192.168.2.222 客户端的IP,只有这个IP可以访问NFS服务器。也可以是一个IP段
(rw,sync) 这个括号内是可以设置这个IP客户端的权限、是否同步等。
【rw是可读可写,ro是只读;sync是同步,async是不同步;
no_root_squash :是不限定root用户,只针对客户端是root用户才有效,对共享目录拥有至高无 上的权限,就像操作本目录一样,在挂载目录下创建文件就
是root属主属组;
root_squash :是限制root权限,只针对客户端是root用户才生效,对共享目录 root
用户就如同一个普通用户一样 ,若 务端设置了ro,那么客户端的
root是不能往共享 目录写入东西;
all_squash : 不管NFS的用户是谁,身份都被指定为服务端设置的gid和uid的用户;
anonuid/anongid : 要和root_squash或者all_squash一起使用,用于指定NFS客户
的uid和gid】
▶(3)启动nfs服务
/etc/init.d/rpcbind start ####先启动rpcbind服务
/etc/init.d/nfs start
这样服务器端的就配置完了
▲2.客户端的配置
▶(1)因为要进行通信,所以客户端也要按照nfs-utils包,这个包也包含了 showmount 命令,这个命令可以查看NFS共享的目录。
yum install -y nfs-utils
showmount -e 192.168.2.223 ###这个IP是NFS服务器的IP
▶(2)配置客户端挂载
此步操作可以将客户端挂载NFS,和磁盘挂载一样
mount -t nfs -onolock,nfsvers=3 192.168.2.223:/mnt /opt/
1> mount -t是指定类型是nfs
2> -o后面接nolock为不锁,nfsvers=3指定版本,确定权限为服务器端指定用户的gid和 uid,
因为我服务上配置的指定用户是wzq,ts gid和uid501,那么在挂载目录下新建的文件 都是wzq,ts组
如果不加 nfsvers=3则挂载目录下的属主属组是nobody
3> 192.168.2.223:/mnt nfs的共享目录
4> /opt 是客户端的挂载目录

3.exportfs命令
这个命令也是比较常用的,常用选项有[aurv]
-a :全部挂载或者全部卸载
-u:重新挂载
-r:卸载某个目录
-v:显示共享目录
如exportfs -arv全部卸载
或者exportfs -auv 全部重新挂载

四、本节用到的以往命令
mount -t 指定挂载类型
mount -o指定挂载参数
umount -l 可以在挂载目录下卸载
df -h 查看磁盘占用情况和挂载情况
yum
vim
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
NFS(Network File System)是一种分布式文件系统,可以在网络上共享文件和目录。NFS 通常用于在多台计算机之间共享文件。要在 Linux 系统上部署 NFS,需要按照以下步骤进行操作: 1. 安装 NFS 服务器 在 Linux 系统上,可以通过包管理器安装 NFS 服务器。例如,在 Ubuntu 系统上,可以使用以下命令安装 NFS 服务器: ``` sudo apt-get install nfs-kernel-server ``` 2. 创建共享目录 在 NFS 服务器上创建共享目录。例如,可以在 /mnt 目录下创建一个共享目录: ``` sudo mkdir /mnt/nfs_share ``` 3. 配置 NFS 服务器 打开 /etc/exports 文件,添加共享目录的配置信息: ``` sudo vi /etc/exports ``` 在文件末尾添加以下内容: ``` /mnt/nfs_share 192.168.1.0/24(rw,sync,no_subtree_check) ``` 其中,/mnt/nfs_share 是共享目录的路径,192.168.1.0/24 是允许访问 NFS 共享的 IP 地址或地址段,rw 表示读写权限,sync 表示同步写入,no_subtree_check 表示不检查子树。 4. 重启 NFS 服务器 修改完配置文件后,需要重启 NFS 服务器: ``` sudo systemctl restart nfs-kernel-server ``` 5. 在客户端挂载 NFS 共享目录 在客户端上挂载 NFS 共享目录: ``` sudo mount -t nfs 192.168.1.100:/mnt/nfs_share /mnt/local_share ``` 其中,192.168.1.100 是 NFS 服务器的 IP 地址,/mnt/nfs_share 是共享目录的路径,/mnt/local_share 是本地挂载的目录。 现在,客户端就可以使用 /mnt/local_share 目录访问 NFS 服务器上的共享目录了。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值