NFS umount shows the "Device busy (Error 16)"

Hi there
After making a backup copy of it sometimes happens that when I want to unmount an NFS indicates the error:

umount: /path_mount  busy: Device busy (Error 16)

if I run lsoff, I can not find the process that is blocking the application.

I'm using OpenServer 5.0.2c as one NFS server
SUSE SLED10SP2 (also happens in SUSE SLES11SP3 ), with settings:

/pathNFS  x0.x0.xx.xxx  (rw, async, root_squash)

Not if it is an issue of incompatibility Linux/OS5.0.2, or something I'm doing wrong.

As I can discover that is failing?
Thanks for reading this far.

Is the NFS server still running?

This is showing that there is something using the NFS mounted filesystem. This could be a user or scheduled process using this for input or output files or the current working directory. Another alternative would be that there is a sub-mounted filesystem.

Commands such as df | grep patch_mount & fuser -c /path_mount might give you more information about what is in use.

Be aware that deleted files that are still open will still hold the filesystem in-use until their processes end.

I hope that this helps,
Robin

achenle: if the nfs server is still functioning properly.

rbatte1: outputs:

# df | grep cediback2
/cediback2 (pc10:/backup/cediback2 ): 337148144 blocks        0 i-nodes

fuser, the option -c is not recognized, but shows fuser pc10:/backup/cediback2 processes that are not related (I think) ..
the resource /cediback2 only used for the backup script, other users do not accessed.
The detail of each pid is:

72
    root    72     1  0   Aug-08       ?    00:00:00 strerr
6995
  caja05  6995  6878  0 07:48:37   ttyp7    00:00:01 /backup/fiscal/unxfis -k -cxx.xx.22.11 -i/dev/p_wcajero05 -o/dev/p_rcajero05
6024
    root  6024  6020  0 07:48:27   ttyp7    00:00:00 login -r xx.xx.22.11 root root -c ansi
6020
    root  6020   347  0 07:48:27       ?    00:00:00 rlogind
532
    root   532     1  0   Aug-08       ?    00:00:04 ./pciconsvr.ip -D0 -L0
531
    root   531     1  0   Aug-08       ?    00:00:00 ./pcimapsvr.ip -D0
53
    root    53    46  0   Aug-08       ?    00:00:03 /etc/ifor_sld
5101
  caja03  5101  5054  0 07:48:18   ttyp2    00:00:01 /backup/fiscal/unxfis -k -cxx.xx.22.12 -i/dev/p_wcajero03 -o/dev/p_rcajero03
51
    root    51    46  0   Aug-08       ?    00:00:00 /etc/sco_cpd
496
    root   496     1  0   Aug-08       ?    00:00:00 /var/scohttp/scohttpd -d /var/scohttp
461
    root   461   459  0   Aug-08       ?    00:00:00 lockd
46
    root    46    45  0   Aug-08       ?    00:00:03 /etc/ifor_pmd
459
    root   459   452  0   Aug-08       ?    00:00:00 lockd
452
    root   452     1  0   Aug-08       ?    00:00:00 lockd
450
    root   450     1  0   Aug-08       ?    00:00:00 statd
45
    root    45     1  0   Aug-08       ?    00:00:00 /etc/ifor_pmd
4491
    root  4491  4480  0 07:48:12   ttyp2    00:00:00 login -c
4480
    root  4480   347  0 07:48:11       ?    00:00:00 telnetd
427
    root   427     1  0   Aug-08       ?    00:00:00 /etc/lmcfsd
411
    root   411     1  0   Aug-08       ?    00:00:00 /usr/bin/X11/scologin
41
    root    41     1  0   Aug-08       ?    00:00:03 /etc/syslogd
385
    root   385     1  0   Aug-08       ?    00:00:00 /etc/nbd
367
    root   367     1  0   Aug-08       ?    00:00:00 /etc/snmpd
356
    root   356     1  0   Aug-08       ?    00:00:00 /usr/lib/lpd
351
    root   351     1  0   Aug-08       ?    00:00:04 routed
347
    root   347     1  0   Aug-08       ?    00:00:00 /etc/inetd
330
    root   330     1  0   Aug-08       ?    00:00:00 rusersd
329
    root   329     1  0   Aug-08       ?    00:00:00 rwalld
320
    root   320     1  0   Aug-08       ?    00:00:00 portmap
279
    root   279     1  0   Aug-08       ?    00:00:00 /opt/K/SCO/lli/5.0.2k/bin/dlpid /var/opt/K/SCO/lli/5.0.2k/dlpidPIPE
272
    root   272   268  0   Aug-08       ?    00:00:00 /etc/pwr/lib/listen system/start-2 pwrd/startup /dev/fd/4
268
    root   268     1  0   Aug-08       ?    00:00:00 /etc/pwr/bin/pwrd
