全部博文(191)
分类: LINUX
2009-06-09 03:25:21
1:实验目的
通过NFS网络协议,从而使linux客户机像访问本地资源一样访问linux服务器资源
2:应用环境
在局域网存在多台linux 计算机,有资源共享的需求。
3:软件环境
Linux发行版本:RedHat Eenterprise 5.3
Linux 内核: 2.6.18-128.e15
NFS软件包:nfs-utils-1.0.9-40.e15.i386.rpm 提供NFS服务器的启动脚本和管理维护工具
portmap-4.0-65.2.2.1.i386.rpm 为NFS服务器提供RPC服务支持
autofs-5.0.1-0.rc2.102.i386.rpm 实现自动挂载器的功能
4:硬件环境
服务器ip地址:192.168.1.112
客户端ip地址:192.168.1.113
5:在服务器搭建NFS应用服务
5.1 NFS服务器的配置文件的绝对路径/etc/exports ,默认情况下,exports没有任何共享目录的输出,vi编辑exports,添加共享目录在配置文件里面:
/var/ftp/pub 192.168.1.113(sync,ro)
###客户机只读访问/var/ftp/pub
/var/ftp/data 192.168.1.113(sync,rw)
###客户机读写访问/var/ftp/data
/tmp 192.168.1.113(sync,rw,no_root_squash)
###客户机读写访问/tmp,但当以root用户挂载该目录时候,对该目录有root权限
/home/public 192.168.1.0/24(sync,rw,all_squash,anonuid=500,anongid=500)
###局域网段为192.168.1.0 的客户机对/home/public读写权限,但是所有登入者的uid,gid统一为 500
5.2 重启服务
Service nfs restart
Service portmap restart
5.3 设置服务nfs和portmap 开机启动
Portmap服务默认开机就启动
Chkconfig –level 35 nfs on #### nfs 开机自动运行
6:有关NFS命令的使用
6.1 exportfs
exportfs –rv 当修改了/etc/exports的时候,不必重启nfs服务,使用这个命令+参数就可以更新/etc/exports的内容。
exportfs -au 停止共享目录的输出
6.2 showmount
showmount –a nfs服务器的共享目录被客户机挂载的情况
showmount –e 显示nfs服务器的共享目录
6.3 netstat –utln 查找nfs,portmap所使用的端口
6.4 rpcinfo 显示nfs和portmap服务所启用的端口与对应的程序(进程)。
rpcinfo –p 192.168.1.112
说明:nfs 的端口是 2049
Portmap 的端口是 111
7:客户段的设置,以便成功读取NFS服务器的共享目录资源(手工挂载)
说明:检查客户端portmap服务是否开启,默认是开启的。
7.1 建立挂载点目录
mkdir –p /home/zzz/pub
mkdir –p /home/zzz/data
mkdir –p /home/zzz/tmp
mkdir –p /home/zzz/public
7.2 挂载NFS服务器共享目录资源
格式:mount –t 文件系统 NFS服务ip或主机名称:共享目录绝对路径 客户机挂载点
7.2.1 挂载/var/ftp/pub目录
命令: mount –t nfs 192.168.1.112:/var/ftp/pub /home/zzz/pub
说明:共享目录/var/ftp/pub 的参数是只读的。客户端任意用户(包括客户端root用户)对/home/zzz/pub/的文件不能修改,删除,只能读取数据。
7.2.2挂载/var/ftp/data目录
命令: mount –t nfs 192.168.1.112:/var/ftp/data /home/zzz/data
说明: 共享目录/var/ftp/data 的参数是读写的。客户端任意用户(包括客户端root用户)想要获得在/home/zzz/data/下对文件,或要在该目录下创建文件和目录的写权限,服务器还必须对/var/ftp/data目录授予写的权限才可以。默认参数情况下,当root在/home/zzz/data/进行写操作时候,匹配的uid ,gid 是65534,65534 即nfsnobody用户。其他任意用户匹配的是当前写操作的uid,gid ,在客户端是jack这个用户在写操作,但在服务端是另一个在服务器上存在的用户,可能是jack这个用户,但是他们的uid,gid是一样的。
7.2.3挂载/tmp目录
命令:mount –t nfs 192.168.1.112:/tmp /home/zzz/tmp
说明:共享目录/tmp 的参数是读写,no_root_squash 参数是指客户端root用户对该目录有完全控制权限,当然uid,gid 就是0,0 。而非 65534,65534.
7.2.4 挂载/home/public目录
命令:mount –t nfs 192.168.1.112:/home/public /home/zzz/public
说明:共享目录/home/public 的参数是读写,必须授予public 目录写的权限。all_squash 参数是指客户端任意用户(包括root用户)在服务端显示为nfsnobody ,anonuid=500和anongid=500 参数表示nfsnobody 的uid,gid 是 500,500.目的是为了命名规范。那么服务器端和客户端显示的是 500对应的用户(必须存在)。
7.2.5 经过测试:客户端成功访问NFS服务器输出共享资源/var/ftp/pub
客户端成功访问NFS服务器输出共享资源/var/ftp/data
客户端成功访问NFS服务器输出共享资源/tmp
客户端成功访问NFS服务器输出共享资源/home/public
8.客户端实现自动挂载NFS服务器输出共享资源目录(自动挂载器)
8.1 卸载全部手动挂载的目录
umount /home/zzz/pub
umount /home/zzz/data
umount /home/zzz/public
umount /home/zzz/tmp
8.2 autofs软件包要实现自动挂载涉及到两个文件,auto.master和auto.misc
8.2.1 auto.master 文件定义本地挂载点. 本地挂载点目录/test . vi 编辑auto.master 配置文件如下:
/test /etc/auto.misc --timeout=60
含义:/test 是本地挂载点(需事先mkdir建立)
/etc/auto.misc 配置文件是用来设置需要挂载的文件系统
--timeout=60 挂载超时时间,单位为秒。可以修改这个参数。
8.2.2 重启autofs服务
Service autofs restart
8.2.3 auto.misc 配置文件的设置
pub -ro,soft 192.168..1.112:/var/ftp/pub
### soft参数 是指软挂载
data -rw,hard,intr 192.168.1.112:/var/ftp/data
### hard参数 是指硬挂载,intr参数是指中断与服务器的请求(当服务器出现故障时候)
8.2.4 重启autofs 服务
Service autofs restart
8.2.5 访问NFS服务器的输出共享目录
ls /test/pub ###pub目录客户端无须建立,自动从/etc/auto.misc生成。
ls /test/data ###data目录客户端无须建立,自动从/etc/auto.misc生成。
9: 经过测试,成功共享服务器的共享目录资源。
10:注意事项
10.1 这两个端口,即 2049 (nfs) ,111(portmap)要开放。
10.2 /etc/exports 权限的设定。
10.3 相关参数的含义,如:intr,hard,no_root_squash 等。
**************完**************