SOURCES: nfsfs.init - fix unmount: - don't force and all - skip ...
baggins
baggins at pld-linux.org
Tue Sep 25 17:58:04 CEST 2007
Author: baggins Date: Tue Sep 25 15:58:04 2007 GMT
Module: SOURCES Tag: HEAD
---- Log message:
- fix unmount:
- don't force and all
- skip / and /usr (rc.shutdown will do it for us)
---- Files affected:
SOURCES:
nfsfs.init (1.38 -> 1.39)
---- Diffs:
================================================================
Index: SOURCES/nfsfs.init
diff -u SOURCES/nfsfs.init:1.38 SOURCES/nfsfs.init:1.39
--- SOURCES/nfsfs.init:1.38 Fri Apr 27 00:19:06 2007
+++ SOURCES/nfsfs.init Tue Sep 25 17:57:59 2007
@@ -72,13 +72,20 @@
show "Unmounting NFS filesystems"
busy
retry=3
- remaining=$(awk '$3 ~ /^nfs(4$|$)/ {print $2}' $fsfile)
+ remaining=$(awk '$3 ~ /^nfs(4$|$)/ && $2 !~ /^\/(usr$|$)/ {print $2}' $fsfile)
while [ -n "$remaining" -a $retry -gt 0 ]; do
- fuser -msk -TERM `awk '$3 ~ /^nfs(4$|$)/ {print $2}' < $fsfile`
+ fuser -msk -TERM `awk '$3 ~ /^nfs(4$|$)/ && $2 !~ /^\/(usr$|$)/ {print $2}' < $fsfile`
sleep 2
- fuser -msk -KILL `awk '$3 ~ /^nfs(4$|$)/ {print $2}' < $fsfile`
- umount -a -f -t nfs,nfs4
- remaining=$(awk '$3 ~ /^nfs(4$|$)/ {print $2}' $fsfile)
+ fuser -msk -KILL `awk '$3 ~ /^nfs(4$|$)/ && $2 !~ /^\/(usr$|$)/ {print $2}' < $fsfile`
+ # Sort filesystems to unmount in reverse order
+ rem=""
+ for r in $(awk '$3 ~ /^nfs(4$|$)/ && $2 !~ /^\/(usr$|$)/ {print $2}' $fsfile) ; do
+ rem="$r $rem"
+ done
+ for fs in $rem ; do
+ umount $fs
+ done
+ remaining=$(awk '$3 ~ /^nfs(4$|$)/ && $2 !~ /^\/(usr$|$)/ {print $2}' $fsfile)
retry=$(($retry-1))
done
ok
================================================================
---- CVS-web:
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/SOURCES/nfsfs.init?r1=1.38&r2=1.39&f=u
More information about the pld-cvs-commit
mailing list