您的购物车目前是空的!
Table of Contents
1、两台虚拟机(CentOS7),一台为服务器(192.168.1.10),一台为客户端(192.168.1.20)。
2、 配置静态ip、主机名,并写/etc/hosts记录。
3、关闭防火墙和selinux。
nfs-utils
:包含NFS服务端守护进程和NFS客户端的工具
rpcbind
:提供RPC的端口映射的守护进程及其相关文档、执行文件等
yum -y install nfs-utils rpcbind
NFS使用/etc/exports定义需要共享的目录及访问对象的控制,NFS在默认情况下不共享任何目录(/etc/exports文件为空)当需要共享目录时管理员需要手动设置。
编辑格式:
[共享目录] [客户端1(参数项)] [客户端2(参数项)]
客户端常用的指定方式:
指定ip地址的主机:192.168.1.10
指定子网中的所有主机:192.168.1.0/24 或192.168.1.0/255.255.255.0
指定域名的主机:www.abc.com
指定域中所有的主机: *.abc.com
所有主机: *
常用选项:
ro 设置共享目录为只读的权限
rw 设置共享目录为可读写的权限
all_squash 将远程访问的所有普通用户以及所属组都映射为匿名用户或用户组,相当于使用nobody用户访问该共享目录(此参数为默认设置)
no_all_squash 与all_squash相反
root_squash 将root用户及其所属组都映射为匿名用户或用户组(默认设置)
no_root_squash 与root_squas相反,即以root身份访问
anonuid和anongid 将远程访问的所有用户以及所属组都映射为匿名用户或用户组,并指定其uid,gid
sync 将数据同步写入内存缓冲区与磁盘中,效率低,但可以保证数据的一致性
async 将数据先保存在内存缓冲区中,必要时才写入磁盘
在/etc/exports文件中,每一行代表一个共享目录,并且描述了该目录如何被共享 vi /etc/exports
,写入以下内容
/test 192.168.1.20(rw,no_root_squash) #/test为共享目录,ip为192.168.1.20主机有可读可写权限,并以root身份访问。
mkdir /test
systemctl restart rpcbind.service systemctl restart nfs.service
showmount -e 127.0.0.1
–下面的显示表示已经启动
Export list for 127.0.0.1:
/test 192.168.1.20
showmount -e 192.168.1.10
Export list for 192.168.1.10:
/share 192.168.1.20
挂载格式: mount -t nfs 服务器地址:/共享目录 /本机挂载点
卸载格式: umount 挂载点
mkdir /share #创建本机挂载点 mount 192.168.1.10:/test /share #将共享目录挂载到本地的/share目录 df -h #查看挂载是否成功
文件系统 容量 已用 可用 已用% 挂载点
/dev/mapper/cl-root 17G 4.2G 13G 25% /
devtmpfs 473M 0 473M 0% /dev
tmpfs 489M 144K 489M 1% /dev/shm
tmpfs 489M 7.1M 482M 2% /run
tmpfs 489M 0 489M 0% /sys/fs/cgroup
/dev/sda1 1014M 173M 842M 18% /boot
tmpfs 98M 8.0K 98M 1% /run/user/0
/dev/sr0 4.1G 4.1G 0 100% /run/media/root/CentOS 7 x86_64
192.168.1.10:/test 17G 4.8G 13G 28% /share
cd /test cp /etc/passwd /test
ls /share cat /share/passwd #可以查看到/share/passwd中的内容