您的位置:首页 > 运维架构 > Linux

linux配置nfs服务

2014-07-11 11:50 218 查看
简介:

unix/linux系统一种远程文件目录共享的服务,可以把某一个远程的文件目录共享到本地,进而像操作本地文件一样,操作这个远程的目录。

例如:a主机作为服务端,共享出来test1这个目录,b主机作为客户端,b以其test2目录挂载a主机的test1目录,那么这个时候查看b主机的test2中的内容则会与a主机的test1中一样,对b主机test2目录的操作就是在操作a主机的test1目录(增删改查,当然要设置足够的权限)。

注:我配置的时候,因为只有一台linux主机,所以这里服务端和客户端都在一台机器上,读者可不必注意。

【服务端】

---------------------------------------------------

一、NFS服务器的安装

检查linux系统中是否安装了nfs-utils和portmap两个软件包(RHEL4系统默认已经安装了这两个软件包)。

以root方式登入linux系统,执行命令查看是否安装nfs服务的命令

命令:

-----------------------------------------

# rpm -q portmap

# rpm -qa | grep nfs

如果显示安装则会显示版本信息

-----------------------------------------

二、启动服务

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

注意:启动时,portmap一定要先启动,关闭时,portmap一定要后关闭

启动命令:

-----------------------------------------

# service portmap start //restart 重启

# service nfs start

//restart 重启

-----------------------------------------

--如果启动完成会显示ok

三、检查RPC程序是否启动

由于NFS是通过RPC(远程过程调用)协议来使用远程计算机上的文件,因此系统中的RPC服务必须启动。

命令:

-----------------------------------------

# rpcinfo | more

# rpcinfo -p | more

-----------------------------------------

--如果成功可以看到

--proto port

--tcp 111

--udp 111

四、设置要共享的目录

(1),准备好要共享的目录,比如服务端想要共享出文件系统下/java/tomcat1目录。

在文件系统下新建/java/tomcat1目录

命令:

-----------------------------------------

# mkdir /java

# mkdir /java/tomcat1

然后在tomcat1中新建2文件夹,便于等会配置成功后观察效果(也可以直接手动)。

# mkdir /java/tomcat1/t1

# mkdir /java/tomcat1/t2

# mkdir /java/tomcat1/t3

-----------------------------------------

--这样就可以看到在/java/tomcat1目录下有3个文件夹

(2),设置要共享出去的目录

找到文件系统下/etc/exports文件,打开编辑添加如下内容,格式如下:

-----------------------------------------------------------

/java/tomcat1 192.168.56.101(rw,sync,no_root_squash)

-----------------------------------------------------------

--这里代表的含义:192.168.56.101这台主机可以以这样的权限(rw,sync,no_root_squash)来访问我本台机器的/java/tomcat1这个目录

--然后保存退出。

--这里的ip:192.168.56.101是我虚拟机中linux系统的ip,可以在linux命令行通过ifconfig查看此ip

参数配置解释:

/java/tomcat1 --要共享出去的目录名

可访问的主机地址 --192.168.56.101

exports文件中“客户端主机地址”字段可以使用多种形式表示主机地址

192.168.152.13 指定IP地址的主机

nfsclient.test.com 指定域名的主机

192.168.1.0/24 指定网段中的所有主机

*.test.com 指定域下的所有主机

* 所有主机

(rw,sync,no_root_squash) --访问的权限

rw:读/写权限,与ro不能共同使用

ro:只读权限,与rw不能共同使用

sync:数据同步写入内存和硬盘,这样不会轻易丢失数据,建议所有的NFS共享目录都使用该选项 。

也可以使用async,此时数据会先暂存于内存中,而不立即写入硬盘。

no_root_squash:NFS 服务器共享目录用户的属性,如果用户是 root,那么对于这个共享目录来说就具有 root 的权限。

(3)、重新输出共享目录格式

修改了配置文件/etc/exports需要重新输出共享目录格式(或者手动重启服务)

重新输出共享目录格式命令:

--------------------------------

exportfs -rv

--------------------------------

--执行之后可以看到从新输出的信息

(4),显示主机中共享出去的输出目录列表

命令:

--------------------------------

# showmount -e (nfs服务器ip地址)

--------------------------------

--如果不写ip则默认显示当前主机中输出目录列表。

--我这里直接写的我的地址192.168.56.101,也可以不写。

--执行这个命令可以看到输入的目录中有/java/tomcat1,并且有相应的访问权限信息。

【客户端】

---------------------------------------------------

五、挂载nfs

这里也相当于就是把之前设置出来的共享目录,挂载某一台主机上去。

一般来说是在客户端的机器上操作,我这里只有一台linux,所以就直接在这里操作,可以达到同样的目的。

(1),创建挂载点

命令:

---------------------------------

# mkdir /java/tomcat2

---------------------------------

--这个的意思是,要把远程的地址挂载到本地哪一个目录上,我这里直接新建一个目录来作为挂载点。

(2)、执行挂载命令:

--------------------------------------------

# mount 192.168.56.101:/java/tomcat1 /java/tomcat2

--------------------------------------------

--格式:mount nfs服务器地址:/共享目录 /挂载点

--执行成功无显示信息

(3),查看nfs挂载的共享目录

命令:

----------------------------------------

# df -h

----------------------------------------

--通过查看命令可以看到挂载了哪些远程地址的共享目录,分别挂载到了那个挂载点上。

--如果有看到192.168.56.101下面的/java/tomcat1被挂载到本机的/java/tomcat2上证明成功了。

(4)、查看挂载目录下的信息是否与远程目录一致

命令

----------------------------------------

# ls /java/tomcat2

----------------------------------------

--如果显示出目录下有t1,t2,t3三个文件夹则是正确的。注:t1,t2,t3为共享目录/java/tomcat1中的内容,这里显示则证明共享成功了。

--还可以在tomcat1或者tomcat2中删除某个文件夹,看对方文件夹是否有变化,来证明挂载正确。

(5),卸载挂载点

命令:

----------------------------------------

# umount /java/tomcat2

----------------------------------------

--通过这个命令可取消/java/tomcat2这个挂载点,执行命令后从新查看/java/tomcat2中的内容发现,没有了t1,t2,t3等内容了。

--注意,卸载的时候【盘符】一定不能再当前目录进行卸载,也就是说你不能在/java/tomcat2目录中对/java/tomcat2进行卸载,一定要退出去。

六、设置开机自动挂载NFS共享

写入/etc/fstab配置文件

格式:

NFS共享地址:/共享目录 本机挂载点 文件系统 权限 是否检测 检测顺序

示例:

192.168.56.101:/java/tomcat1 /java/tomcat2 nfs rw 0 0

参考资料:http://hi.baidu.com/guoqs/item/8057c927e5800e889c63d1bc
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: