您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 销售管理 > 第六章NFS服务全攻略
第六章:NFS服务全攻略略内容简介NFS服务的概述NFS服务的配置启动和停止NFS服务测试NFS服务NFS客户端的使用案例详解NFS服务的概述NFS最早是由Sun公司于1984年开发出来的,其目的就是让不同计算机不同操作系统之间可以彼此共享文件。由于NFS使用起来非常方便,因此很快得到了大多数的UNIX/Linux系统的广泛支持,而且还被IETE(国际互联网工程组)制定为RFC1904、RFC1813和RFC3010标准。NFS服务的概述NFS采用客户/服务器工作模式。在NFS服务器上将/nfs/public目录设置为输出目录(即共享目录)后,其他客户端就可以将这个目录挂载到自己系统中的某个目录下,这个目录可以与服务器上的输出目录和其他客户机中的目录不相同,例如图中的客户机PC1与PC2的挂载目录就不相同。如果某用户登录到客户机PC1并进入/mnt/nfs目录,那么他就可以看到NFS服务器内/nfs/public目录下的所有子目录及文件,只要具有相应的权限,就可以使用cp、cd、mv、rm和df等命令对磁盘或文件进行相应的操作。NFS服务的概述(图1)RemoteProcedureCallNFS本身的服务并没有提供资料传递的协议,但是NFS却能让我们进行档案的分享,这其中的原因,就是NFS使用到一些其它相关的传输协议!而这些传输的协议,就是使用到这个所谓的RPCNFS主要在管理分享出来的目录,而至于资料的传递,就直接将他给RPC的协议来运作主机的IP、服务的端口、与对应到的服务的PID等等管理工作由RPC负责人NFS服务的概述使用NFS服务,至少需要启动以下3个系统守护进程。(1)rpc.nfsd(2)rpc.mountd(3)portmapNFS相关进程的作用(图2)NFS服务的安装可使用下面的命令来检查系统中是否已经安装了这两个包rpm-qnfs-utilsportmap下面的命令安装portmap服务rpm-ivhportmap下面的命令安装NFS服务rpm-ivhnfs-utilsNFS服务的配置exports文件的格式exprots文件中每一行提供了一个共享目录的设置其命令格式为:<输出目录>[客户端1(选项1,选项2,…)][客户端2(选项1,选项2,…)]客户端常用的指定方式客户端说明192.168.16.20指定IP地址的主机192.168.16.0/24(或192.168.16.*)指定子网中的所有主机pc1.vpn.net指定域名的主机*.vpn.net指定域中的所有主机*(或缺省)所有主机访问权限选项访问权限选项说明ro设置输出目录只读rw设置输出目录可读写用户映射选项用户映射选项说明all_squash将远程访问的所有普通用户及所属用户组都映射为匿名用户或用户组(一般均为nfsnobody)no_all_squash不将远程访问的所有普通用户及所属用户组都映射为匿名用户或用户组(默认设置)root_squash将root用户及所属用户组都映射为匿名用户或用户组(默认设置)no_root_squash不将root用户及所属用户组都映射为匿名用户或用户组anonuid=xxx将远程访问的所有用户都映射为匿名用户,并指定该匿名用户账户为本地用户账户(UID=xxx)anongid=xxx将远程访问的所有用户组都映射为匿名用户组账户,并指定该匿名用户组账户为本地用户组账户(GID=xxx)常用的其他选项其他选项说明secure限制客户端只能从小于1024的TCP/IP端口连接NFS服务器(默认设置)insecure允许客户端从大于1024的TCP/IP端口连接NFS服务器sync将数据同步写入内存缓冲区与磁盘中,虽然这样做效率较低,但可以保证数据的一致性async将数据先保存在内存缓冲区中,必要时才写入磁盘wdelay检查是否有相关的写操作,如果有则将这些写操作一起执行,这样可提高效率(默认设置)no_wdelay若有写操作则立即执行,应与sync配合使用subtree_check若输出目录是一个子目录,则NFS服务器将检查其父目录的权限(默认设置)no_subtree_check即使输出目录是一个子目录,NFS服务器也不检查其父目录的权限,这样做可提高效率NFS服务配置实例/nfs/public192.168.16.0/24(rw,async)*(ro)/nfs/liu192.168.16.20(rw,sync)/nfs/root*.gdvcp.net(ro,no_root_squash)/mnt/cdrom192.168.16.*(ro)维护NFS服务的输出目录列表exportfs命令就是用来维护NFS服务的输出目录列表的,命令的基本格式如下。exportfs[选项]其选项有以下几个。-a:输出在/etc/exports文件中所设置的所有目录。-r:重新读取/etc/exports文件中的设置,并使设置立即生效,而不需重新启动NFS服务。-u:停止输出某一目录。-v:在输出目录时将目录显示到屏幕上启动和停止NFS服务1.启动NFS服务/etc/init.d/portmapstart/etc/init.d/nfsstart2.停止NFS服务/etc/init.d/nfsstop/etc/init.d/portmapstop3.重新启动NFS服务/etc/init.d/nfsrestart4.检查portmap和nfs服务的状态/etc/init.d/portmapstatus/etc/init.d/nfsstatus5.设置自动启动NFS服务chkconfig--level35portmaponchkconfig--level35nfsonntsysv启动服务配置程序,找到nfs和portmap服务,分别在其前面加上*测试NFS服务1.检查输出目录所使用的选项在配置文件/etc/exports中,即使在命令行中只设置了一两个选项,但在真正输出目录时,实际上还带有很多默认的选项。通过查看/var/lib/nfs/etab文件,就可以了解到真正输出目录时,到底使用了什么选项。2.使用showmount命令测试NFS服务器的输出目录状态showmount命令的基本格式为:showmount[选项]NFS服务器名称或地址常用的选项有:-a:显示指定的NFS服务器的所有客户端主机及其所连接的目录;-d:显示指定的NFS服务器中已被客户端连接的所有输出目录;-e:显示指定的NFS服务器上所有输出的共享目录。NFS客户端的使用查看NFS服务器信息【例】如果NFS服务器的IP地址为192.168.85.128,那么可使用下面的命令来查看。showmount-e192.168.85.128连接NFS服务器挂载NFS服务器上的输出目录的命令格式为:mount-tNFS服务器名或IP地址:输出目录本地挂载目录【例】将NFS服务器(192.168.85.128)上的/nfs/public共享目录挂载到本机上的/mnt/nfs目录。具体的步骤如下。①使用下面的命令来建立/mnt/nfs目录。mkdir/mnt/nfs②使用下面的命令来挂载NFS服务器上的输出目录。mount-tnfs192.168.85.1128:/nfs/public/mnt/nfs卸载NFS服务器要卸载前面挂载的/mnt/nfs目录,可使用下面的命令。umount/mnt/nfs启动时自动连接NFS要想让系统在启动时自动挂载NFS服务器上的输出目录,应编辑文件/etc/fstab,在该文件中加入如下格式的语句。NFS服务器名或IP地址:输出目录本地挂载目录nfsdefaults00【例】要将NFS服务器(192.168.85.128)上的/nfs/public共享目录,在计算机Fedora4启动时自动挂载到该机上的/mnt/nfs目录,可在/etc/fstab文件中加入下面的语句。192.168.85.129:/nfs/public/mnt/nfsnfsdefaults00mountnfs的其它可选参数soft#当服务器端没回应时,会在timeout后重新连接,传回错误信息hard#当服务器端没回应时持续在后台尝试连接intr#当正在进行NFS请求时,允许用键盘中断nointr#当正在进行NFS请求时,不允许用键盘中断timeo#超时时间案例详解【案例1】架设一台NFS服务器,并按照以下要求配置输出目录(1)开放/nfs/shared目录,供所有用户查阅资料。(2)开放/nfs/upload目录作为192.168.85.0/24网段的数据上传目录,并将所有用户及所属的用户组都映射为nfs-upload,其UID与GID均为210。(3)将/home/tom目录仅共享给192.168.85.129这台主机,并且只有用户tom可以完全访问该目录。#mkdir-p/nfs/shared#mkdir-p/nfs/upload#chmod777/nfs/upload#useraddtom#useradd-u600test#vim/etc/exports/nfs/shared*(ro)/nfs/upload192.168.85.0/24(rw,all_squash,anonuid=210,anongid=210)/home/tom192.168.85.128(rw)注意一点:这里要注意tom两边的UID必需要一致否则不能实现第3个要求★★★★★★★★★★★★★★★★★视频观看地址★★★★★★★★★★★★★★★★★★://
本文标题:第六章NFS服务全攻略
链接地址:https://www.777doc.com/doc-2157895 .html