今天学习了NFS环境搭建,

NFS需要的软件包

1、nfs-utils

2、portmap

3、rpcbind

准备环境,虚拟机2台。分别将hostname改成 

NFS_server ip:192.168.100.51 

NFS_client   ip:192.168.100.52

 

第一步:

在两台机器上查看以下内容

[root@NFS_server ~]# cat /etc/redhat-release

CentOS release 6.5 (Final)

[root@NFS_server ~]# uname -r

2.6.32-431.el6.x86_64

[root@NFS_server ~]# uname -m

x86_64


第二步:

在两台机器上查看软件包:

[root@NFS_client ~]# rpm -aq nfs-utils portmap rpcbind

两台机器上安装软件包:

法一:yum install nfs-utils portmap rpcbind

法二:yum groupinstall "NFS file server"

再查看两台机器的软件包:

[root@NFS_server data]# rpm -aq nfs-utils portmap rpcbind

rpcbind-0.2.0-13.el6_9.1.x86_64

nfs-utils-1.2.3-75.el6.x86_64


第三步:

1、配置server服务器

将nfs rpcbind 两个服务启动,并设置开机自启动

[root@NFS_server data]# /etc/init.d/nfs start

Starting NFS services:                                     [  OK  ]

Starting NFS quotas:                                       [  OK  ]

Starting NFS mountd:                                       [  OK  ]

Starting NFS daemon:                                       [  OK  ]

Starting RPC idmapd:                                       [  OK  ]

[root@NFS_server data]# /etc/init.d/rpcbind start

Starting rpcbind:                                          [  OK  ]

[root@NFS_server data]# chkconfig nfs on

[root@NFS_server data]# chkconfig rpcbind on

2、配置client服务器

将rpcbind 服务启动,并设置开机自启动

[root@NFS_client data]# /etc/init.d/rpcbind start

Starting rpcbind:                                          [  OK  ]

[root@NFS_client data]# chkconfig rpcbind on


第四步:

配置server服务器nfs配置

[root@NFS_server data]# cat /etc/exports 

####shared /data for bbs heavenfish at 20170818###

/data 192.168.100.0/24(rw,sync) ##将/data共享到192.168.100.0网段 有读写权限,sync写入硬盘权限

将以上内容写入exports文件,重启/etc/init.d/nfs 服务

[root@NFS_server data]# /etc/init.d/nfs reload

检查是否配置成功

[root@NFS_server data]#showmount -e localhost      

Export list for localhost:

/data 192.168.100.0/24


在client挂载:

先检查是否能看到服务器端的NFS

[root@NFS_client mnt]# showmount -e 192.168.100.51

Export list for 192.168.100.51:

/data 192.168.100.0/24

执行挂载:

[root@NFS_client /]# mount -t nfs 192.168.100.51:/data /mnt

[root@NFS_client /]# df -h

Filesystem            Size  Used Avail Use% Mounted on

/dev/sda3              17G  2.0G   14G  13% /

tmpfs                 491M     0  491M   0% /dev/shm

/dev/sda1             194M   29M  155M  16% /boot

192.168.100.51:/data   17G  2.0G   14G  13% /mnt


第五步:

更改server服务器data文件夹的权限:

[root@NFS_server data]# chown -R nfsnobody:nfsnobody /data

将属主和属组都改成nfsnobody


第六步:

法一:(亲测,6.5 可以开机挂载)

更改client服务器挂载文件/etc/fstab

tmpfs                               /dev/shm                tmpfs      defaults                   0 0

devpts                             /dev/pts                  devpts    gid=5,mode=620  0 0

sysfs                                /sys                         sysfs      defaults                   0 0

proc                                 /proc                       proc       defaults                   0 0

192.168.100.51:/data   /mnt                         nfs          defaults                   0 0

以上,在最后一行,添加该挂载,保证重启后挂载仍然生效。

法二:

更改/etc/rc.local

[root@NFS_client mnt]# vi /etc/rc.local    


#!/bin/sh

#

# This script will be executed *after* all the other init scripts.

# You can put your own initialization stuff in here if you don't

# want to do the full Sys V style init stuff.


touch /var/lock/subsys/local

/bin/mount -t nfs 192.168.100.51:/data /mnt



小贴士:

曾经遇到这样的问题

做nfs实验的时候,从客户端访问服务器报错,提示:clnt_create: RPC: Program not registered

解决办法:


在服务器上先停止rpcbind,

/etc/init.d/rpcbind stop

然后在停止nfs

/etc/init.d/nfs stop

最后在重启rpcbind和nfs,一定要按顺序启动和停止

/etc/init.d/rpcbind start

/etc/init.d/nfs start

做完这个动作之后,访问成功