2589
    root  2589     1  0 19:36:05   tty01    00:00:00 /bin/login pc10
22263
    root 22263 22242  0 07:11:23   ttyp5    00:00:00 login -c
22242
    root 22242   347  0 07:11:23       ?    00:00:00 telnetd
19898
19897
19131
  caja02 19131 19076  0 07:10:52   ttyp3    00:00:00 /backup/fiscal/unxfis -k -cxx.xx.22.13 -i/dev/p_wcajero02 -o/dev/p_rcajero02
1661
  caja16  1661  1611  0 07:17:54   ttyp5    00:00:00 /backup/fiscal/unxfis -k -cxx.xx.22.14 -i/dev/p_wcajero16 -o/dev/p_rcajero16
12197
    root 12197 12184  0 07:59:31   ttyp8    00:00:00 login -c
12184
    root 12184   347  0 07:59:31       ?    00:00:00 telnetd
11919
    root 11919 11350 82 10:53:45   ttyp6    00:00:00 -sh
11381
    root 11381 11364  0 07:09:35   ttyp3    00:00:00 login -c
11364
    root 11364   347  0 07:09:35       ?    00:00:00 telnetd
11350
    root 11350 11338  0 10:53:39   ttyp6    00:00:00 login -c
11338
    root 11338   347  0 10:53:39       ?    00:00:00 telnetd
10939
    root 10939   347  0 10:48:33       ?    00:00:00 telnetd

And what does

fuser -u /cediback2

give ?

It could also be shared back out.

The most likely mistake is that YOU are in a directory on the filesystem when you try to umount. In that situation you cannot umount even if you are root (unless you use the -f (force) switch which is not recommended).

vbe: No returns nothing
# fuser -u /cediback2
/cediback2:

from what I understand the man in nfs specify them as "host: filesystem."
also probe fuser 'fuser /tmp/fileEdited', but does not show me the pid of the process corresponding vi (I must have a conceptual error)

rbatte1: English is not my native language, I can not understand the semantics of "Another alternative would be That there is a sub-mounted filesystem," can you explain me what would be the case?

achenle: the same, "It could be shared Also back out" read the words but can not understand ..

hicksd8: yes, I would think the same .. but I'm not at the time of removal. Also he did not find the process that has "taken" the /cediback2.
SCO In the version I'm using no force umount option (or just do not see it)

I show the steps:

#  > pwd
/
#  > mount
/ on /dev/root read/write on Fri Aug 08 20:16:30 2014
/stand on /dev/boot read only on Fri Aug 08 20:16:30 2014
/cediback2 on pc10:/backup/cediback2 read/write on Sat Aug 09 07:23:10 2014
# > umount /cediback2
umount: /cediback2 busy: Device busy (error 16)

The directory is only backup, the execution would be as:
umount /cediback2 [sometimes works, sometimes not]
mount /cediback2
backup.sh
umount / cediback2 [sometimes works, sometimes not]

Being rather old-fashioned for a minute, I wonder if you need to:

 
 # sync
 # umount /cediback2
 

sync has been made largely obsolete but I wonder whether the O/S knows that it still has data to write and so won't let the filesystem go.
Just something I would try.

That might explain why sometimes it works and sometimes it doesn't.

sync; umount / cediback2
No improvement .. but gave me the idea of running
'time find / cediback2 type f | xargs sync' (I'll try out production time)

I want to kill all processes in the nfs client .. (I have to see what they are and if I leave a copy inconsistent)

Is it a client, or a driver?

So you can also try a last

 fuser -k /cediback2 

and see if it will umount next...
Do you have multi lan connection? like 2 network cards on your SCO box?

One node is SCO, what is the other? O/S? Are the two NFS version the same? Version 2,3 or 4? Perhaps the mount needs to be done with the version switch on the command line.

Also, have you considered that this could be a bug? (possibly with a patch issued to fix.)

Flako, you should upgrade to at least 5.0.6 with RS506a. It will install with your current license, as long as you do not have a Compaq branded license.
5.0.2 is as old as Windows 95, and was obsoleted by SCO in 1999.

vbe:
right now I can not try 'fuser -k' because a 'fuser' show me pid of user processes, but if the solution is to get started to kill processes ...
The computer has only one lan connection.

Corona688:
I think the solution is to get started to kill all processes indicating fuser (complicated I find a schedule that is not with users)

hicksd8
I think it's a bug, I wrote the post if there is anything I see or am doing wrong .. (I need a different view to mine)
The SLED10 supports v2 and v3, and v2 SCO

jgt:
If it is true that the sco is old, but migrating is not so easy ... (we are about to migrate to 5.0.7 with VirtialBox)

When you find the time to kill the process, I comment.
Thanks for writing and for what will come :slight_smile: