java trylock nfs失败_NFS相关问题

环境:CentOS 6.5 64bit

在一台客户端机上执行mount命令挂载nfs,结果报如下错误:

是因为我的客户端机器没有安装nfs-utils,执行如下命令:

之后再挂载,正常。

在客户端和服务端使用命令:showmount -e 10.10.209.148  报错

clnt_create: RPC: Port mapper failure - Unable to receive: errno 113 (No route to host)

解决方法:

被访问的NFS服务器上的防火墙没有添加规则,向iptables里面添加以下查看的所有端口即可(目前解决的方法,当然你也可以关闭防火墙,不过这样是比较不安全的,如果你的nfs作用不大,建议你另选别的应用来替代吧!毕竟开那么多的端口,比较不安全呀!)

#vim /etc/sysconfig/iptables

#service iptables stop  //关闭防火墙

2012111411190844.png

通过#rpcinfo -p 10.10.209.148

[root@rh01 /]# rpcinfo -p 10.10.209.148program vers proto port service100000 4 tcp 111 portmapper100000 3 tcp 111 portmapper100000 2 tcp 111 portmapper100000 4 udp 111 portmapper100000 3 udp 111 portmapper100000 2 udp 111 portmapper100024 1 udp 52943 status100024 1 tcp 37706 status100011 1 udp 875 rquotad100011 2 udp 875 rquotad100011 1 tcp 875 rquotad100011 2 tcp 875 rquotad100003 2 tcp 2049 nfs100003 3 tcp 2049 nfs100003 4 tcp 2049 nfs100227 2 tcp 2049 nfs_acl100227 3 tcp 2049 nfs_acl100003 2 udp 2049 nfs100003 3 udp 2049 nfs100003 4 udp 2049 nfs100227 2 udp 2049 nfs_acl100227 3 udp 2049 nfs_acl100021 1 udp 37438 nlockmgr100021 3 udp 37438 nlockmgr100021 4 udp 37438 nlockmgr100021 1 tcp 46331 nlockmgr100021 3 tcp 46331 nlockmgr100021 4 tcp 46331 nlockmgr100005 1 udp 57177 mountd100005 1 tcp 43147 mountd100005 2 udp 49154 mountd100005 2 tcp 54810 mountd100005 3 udp 55707 mountd100005 3 tcp 58309 mountd

2015-3-12

服务器端安装yum install nfs-utils

修改nfs共享权限:

NFS服务的配置

只需要在NFS的主配置文件/etc/exports中进行设置就行,然后启动NFS服务。

/nfs/public  192.168.14.0/24(rw,async)  *(ro)——*[注意]一个共享文件夹目录

/home/data/ 10.124.177.249(ro,async,no_root_squash)

NFS的设置选项:

访问权限选项说明

ro设置输出共享目录为只读

rw设置输出共享目录为可读写

用户映射选项说明

all_squash将远程访问的所有普通用户及所属用户都映射为匿名用户或用户组(一般均为nfsnobody)

no_all_squash不将远程访问的所有普通用户及所属用户都映射为匿名用户或用户组(默认设置)

root_squash将root用户及所属用户组都映射为匿名用户或用户组(默认设置)

no_root_squash不将root用户及所属用户组都映射为匿名用户或用户组

anonuid=xxx将远程访问的所有用户都映射为匿名用户,并指定该匿名用户账户为本地用户账户(UID=xxx)

anongid=xxx将远程访问的所有用户组都映射为匿名用户组账户,

并指定该匿名用户组账户为本地用户组账户(GID=xxx)

其它选项说明

secure限制客户端只能从小于1024的TCP/IP端口连接NFS服务器(默认设置)

insecure允许客户端从大于1024的TCP/IP端口接连NFS服务器

sync将数据同步写入内存缓冲区与磁盘中,虽然这样做效率较低,但可以保证数据的一致性

async将数据先保存在内存缓冲区,必要时才写入磁盘

wdelay检查是否有相关的写操作,如果有,则将这些写操作一起执行,这样可以提高效率(默认设置)

no_wdelay若有写操作则立即执行,应与sync配合使用

subtree_check若输出共享目录是一个子目录,则NFS服务器将检查其父目录的权限(默认设置)

no_subtree_check即使输出目录是一个子目录,NFS服务器也不检查其父目录的权限,这样做可提高效率

服务启动顺序:

service rpcbind start

service nfslock  start

service nfs  start

服务停止顺序:

service nfslock stop

service nfs stop

service rpcbind stop

2015-12-11

nfs修改共享权限后,使之生效!

service nfs reload

2016-03-02

nfs性能调优

linux中的NFSD的COPY数目是在/etc/rc.d/init.d/nfs这个启动文件中设置的,默认是8个NFSD,对于这个参数的设置一般是要根据可能的CLIENT数目来进行设定的,和WSIZE、RSIZE一样也是要通过测试来找到最近的数值。

2016-03-02

[root@localhost /]# umount /data/

umount.nfs: /data: device is busy

通过这条命令查看:

[root@localhost /]# fuser -m -v

/data/

用户 进程号 权限  命令

/data/:  root 2798   ..c.. bash

root 2996    ..c.. su

如上所示,有两个进程占用了,将其kill掉,再重新取消挂载。

[root@localhost /]# kill -9 2798

[root@localhost /]# kill -9 2996

[root@localhost /]# umount /data/

[root@localhost /]#

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值