nfs-utils-clients

Elan Ruusamäe glen at delfi.ee
Fri May 19 11:27:41 CEST 2006


nfs-utils-clients %post is quite fatal, because it's killing processes accessing nfs mounts.
rpm %post shouldn't do that. it should just reload so the binaries re-exec themselves.

Executing rpm --upgrade -vh --force --root / --noorder...
Preparing...                ########################################### [100%]
   1:nfs-utils-clients      ########################################### [100%]
  * Unmounting NFS filesystems......................................[ BUSY ]Terminated
 12:21:02 root[pts/2]@hellsgate work/tmp# Killed


  stop)
    if [ -f /proc/mounts ]; then
        fsfile="/proc/mounts"
    else
        fsfile="/etc/mtab"
    fi

    show "Unmounting NFS filesystems"
    busy
    retry=3
    remaining=$(awk '$3 == "nfs" {print $2}' $fsfile)
    while [ -n "$remaining" -a $retry -gt 0 ]; do
        fuser -msk -TERM `awk '$3 == "nfs" {print $2}' < $fsfile`
        sleep 2
        fuser -msk -KILL `awk '$3 == "nfs" {print $2}' < $fsfile`
        umount -a -f -t nfs
        remaining=$(awk '$3 == "nfs" {print $2}' $fsfile)
        retry=$(($retry-1))
    done
    ok
[...]
  restart)
    $0 stop
    $0 start
    ;;

-- 
glen


More information about the pld-devel-en mailing list