Print this page
7818 SMF does not always cleanup services that have been removed
Reviewed by: Joshua M. Clulow <josh@sysmgr.org>
*** 18,27 ****
--- 18,28 ----
# information: Portions Copyright [yyyy] [name of copyright owner]
#
# CDDL HEADER END
#
# Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved.
+ # Copyright 2017 RackTop Systems.
#
# 0a Initialization.
[ -f /lib/svc/share/smf_include.sh ] || exit 1
*** 71,91 ****
echo "WARNING: svccfg apply $1 failed" | tee /dev/msglog
fi
}
#
! # If the smf/manifest table has file entries that are missing
# then there is work to be done by the cleanup process.
#
function cleanup_needwork {
! if [ "$early" == true ]; then
! smfmfiles=`/usr/bin/svcprop smf/manifest | \
! awk '(/^lib_/ && /\/manifestfile /) {print $3}'`
! else
! smfmfiles=`/usr/bin/svcprop smf/manifest | \
! awk '/\/manifestfile / {print $3}'`
! fi
nw=`/lib/svc/bin/mfstscan $smfmfiles 2>&1 1>/dev/null`
[ "$nw" ] && return 1
return 0
--- 72,88 ----
echo "WARNING: svccfg apply $1 failed" | tee /dev/msglog
fi
}
#
! # If the smf repository has file entries that are missing
# then there is work to be done by the cleanup process.
#
function cleanup_needwork {
! smfmfiles=`svcprop -p manifestfiles '*' 2>/dev/null |
! nawk -v early="$early" '$2 == "astring" &&
! (early != "true" || $3 ~ "^/lib/") { print $3 }'`
nw=`/lib/svc/bin/mfstscan $smfmfiles 2>&1 1>/dev/null`
[ "$nw" ] && return 1
return 0