# Mark Huang <mlhuang@cs.princeton.edu>
# Copyright (C) 2005 The Trustees of Princeton University
#
-# $Id: pl_mop.sh,v 1.1 2005/10/11 17:34:57 mlhuang Exp $
+# $Id: pl_mop.sh,v 1.5 2006/03/06 20:40:33 mlhuang Exp $
#
PATH=/sbin:/usr/sbin:$PATH
# keep essential services running
restart_services() {
- for service in autofs sshd pl_sshd pl_mom pl_nm proper ; do
+ for service in sshd pl_sshd swapmon pl_nm proper ; do
echo "* Checking $service"
status=$(service $service status)
if [ $? -ne 0 ] || echo $status 2>&1 | grep -q stopped ; then
vserver pl_conf exec /sbin/service pl_conf status >/dev/null 2>&1
if [ $? -ne 0 ] ; then
echo "* Restarting pl_conf"
- vserver pl_conf restart
+ vserver pl_conf stop
+ vserver pl_conf start
fi
}
# kill all processes running in slice contexts
vkillall
- # stop the key automounter
- service autofs stop
-
# stop vcached
pidfile=/var/run/vcached.pid
if [ -r "$pidfile" ] ; then
# blow away the vserver cache
rm -rf /vservers/.vcache/*
- # re-mount /vservers
- mount /vservers
+ # XXX re-mount /vservers
+ # mount /vservers
+
+ # shutdown instead to avoid clearing disk quotas
+ shutdown -r now "/vservers filesystem repaired, rebooting"
else
echo "Unable to unmount /vservers!" >&2
fi
# allow vcached to run again
rm -f $pidfile
-
- # restart the key automounter
- service autofs start
}
kill_duplicate_ssh() {