df执行hang住

一、现象

在linux操作系统中,执行df -h命令,后hang住

二、思路

排查是否存在Nfs问题,无法正常挂载nfs路径导致的问题。

三、解决过程

3.1 cat /etc/rc.local

#mount 10.8.4.11:/dbbak/yt3wdb /oracle/dbbak2
mount -t nfs -o rw,bg,hard,rsize=32768,wsize=32768,vers=3,nointr,timeo=600,tcp 10.8.5.188:/backup/oracle/10.8.2.40_yt3wdb /oracle/
dbbak

如上,可以发现,存在两个nfs记录信息,一个正在使用,另一个已被注释

3.2 查询

根据上述信息,cd观察两个路径是否有效
[root@yt3wdb dbbak2]# cd /oracle/dbbak [root@yt3wdb dbbak]# ls archivelog_copy backup rman

#cd /oracle/dbbak2 路径,会话hang住,问题找到了,问题原因是
10.8.4.11作为nfs service端,共享的路径,在本地无法正常读

3.3 问题处理

#cat /proc/mounts
10.8
.5.188:/backup/oracle/10.8.2.40_yt3wdb /oracle/dbbak nfs rw,vers=3,rsize=32768,wsize=32768,hard,proto=tcp,timeo=600,retrans=2, sec=sys,addr=10.8.5.188 0 0
10.8.4.11 /oracle/dbbak2······

根据上述信息,可以发现,本地已经挂载了/oracle/dbbak2路径

可以发现nfs远程 服务未启用

[root@yt3wdb dbbak2]# showmount -e 10.8.4.11

mount clntudp_create: RPC: Port mapper failure - RPC: Unable to receive


[root@yt3wdb dbbak2]# ping 10.8.4.11
PING 10.8.4.11 (10.8.4.11) 56(84) bytes of data.
From 10.8.2.40 icmp_seq=2 Destination Host Unreachable

server端无法ping通,结合/etc/rc.local路径,可以发现之前历史的nfs已被废弃,因此,本次解决方案直接删除相关记录即可

[root@yt3wdb ~]#  umount -lf /oracle/dbbak2 

3.4 问题总结

本次是由于历史nfs正常挂载后,service端被废弃,但是提供给nfs客户端未umount卸载,导致本地df 命令时,hang住

本次是nfs被废弃,还有另一种需要修复的环境,按照nfs安装流程进行,观察本地远程nfs进程及相关配置,重新配置即可。

原文地址:https://www.cnblogs.com/lvcha001/p/11751103.html