环境:
server: xuexi.com(rhel6.5)
client: study.com(rhel6.5)
NFS:Network File System即网络文件系统,NFS允许一个系统在网络上与他人共享目录和文件,通过使用NFS用户和程序像访问本地文件一样访问远端系统上的文件。
工作模式: C/S
应用端口:
nfs:2049
系统安装:
[root@xuexi ~]# yum -y install nfs-util
相关管理命令:
mount showmount
主配置文件
[root@xuexi ~]# ls /etc/exports
查看2049端口是否开放
[root@xuexi ~]# netstat -antpu | grep 2049
开启服务:
[root@xuexi ~]# service nfs start
配置开机自动启动
chekconfig nfs on
服务使用
[root@study local]# showmount -e 10.10.125.4
Export list for 10.10.125.4:
文件挂载
首先在服务端添加挂载共享出去的文件夹即权限
[root@xuexi ~]# vim /etc/exports
/mnt *(rw)
/etc/exports书写格式 需要共享出去的目录 [hostname、IP、域名、*] [rw] [sync] [all_squash] ceshi1 *(rw,no_root_squash) ceshi2 10.10.125.1(rw,sync) ceshi3 10.10.125.0/24(ro) ceshi4 *.study.com(rw,all_squash,anonuid=500,angongid=500) ceshi5 10.10.125.0/24(rw) 10.10.124.0/24(rw) 参数说明: sync/async:数据同步写入硬盘/不同步写入在内存中缓存 root_squash(压制):如果用root登录nfs,使其身份自动切换成nfsnobody。 no_root_squash:如果用root登录nfs,使其身份就是root。 all_squash:用户登录nfs时,指定身份为UID/GID的用户。
相关参数参考博文:http://zhengkangkang.blog.51cto.com/12015643/1873779
此项中发布恭喜下昂的目录是必根参数其他为可选参数,发布的共享目录与客户端之间及客户端与客户端之间需要空格,客户端与参数之间不能有空格
客户端挂载
[root@study ~]# mount 10.10.125.4:/mnt/ /nfs
[root@study ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 9.7G 4.1G 5.1G 45% /
tmpfs 672M 0 672M 0% /dev/shm
/dev/sda1 194M 28M 156M 16% /boot
/dev/sr0 3.6G 3.6G 0 100% /mnt
/dev/sdb5 20G 3.4G 16G 19% /data
10.10.125.4:/ceshi 7.7G 4.2G 3.2G 57% /nfs
验证
[root@study ~]# for i in {1..5};do mount 10.10.125.4:/share/ceshi${i} /share/ceshi${i};done mount.nfs: access denied by server while mounting 10.10.125.4:/share/ceshi4 [root@study ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/sda2 9.7G 4.1G 5.1G 45% / tmpfs 672M 0 672M 0% /dev/shm /dev/sda1 194M 28M 156M 16% /boot /dev/sr0 3.6G 3.6G 0 100% /mnt /dev/sdb5 20G 3.4G 16G 19% /data 10.10.125.4:/share/ceshi1 7.7G 4.2G 3.2G 57% /share/ceshi1 10.10.125.4:/share/ceshi2 7.7G 4.2G 3.2G 57% /share/ceshi2 10.10.125.4:/share/ceshi3 7.7G 4.2G 3.2G 57% /share/ceshi3 10.10.125.4:/share/ceshi5 7.7G 4.2G 3.2G 57% /share/ceshi5
咦:/share/ceshi4 没有共享出来耶
ceshi4 *.study.com(rw,all_squash,anonuid=500,angongid=500)
mount.nfs: access denied by server while mounting 10.10.125.4:/share/ceshi4
对于几个共享出来的权限进行对比及测试:
[root@study share]# for id in {1..5};do echo "${id}" >> ceshi${id}/111 ;done -bash: ceshi2/111: 权限不够 -bash: ceshi3/111: 只读文件系统 -bash: ceshi4/111: 权限不够 -bash: ceshi5/111: 权限不够
测试结果表明只有ceshi1可写其他均没有可写权限
[root@study share]# for id in {1..5};do cat ceshi${id}/* ;echo "ceshi${id}";done
各个nfs系统均可读
实现开机自动挂载
echo “10.10.125.4:/share/ceshi1 /share/ceshi1 nfs defaults 0 0”>> /etc/fstab
验证
[root@study ceshi4]# mount -a
触发式自动挂载
nfs实现触发式自动挂载则需要依赖工具autofs,其涉及的两个文件分别为/etc/auto.master 和/etc/auto.misc文件
安装
[root@study ceshi4]# yum -y install autofs
[root@study ceshi4]# mkdir nfs #创建挂载目录
[root@study nfs]# vim /etc/auto.master #配置指定挂载的文件目录
/share/ceshi2 /etc/auto.nfs --timeout=60 #指定挂载配置文件以及超时时间60s
[root@study nfs]# cat /etc/auto.nfs #配置挂载点和挂载类型及nfs服务器共项出来的目录
nfs -fstype=nfs 10.10.125.4:/share/ceshi2
重启autofs服务
service autofs restart
验证
cd /share/ceshi2/nfs
df -h
10.10.125.4:/share/ceshi2 7.7G 4.2G 3.2G 57% /share/ceshi2/nfs