CentOS配置NFS服务器的方法

1,NFS服务器的安装

在CentOS系统中,默认情况下已经安装了NFS文件系统,如果没有安装就需要手工安装了

#rpm –q nfs-utils portmap

2, 查看NFS是否启动

#service nfs starus
#service portmap status

3,启动NFS

#service nfs start
#service portmap status

4,修改NFS系统配置文件

#vim /etc/exports

/home/yaronli/nfs_space *(sync,rw)

解释说明:

/home/yaronli/nfs_space:共享目录名
*:表示所有主机都可以连接改NFS
(sync,rw):设置选项

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

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

    192.168.152.13 指定IP地址的主机
    nfsclient.test.com 指定域名的主机
    192.168.1.0/24 指定网段中的所有主机
   *.test.com 指定域下的所有主机
    * 所有主机

5,生效配置文件
命令#exportfs –rv 可以让新设置的exports文件内容生效
以上是Server端的配置步骤

Client端的配置步骤如下:
1,直接mount到nfs server即可

# mount -t nfs 10.60.1.91:/home/yangguang/nfs_space  /mnt/
说明:
10.60.1.91:是nfs server的ip地址
/home/yangguang/nfs_space: 是nfs server中的共享目录
/mnt:为本地的目录

执行成功后,即可在/mnt目录中看到nfs server 挂载的内容
2,卸载已经挂载的nfs共享目录

#umount /mnt/


常见问题:
>: mount -o nolock 10.78.28.103:/usr/n300 /mnt
mount: RPC: Unable to receive; errno = No route to host
mount: nfsmount failed: Bad file descriptor
mount: Mounting 10.78.28.103:/usr/n300 on /mnt failed: Bad file descriptor

如果有上面类似错误,有可能是如下原因
a:先ping客户端能否连通服务器ip

      RPC: Unable to receive; errno = No route to host 的原因
b:nfs服务器是否有防火墙屏蔽了对应端口
c:/etc/hosts.deny /etc/hosts.allow 是否屏蔽了客户端ip

Bad file descriptor的原因
d:/etc/exports配置有问题,确保文件中的"()"是英文的,如果你从其他地方copy有可能 出现如上问题

解决办法:
[root@localhost n300]# service iptables stop
Flushing firewall rules:                                   [ OK ]
Setting chains to policy ACCEPT: filter                    [ OK ]
Unloading iptables modules:                                [ OK ]
[root@localhost n300]# service iptables status
Firewall is stopped.
[root@localhost n300]# cat /etc/hosts
hosts        hosts.allow hosts.deny
[root@localhost n300]# cat /etc/hosts.deny
#
# hosts.deny    This file describes the names of the hosts which are
#               *not* allowed to use the local INET services, as decided
#               by the '/usr/sbin/tcpd' server.
#
# The portmap line is redundant, but it is left to remind you that
# the new secure portmap uses hosts.deny and hosts.allow. In particular
# you should know that NFS uses portmap!

[root@localhost n300]# cat /etc/hosts.allow
#
# hosts.allow   This file describes the names of the hosts which are
#               allowed to use the local INET services, as decided
#               by the '/usr/sbin/tcpd' server.
#
[root@localhost n300]#


5: 解决上面问题后应该可以正确的mount了
>: mount -o nolock 10.78.28.103:/usr /mnt
mount: 10.78.28.103:/usr failed, reason given by server: Permission denied #还是有错,iptable在作怪
mount: nfsmount failed: Bad file descriptor
mount: Mounting 10.78.28.103:/usr on /mnt failed: Bad file descriptor
>:
>:
>:####自给解决上面的错误
>:
>: mount -o nolock 10.78.28.103:/usr/n300 /mnt   ##正确了
>:
>:
>: df
Filesystem                Size      Used Available Use% Mounted on
/dev/root                 6.6M      6.6M         0 100% /
/dev/mtdblock/5           1.0M     68.0k    956.0k   7% /info
/dev/mtdblock/6          42.0M      3.3M     38.7M   8% /apps
/dev/mtdblock/7           5.0M    196.0k      4.8M   4% /logs
10.78.28.218:/home/webserver      8.4G      7.2G    780.8M 90% /tmp/mnt
10.78.28.103:/usr/n300      9.6G      6.7G      2.4G 73% /mnt

 

常用命令:

显示当前主机中NFS服务器的输出列表
# showmount -e
显示当前主机NFS服务器中已经被NFS客户机挂载使用的共享目录
# showmount -d
显示NFS服务器的输出
# showmount -e 10.60.1.91

你可能感兴趣的:(CentOS配置NFS服务器的方法)