我的博客:http://wqmsl.blog.51cto.com

制作人:wqmsl

 

目标:1、搭建NFS服务器

      2、使用客户端访问(Linux)

      3、使用Windows客户端访问

      4、常用到的命令介绍

1、IP说明:

192.168.0.2——主机名:nfs.wqmsl.com      NFS服务器

192.168.0.3——主机名:client.wqmsl.com    client客户端

2、前期准备

   更改主机名称(更改三处):1、hostname更改,2、hosts更改,3、/etc/sysconfig/network

一、现在实现第一个目标,搭建NFS服务器

所需软件包如下

wps_clip_p_w_picpath-12816

nfs-utils-1.0.9-24.el5——nfs服务的主程序包,它提供rpc.nfsd及rpc.mountd这两个daemons以及相关的说明文件。

portmap-4.0-65.2.2.1——rpc主程序,记录服务的端口映射信息。

wps_clip_p_w_picpath-22520

NFS的常用目录

1、/etc/exports这个文件是NFS的主要配置文件,默认这个文件时空的哦,需要自己手动添加。

2、/usr/sbin/exportfs这是维护NFS共享资源的命令,用的不是很多,我们一般在配置文件里面定义。

3、/usr/sbin/showmount命令主要用在客户端,可以用来查看NFS共享出来的目录资源。

4、/var/lib/nfs/etab(xtab)其中的etab记录了NFS分享出来的目录的完整权限设定值,另一个是xtab,记录曾经连接到此NFS主机的相关client数据。

这个配置文件只要分为三列

第一列------写入你需要共享的目录路径

第二列------写入客户端描述,也就是哪些客户端可以使用你的服务器

第三列------是紧挨着第二列的,内容是共享的权限(rw ro sync)

wps_clip_p_w_picpath-15016

wps_clip_p_w_picpath-18322

wps_clip_p_w_picpath-11089

我共享了/var 和/etc两个目录,

1、NFS对client的表达方式要求不是很严格,常用的表达方式都可以识别,例如:IP就直接输入IP地址192.168.0.0网段:192.168.0.0/24 ;192.168.0.0/255.255.255.0

域名:www.wqmsl.com域:*.wqmsl.com

2、如果表示所有的IP都能访问,就直接输入" * "  .

3、sync:同步写入资料到内存与硬盘中async:资料会暂存到内存中,而非直接写入硬盘

4、这两个那个比较好?

如果你是重要的小文件,当然是sync,同步写入,避免文件丢失

如果你是很大的数据,建议不要同步写入

5、rw:可读可写

6、ro:只读,这个很简单

重启nsf服务,由于nfs是基于portmap进程的,所有先启动它然后启动nfs.

wps_clip_p_w_picpath-9294

OK以后,大家使用showmount指令看看是否共享成功

showmount -e  后面跟你的服务器IP

也可以使用showmount -e  这是默认查看自己共享的服务,前提是要DNS能解析自己,不然容易报错

wps_clip_p_w_picpath-16796

nfs的端口是 2049 ,但是它基于portmap,portmap的端口是111

编辑NFS的端口配置文件

vi /etc/sysconfig/nfs

wps_clip_p_w_picpath-12814

配置nfs固定端口

vim /etc/sysconfig/nfs

自定义以下端口,然而不能和其他端口冲突

RQUOTAD_PORT=5001

LOCKD_TCPPORT=5002

LOCKD_UDPPORT=5002

MOUNTD_PORT=5003

STATD_PORT=5004就是这 5个参数

但是 LOCKD_TCPPORT= LOCKD_UDPPORT= 可以使用一个端口号

大家定义好了,重新启动服务器就可以了

启动portmap和nfs服务

由于NFS服务是基于portmap服务的,所以我们需要先启动portmap服务:service portmap restart ,然后 service nfs restart

使用rpcinfo命令检测nfs是否使用了固定端口

rpcinfo -p

wps_clip_p_w_picpath-9237

我没有使用固定端口,默认还是111和2049.

检测nfs的rpc注册状态

rpcinfo -u 主机名或IP地址 进程

rpcinfo -u 192.168.0.2 nfs

wps_clip_p_w_picpath-28319

查询服务器的状态

为了保证NFS服务器能够正常工作,系统中需要运行portmap和nfs两个服务程序

# service portmap status

# service nfs status

启动服务器

# service portmap start

# service nfs start

停止服务器运行

# service nfs stop

二、实现第二个目标,使用Linux客户端访问

挂载使用mount命令手动挂载,也可以使用autofs挂载

如果使用fstab挂载的话,要注意了,由于系统启动读取fstab在启动rc.d之前。所以那个时候nfs还没有启动,所以会挂在失败,可以在rc.local里面写入 mount -a 来在最后从新挂载fstab

我们先手动挂载试试

挂载及卸载NFS文件系统

mount -t nfs NFS服务器IP地址或主机名:共享名 本地挂载点

mount  -t  nfs  192.168.0.2:/etc  /mnt

wps_clip_p_w_picpath-11537

已经挂载成功了

挂载成功后没有任何提示,如果挂载失败的时候会有提示。

也可以用mount 命令来查看是否挂载成功

wps_clip_p_w_picpath-22453

卸载为:umount  /mnt

启动自动挂载nfs文件系统

vim /etc/fstab

wps_clip_p_w_picpath-9549

使用客户端查看nfs的共享资源

wps_clip_p_w_picpath-5544

三、实现使用Windowss客户端访问Linux的NFS

Omni Lite是比较常用的Windows操作系统中运行的NFS客户端软件

Omni Lite是商业软件,可以下载并进行试用

ftp://ftp.xlink.com/pub/xlink_demo/cnet/liteall.exe

1、启动NFS Client程序

2、设置NFS服务器主机记录

3、定义NFS驱动器的连接

4、挂载NFS驱动器

5、使用NFS网络驱动器

6、卸载NFS驱动器

7、启动NFS Client程序

Windows下的东西这里我就不多讲了,一般都很简单的。

四、常用到的命令介绍

重新输出共享目录

使nfs服务器重新读取exports文件中的设置

# exportfs -rv

停止输出所有目录

停止当前主机中NFS服务器的所有目录输出

# exportfs -auv

输出(启用)所有目录

输出当前主机中NFS服务器的所有共享目录

# showmount -e

显示NFS服务器的输出目录列表

显示当前主机中NFS服务器的输出列表

# showmount -e

显示指定NFS服务器中的共享目录列表

# showmount -e 192.168.152.131

显示NFS服务器中被挂载的共享目录

显示当前主机NFS服务器中已经被NFS客户机挂载使用的共享目录

# showmount -d

显示NFS服务器的客户机与被挂载的目录

显示当前主机中NFS服务器的客户机信息

# showmount -a

显示指定主机中NFS服务器的客户机信息

# showmount -a 192.168.152.131

注意事项

提示1:

在进行NFS服务器访问的实验中,应注意NFS服务器端的网络防火墙的访问策略和SELinux是否允许进行nfs网络服务的访问,以上所有试验均是在允许情况下实现的。

 

我的博客:http://wqmsl.blog.51cto.com

欢迎大家和我一起交流                   QQ:459176770