NFS服务器配置与应用
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
NFS服务器配置与应用
【实验目的】
1、掌握Linux系统下NFS服务器安装
2、掌握Linux系统下NFS服务器的配置
3、学会Linux系统下NFS客户端的使用
【实验内容】
1.NFS介绍
NFS(Network FileSystem,网络文件系统)是由SUN公司发展,并于1984年推出的技术,用于在不同机器,不同操作系统之间通过网络互相分享各自的文件。NFS设计之初就是为了在不同的系统间使用,所以它的通讯协议设计与主机及操作系统无关。
NFS分服务器和客户机,当使用远端文件时只要用mount命令就可把远端NFS服务器上的文件系统挂载在本地文件系统之下,操作远程文件与操作本地文件没有不同。NFS服务器所共享文件或目录记录在/etc/exports文件中。
嵌入式Linux开发中,会经常使用NFS,目标系统通常作为NFS客户机使用,Linux主机作为NFS服务器。在目标系统上通过NFS,将服务器的NFS共享目录挂载到本地,可以直接运行服务器上的文件。在调试系统驱动模块以及应用程序,NFS都是十分必要的,并且Linux还支持NFS根文件系统,能直接从远程NFS root启动系统,这对嵌入式Linux根文件系统裁剪和集成也是十分有必要的。
NFS的优点:
1)本地工作站可以使用更少的磁盘空间,因为常用数据可以保存在一台机
器上,并让网络上的其他机器可以访问它
2)不需要为用户在每台网络机器上放一个用户目录,用户目录可以在NFS
服务器上设置并使其在整个网络上可用
3)存储设备可以被网络上其他机器使用。这可以减少网络上移动设备的数
量
2.在Ubuntu上布置NFS
1)安装NFS
sudo apt-get install nfs-kernel-server
2)配置NFS,添加共享目录
设置NFS-Server目录。
在做NFS服务器的电脑上设置子目录:如/home/****/nfs,供客户机访问,
向目录中拷贝一至二个文件。
3)修改/etc/exports文件,在其中增加NFS服务器目录。一个NFS服务器可以共享多个NFS目录,在/etc/exports文件中,每个目录的设置独占一行,编写格式如下:
NFS共享目录路径客户机IP或者名称(参数1,参数2,...,参数n)
说明:NFS共享目录可以是主机的任何一个目录,为方便使用,最好将权限设为777
客户机指的是可以访问共享目录的客户机的IP或者主机名,可以是指定的IP或者主机名。如果使用IP,可以使用通配符。假如指定IP为192.168.1.x的客户机可以访问,可以写成192.168.1.*,如果设置为*,则表示任何客户机都可以访问。
访问参数可以是一个,也可以是多个,用逗号分开。
在/etc/exports文件最后面添加
/home/****/nfs *(rw,sync,no_subtree_check,no_root_squash)
其中
*代表允许所有网段访问
rw代表读写权限
sync表示所有数据在请求时写入共享,同步写入内存和硬盘
ro表示只读
asyncnfs在写入数据前可以响应请求
securenfs通过1024以下的安全TCP/IP端口发送
insecurenfs通过1024以上的端口发送
wdelay如果多个用户要写入nfs目录,则归组写入(默认)
no_wdelay如果多个用户要写入nfs目录,则立即写入,当使用async时,无需此设置
hide在nfs共享目录中不共享其子目录
no_hide共享nfs目录的子目录
subtree_check如果共享/usr/bin之类的子目录时,强制nfs检查父目录的权限
no_subtree_check与上相对,不检查父目录权限
all_squash 共享文件的UID和GID映射匿名用户anonymous,适合公用目录
no_all_squash保留共享文件的UID和GID(默认)
root_squash root用户的所有请求映射成如anonymous用户一样的权限(默认)
no_root_squash root用户具有根目录的完全管理访问权限
anonuid=xxx 指定nfs服务器/etc/passwd文件中匿名用户的UID
anongid=xxx指定nfs服务器/etc/passwd文件中匿名用户的GID
4)重新启动NFS服务器
sudo service nfs-kernel-server restart
启动portmap(如有必要。如无portmap,请自行按提示思考用何替代)
sudo service portmap start
showmount –e
5)本地验证NFS服务器。将NFS服务器目录挂载到本机另外一个目录下,
可以看到挂载点目录下可以看到NFS服务器目录中的文件。
ls /home/****/nfs
sudo mount –t nfs 127.0.0.1:/home/****/nfs /mnt
df //查看结果
sudo umount /mnt
如果在使用中需要增加新的NFS共享目录,直接修改/etc/exports文件即
可。修改该文件后,可以不用重启NFS服务,用exportfs命令读取
/etc/exports文件,重新共享输出。exportfs命令语法如下:
exportfs [-aruv]
选项说明:
-a:全部挂载(或卸载) /etc/exports的设置;
-r:重新挂载/etc/exports的设置;
-u:卸载某一个目录;
-v:在输出的时候,把共享目录显示出来。
如果NFS已经启动,修改了/etc/exports文件,执行如下命令,新的设置即可生效:
sudo exportfs -ra
3.结果
1) 将NFS服务器输出的目录列表截屏保留
2) 将mount命令挂载NFS服务器的输出目录截屏保留
【实验报告】
1.新建文档,命名为:“学号后四位+姓名”,将配置成功的结果截屏粘贴在实验报告中。2.回答思考题。
3.总结操作过程中遇到的问题和解决方法及感想。