服务器端
1检查所需要的包
[root@app71 ~]# rpm -qa | grep nfs
nfs-utils-123-36el6x86_64
nfs4-acl-tools-033-6el6x86_64
nfs-utils-lib-115-6el6x86_64
2 配置输出选项
[root@app71 ~]# vi /etc/exports
/mnt/iso 19216811(rw,sync,no_root_squash)
3 启动NFS服务
[root@app71 ~]# service nfs start
4 查看共享
[root@app71 ~]# showmount -e
Export list for app71:
/mnt/iso 3232990/24
5 开机启动
[root@app71 ~]# chkconfig --level 35 nfs on
客户端
创建挂载点mkdir -p /mnt/bk
mount -t nfs 192168110:/mnt/iso /mnt/bk
使用df -h查看/mnt/bk是否挂载成功。
将/etc/mtab中关于nfs的行增加到/etc/fstab中,实现自动挂载,注意先启动服务器。使用mount -av来查看自动挂载是否正常,正常情况文件系统挂载点无任何变化。
如果是oracle备份需要指定参数,包括读写缓冲,版本,超时等。更多信息可查看man 手册
NFS:network file system 网络文件系统,unix系统之间共享文件的一种协议。
NFS的客户端主要为linux,支持多节点同时挂载以及并发写入。
准备3台服务器:
web1:19216821
web2:19216822
nas:19216823
关闭selinux:sed -i '/^SELINUX=/cSELINUX=disable' /etc/selinux/config
-i :直接修改读取的文件内容,而不是输出到终端。
关闭防火墙:systemctl stop firewalldservice ; systemctl disable firewalld
1nas(存储端)
1)安装服务:yum -y install nfs-utilsx86_64
2)创建目录:[root@nas ~]# mkdir /webdata
3)写入网页文件:[root@nas ~]# echo "nfs test " > /webdata/indexhtml
4)写入配置文件:[root@nas ~]# vim /etc/exports
/webdata 19216820/24(rw,sync,no_root_squash)
rw :读写
sync:同时将数据写入内存与硬盘中,保证不丢失数据
no_root_squash 不压制root,当NFS客户端以root管理员访问时,映射为NFS服务器的root管理员。
2WEB1/WEB2的配置:
1)查看:[root@web1 ~]# showmount -e 19216823
Export list for 1921682101:
/webdata 19216820/24
2)安装服务:yum -y install nfs-utils ;yum -y install >11 NFS配置参数权限
参数名称
参数用途
rw
read-write,表示可读写权限
ro
read-only,表示只读权限
sync
请求或写入数据时,数据同步写入到硬盘才完成
async
异步写到远程缓冲区
all_squash
不管客户端什么用户,到服务端都会被压缩成匿名用户
anonuid
匿名用户的UID
anongid
匿名用户的GID
在配置文件内设置共享目录时所给予的权限:
[root@nfs01 ~]$ cat /etc/exports
/data 1721610/24(rw,sync) 10000/24(ro)
配置好NFS服务后,/var/lib/nfs/etab文件中可以看到的配置参数以及默认自带的参数:
[root@nfs01 ~]$ cat /var/lib/nfs/etab
/data
1721610/24(rw,sync,wdelay,hide,nocrossmnt,secure,root_squash,
no_all_squash,no_subtree_check,secure_locks,acl,no_pnfs,anonuid=65534,
anongid=65534,sec=sys,rw,secure,root_squash,no_all_squash
111 更改NFS默认用户
1111 nfs01服务端NFS、以及所有客户端:
[root@nfs01 ~] id >安装NFS服务器
1、首先打开“服务器管理器”。在“管理工具”菜单项中,或右击“我的电脑”选“管理”。
2、在左边的树中选中“功能”项。右边窗口中会列出“功能”的详细信息。单击“添加功能”。
3、会打开“添加功能向导”窗口。按下图选中“网络文件系统服务工具”
点“下一步”。然后点击“安装”,进行功能的安装。
4、安装成功后点“关闭”
5、添加“文件服务”角色。
6、在服务器管理器中,选中“角色”,右边会列出角色的详细信息。
7、点击“添加角色”文字,会运行“添加角色向导”。点“下一步”
8、选中“文件服务”项,在该项前面打勾。下一步。
9、直接点“下一步”
10、请确保“文件服务器”和“网络文件系统服务”项前面打勾。然后点“下一步”
11、点“安装”NFS:Network file system,网络文件系统
sun公司1984年推出,用来在网络中的多台计算机间实现资源共享(包括象文件或cd-rom)
设计的目的是:实现在不同系统间交互使用,所以它的通信协议采用与主机和 *** 作系统无关的技术
NFS Server可以看作是File Server,它可以让你的PC通过网络将远端得NFS SERVER共享出来的档案MOUNT到自己的系统中,在CLIENT看来使 用NFS的远端文件就象是在使用本地文件一样
FS协议从诞生到现在有多个版本:NFS V2(rfc1094),NFS V3(rfc1813)(最新的版本是V4(rfc3010)
RPC(Remote Procedure call)
NFS本身是没有提供信息传输的协议和功能的,但NFS却能让我们通过网络进行资料的分享,这是因为NFS使用了一些其它的传输协议。而这 些传输协议用到这个RPC功能的。
NFS本身就是使用RPC的一个程序,或者说NFS也是一个RPC SERVER所以只要用到NFS的地方都要启动RPC
服务,不论是NFS SERVER或者NFS CLIENT。这样SERVER和CLIENT才能通过RPC来实现PROGRAM PORT的对应。可以这么理解RPC和NFS的关系:NFS 是一个文件系统,而RPC是负责负责信息的传输。
nfs在系统中的后台守护进程: nfs
nfs服务需要启动的其他进程:
rpcnfsd:接收从远程系统发来的NFS请求,并将这些请求转化为本地文件系统请求
rpcmountd:执行被请求的文件系统的挂接和卸载 *** 作
rpcportmapper:将远程请求映射到正确的NFS守护程序
rpcstatd:在远程主机重启时,提供加锁服务
rpcquotaed:提供硬盘容量的管理能力,磁盘限额
在伺服器上使用 rpcinfo -p | grep -iE "service|NFS" 命令,显示伺服器上可使用的 NFS 版本
# rpcinfo -p | grep -iE "service|NFS"
表示伺服器可提供 NFS V3 和 NFS V4。
如果不需要krb5p,设置完就可以直接可以mount了
如果需要krb5p,在/etc/sysconfig/nfs文件中要设置
RPCNFSDARGS="-N 4"
-N 表示禁用 ,也可以是"-N 3"或者"-N 2",这是代表NFS版本,NFSv2,3,4,改完这个要将服务restart
这一项必须要填,不然client端会报错access错误,而server端不会有一点反应,连log中都不会出现报错!
CentOS 7 NFS设置
>
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)