Solved: Identify which filesystem causing df command to hang on linux ?

Today we will look how to troubleshoot a hanging df command.

And how to identify which filesystem makes it hang.

1. Check which filesystem gets hanged.

[root@ngelinux001 ~]# df -h
^C
[root@ngelinux001 ~]# ^C


[root@ngelinux001 ~]# strace df -h
execve("/bin/df", ["df", "-h"], [/* 43 vars */]) = 0
brk(0)                                  = 0x1812000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fc                                                         35db75000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
open("/products/oracle/11.2.0.3_Client/lib/tls/x86_64/libc.so.6", O_RDONLY) = -1                                                          ENOENT (No such file or directory)
stat("/products/oracle/11.2.0.3_Client/lib/tls/x86_64", 0x7ffcf5d1abb0) = -1 ENO                                                         ENT (No such file or directory)
open("/products/oracle/11.2.0.3_Client/lib/tls/libc.so.6", O_RDONLY) = -1 ENOENT                                                          (No such file or directory)
stat("/products/oracle/11.2.0.3_Client/lib/tls", 0x7ffcf5d1abb0) = -1 ENOENT (No                                                          such file or directory)
open("/products/oracle/11.2.0.3_Client/lib/x86_64/libc.so.6", O_RDONLY) = -1 ENO                                                         ENT (No such file or directory)
stat("/products/oracle/11.2.0.3_Client/lib/x86_64", 0x7ffcf5d1abb0) = -1 ENOENT                                                          (No such file or directory)
open("/products/oracle/11.2.0.3_Client/lib/libc.so.6", O_RDONLY) = -1 ENOENT (No                                                          such file or directory)
stat("/products/oracle/11.2.0.3_Client/lib", 0x7ffcf5d1abb0) = -1 ENOENT (No suc                                                         h file or directory)
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=50140, ...}) = 0
mmap(NULL, 50140, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7fc35db68000
close(3)                                = 0
open("/lib64/libc.so.6", O_RDONLY)      = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0000\356\1@=\0\0\0"..., 83                                                         2) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=1930416, ...}) = 0
mmap(0x3d40000000, 3750184, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0                                                         ) = 0x3d40000000
mprotect(0x3d4018b000, 2093056, PROT_NONE) = 0
mmap(0x3d4038a000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWR                                                         ITE, 3, 0x18a000) = 0x3d4038a000
mmap(0x3d40390000, 14632, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYM                                                         OUS, -1, 0) = 0x3d40390000
close(3)                                = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fc                                                         35db67000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fc                                                         35db66000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fc                                                         35db65000
arch_prctl(ARCH_SET_FS, 0x7fc35db66700) = 0
mprotect(0x3d4038a000, 16384, PROT_READ) = 0
mprotect(0x3d3fe20000, 4096, PROT_READ) = 0
munmap(0x7fc35db68000, 50140)           = 0
open("/usr/lib/locale/locale-archive", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=99174448, ...}) = 0
mmap(NULL, 99174448, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7fc357cd0000
close(3)                                = 0
brk(0)                                  = 0x1812000
brk(0x1833000)                          = 0x1833000
open("/etc/mtab", O_RDONLY|O_CLOEXEC)   = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=35143, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fc                                                         35db74000
read(3, "/dev/mapper/rootvg-rootlv / ext3"..., 4096) = 4096
read(3, "s rw,nolock,soft,addr=10.56.62.4"..., 4096) = 4096
read(3, "nfs rw,nolock,soft,addr=10.56.50"..., 4096) = 4096
read(3, "9 0 0\nssvud934:/mtpuat1/Fusion /"..., 4096) = 4096
read(3, " /DCCI/DCCEXL2/OUBI nfs rw,noloc"..., 4096) = 4096
read(3, " /workspace/MTPDEV1/MWM nfs ro,b"..., 4096) = 4096
read(3, ".56.8.147 0 0\nngelt411:/sofnft1/"..., 4096) = 4096
read(3, "fs rw,nolock,soft,addr=10.56.11."..., 4096) = 4096
read(3, "6.49.253 0 0\nclsut042-t:/dccexl2"..., 4096) = 2375
read(3, "", 4096)                       = 0
close(3)                                = 0
munmap(0x7fc35db74000, 4096)            = 0
statfs("/", {f_type="EXT2_SUPER_MAGIC", f_bsize=4096, f_blocks=6515275, f_bfree=                                                         5469124, f_bavail=5138242, f_files=1654784, f_ffree=1632653, f_fsid={-811497880,                                                          700899867}, f_namelen=255, f_frsize=4096}) = 0
open("/usr/share/locale/locale.alias", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=2512, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fc                                                         35db74000
read(3, "# Locale name alias data base.\n#"..., 4096) = 2512
read(3, "", 4096)                       = 0
close(3)                                = 0
munmap(0x7fc35db74000, 4096)            = 0
open("/usr/share/locale/en_GB/LC_MESSAGES/coreutils.mo", O_RDONLY) = -1 ENOENT (                                                         No such file or directory)
open("/usr/share/locale/en/LC_MESSAGES/coreutils.mo", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=435, ...}) = 0
mmap(NULL, 435, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7fc35db74000
close(3)                                = 0
statfs("/sys", {f_type="SYSFS_MAGIC", f_bsize=4096, f_blocks=0, f_bfree=0, f_bav                                                         ail=0, f_files=0, f_ffree=0, f_fsid={0, 0}, f_namelen=255, f_frsize=4096}) = 0
statfs("/dev/pts", {f_type="DEVPTS_SUPER_MAGIC", f_bsize=4096, f_blocks=0, f_bfr                                                         ee=0, f_bavail=0, f_files=0, f_ffree=0, f_fsid={0, 0}, f_namelen=255, f_frsize=4                                                         096}) = 0
statfs("/dev/shm", {f_type=0x1021994, f_bsize=4096, f_blocks=1007643, f_bfree=10                                                         07643, f_bavail=1007643, f_files=1007643, f_ffree=1007642, f_fsid={0, 0}, f_name                                                         len=255, f_frsize=4096}) = 0
statfs("/boot", {f_type="EXT2_SUPER_MAGIC", f_bsize=1024, f_blocks=99150, f_bfre                                                         e=22683, f_bavail=17563, f_files=25688, f_ffree=25647, f_fsid={-1664345186, 3717                                                         33116}, f_namelen=255, f_frsize=1024}) = 0
statfs("/home", {f_type="EXT2_SUPER_MAGIC", f_bsize=1024, f_blocks=126931, f_bfr                                                         ee=119001, f_bavail=119001, f_files=32768, f_ffree=30971, f_fsid={1806820415, 16                                                         47329693}, f_namelen=255, f_frsize=1024}) = 0
statfs("/home/metron", {f_type="EXT2_SUPER_MAGIC", f_bsize=4096, f_blocks=258022                                                         , f_bfree=249291, f_bavail=249291, f_files=65536, f_ffree=65433, f_fsid={-141191                                                         8556, -1300942330}, f_namelen=255, f_frsize=4096}) = 0

statfs("/NHHDA/samba_FTP", {f_type="NFS_SUPER_MAGIC", f_bsize=1048576, f_blocks=                                                         102400, f_bfree=19050, f_bavail=17904, f_files=4977040, f_ffree=4876561, f_fsid=                                                         {0, 0}, f_namelen=255, f_frsize=1048576}) = 0
statfs("/TWS/DEV/NGELUSR/ngelt132", {f_type="NFS_SUPER_MAGIC", f_bsize=65536, f_b                                                         locks=487424, f_bfree=188033, f_bavail=188033, f_files=3019615, f_ffree=2959450,                                                          f_fsid={0, 0}, f_namelen=255, f_frsize=65536}) = 0
statfs("/NGEL3/PREPROD/FILELOAD", ^C^C^C


^C^C^C


^C


Process 6763 detached
 
[root@ngelinux001 ~]#

The filesystem name in the end where our strace command hanged is the one which is causing issue on the server. So lets umount and mount it to resolve the issue.

2. Now umount the filesystem.

If it is not umounted forcefully, use lazy option to umount its entry from the system mount file.

[root@ngelinux001 ~]# mount | grep -i NGEL3
10.56.34.98:/app/releases/fileload on /NGEL3/PREPROD/FILELOAD type nfs (rw,addr=10.56.34.98)

[root@ngelinux001 ~]# umount /NGEL3/PREPROD/FILELOAD
umount.nfs: /NGEL3/PREPROD/FILELOAD: device is busy
umount.nfs: /NGEL3/PREPROD/FILELOAD: device is busy

t@ngelinux001 ~]# umount -f /NGEL3/PREPROD/FILELOAD
umount2: Device or resource busy
umount.nfs: /NGEL3/PREPROD/FILELOAD: device is busy
umount2: Device or resource busy
umount.nfs: /NGEL3/PREPROD/FILELOAD: device is busy

[root@ngelinux001 ~]# ls -l /NGEL3/PREPROD/FILELOAD
total 0
[root@ngelinux001 ~]# umount -l /NGEL3/PREPROD/FILELOAD
umount: /NGEL3/PREPROD/FILELOAD: not mounted

 

3. Now mount it back.

[root@ngelinux001 ~]# mount /NGEL3/PREPROD/FILELOAD
mount: can't find /NGEL3/PREPROD/FILELOAD in /etc/fstab or /etc/mtab
[root@ngelinux001 ~]#

Leave a Reply

Your email address will not be published.