嵌入式环境:配置NFS服务器

来源:互联网 发布:intellij java 编辑:程序博客网 时间:2024/05/22 17:39

NFS概述

NFS(Network File System)是一种分布式文件系统,允许网络中的安装不同操作系统的计算机间共享文件和外设,所以它的通讯协定设计与主机及作业系统无关.它是由SUN公司于1984年推出,使得可以本地机一样的使用另一台联网计算机的文件和外设。NFS在文件传送或信息传送过程中依赖于RPC协议。NFS的当前版本是V4RFC3010

RPC,远程过程调用 (remote procedure call)是能使客户端执行其他系统中程序的一种机制。由于使用 RPC 的程序不必了解支持通信的网络协议的情况,因此 RPC提高了程序的互操作性。常用于分布式客户端/服务器模型, 发出请求的程序是客户程序,而提供服务的程序是服务器。RFC1831

1. NFS服务器的安装

NFS的安装是非常简单的,只需要两个软件包即可,而且在通常情况下,是作为系统的默认包安装的,在配置使用NFS之前需要先查询所需的软件包是否已安装.

检查linux系统中是否安装了nfs-utilsportmap两个软件包

[root@blue arm513]# rpm -q nfs-utils

nfs-utils-1.1.4-1.fc10.i386

如果出现包的信息,则表示已安装了nfs-utils portmap两个软件包

如果当前系统中没有安装NFS所需的使用的软件包,需要手工进行安装。nfs-utils-1.1.4-1.fc10.i386.rpm

portmap-4.0-63.i386.rpm

1.1 Portmap软件包

portmap软件包中的portmap服务,为NFSNIS等提供PRC服务的支持,因此在安装NFS时就先安装portmap软件包.

rpm -ql portmap
/etc/rc.d/init.d/portmap
/sbin/portmap

1.2 nfs-utils软件包
nfs-utils
软件包提供了NFS服务器程序和相应的管理工具。

rpm -ql nfs-utils

 

2.指定NFS服务器的配置文件

NFS服务器的配置文件保存“/etc/”目录中,文件名称是“exports”,该文件用于被指NFS服务器提供的目录共享,。exports的默认设置为空,没有输出任何的目录共享,这也是出于安全考虑,这样即使启动了NFS服务也不会提供任何的共享。

    命令#vi /etc/exports

   配置“exports”文件格式如下,exports文件中每行提供一个共享的目录,设置行的格式如下所示:

要输出的共享目录 客户端主机的地址(设置先项)

    /home *syncro

    Home:共享目录名

    *:表示所有主机

   syncro):设置选项

exports文件中的设置选项字段,在共享设置文件中,共享目录和主机地址间用空格分隔,主机地址之后紧随设置选项,设置选项放置在括号对(( ))中,多个设置选项间用逗号分隔。注意以上的*与括号之间不要有空格,要不然会有错误信息。

2.1 共享目录

共享目录设置系统中需要作为共享的目录路径。

2.2客户端主机地址

exports文件客户端,客户端主机的指定非常灵活,如下所示

客户端主机地址                                                说明

192.168.0.28                                       指定ip地址的主机

www.chinafu.net                                       指定域名的主机

192.168.0.1031                                指定网段中的所有主机

*.chinafu.com                                    指定域中的所有主机

*                                                       指定所有主机

2.3设置选项

exports文件中的设置选择较多,但经常用的并不多

设置选项                                              说明

sync:设置NFS服务器同步写磁盘,这样不会轻易丢失数据,建议所有的NFS共享目录都使用该选项

ro:设置输出的共享目录只读,与rw不能共同使用

rw:设置输出的共享目录可读写,与ro不能共同使用

3.重新输出共享目录

Exportfs管理工具可以对“exports”文件进行管理,exportfs -rv命令使NFS服务器重新读取exports文件中的设置,使用该命令可以在改变exports文件设置后,使设置在当前服务器中生效,而不需要重新启动NFS服务器

3.1停止输出所有目录

exportfs -auv

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

3.2输出所有的目录

exportfs -av

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

4.查看NFS服务器是否启动

命令#service nfs status

rpc.mountd (pid 8785) 正在运行...

nfsd (pid 8782 8781 8780 8779 8778 8777 8776 8775)正在运行...

    #service portmap status

4.1.如果服务器没有启动,则开启服务(默认服务下nfs没有完全开启)

   命令#service nfs start

#service portmap start

4.2设置NFS服务器的自动启动状态

对于实际的应用系统,每次启动LINUX系统后都手工启动nfs服务器是不现实的,需要设置系统在指定的运行级别自动启动portmapnfs服务。

[root@localhost ~]# chkconfig --list portmap
portmap         0:off   1:off   2:off   3:off    4:off 5:off    6:off

[root@localhost ~]# chkconfig --list nfs
nfs             0:off   1:off   2:off   3:off   4:off   5:off   6:off

//设置portmapnfs服务在系统运行级别35自动启动.

[root@localhost ~]# chkconfig --level 35 portmap on

[root@localhost ~]# chkconfig --level 35 nfs on
[root@localhost ~]# chkconfig --list portmap
nfs             0:off   1:off   2:off   3:on    4:off 5:on    6:off

[root@localhost ~]# chkconfig --list nfs
nfs             0:off   1:off   2:off   3:on    4:off 5:on    6:off

5.停止NFS服务器

要停止NFS运行时,需要先停止nfs服务再停止portmap服务,对于系统中有其他服务(NIS)需要使用时,不需要停止portmap服务

#service nfs stop

#service portmap stop

6. showmount命令

在正确设置了NFS共享目录后并正确启动NFS服务器后,可以使用showmount命令查询NFS的共享状态.

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

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

    # showmount -e

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

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

# showmount –d

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

# showmount -a

7.在另外一个linux系统中挂在共享目录

在使用mount挂载NFS服务器的共享目录之前,最好先查询NFS服务器中是否允许本机连接相应的目录共享,显示NFS服务器的输出

    # showmount -e 172.16.75.1

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

# mount -t nfs 172.16.75.1/software /mnt/

细节提示:挂载点目录是已建立的空目录,也可是使用其他的空目录v

8、查看mnt目录中的内容

    Cd /mnt |ll

9.卸载系统中已挂载的NFS共享目录

   命令# umount /mnt/

   总结:

    1>、在配置NFS服务器之前用ping命令确保两个linux系统正常连接,如果无法连接关闭图形界面中的防火墙#service iptables stop

    2>、在配置中确保输入的命令是正确的

    3>、更改完“exports”文件后要输入exportfs –rv,使得“exports”文件生效。

    4>、检查nfs服务是否开启,默认是关闭的。

    5>、卸载的时候不能在/mnt目录中卸载,必须注销系统后卸载。

原创粉丝点击