vhost-stack/bin/vhost-user-jails-reset.sh
2022-08-22 13:22:16 -07:00

55 lines
1.1 KiB
Bash
Executable File

#!/bin/bash
#
# vhost-stack
# https://git.stack-source.com/msb/vhost-stack
# Copyright (c) 2022 Matthew Saunders Brown <matthewsaundersbrown@gmail.com>
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
# load include file
source $(dirname $0)/vhost.sh
help()
{
thisfilename=$(basename -- "$0")
echo "Rebuilds all existing jails by running vhost-user-jail-reset.sh for each jailed user."
echo ""
echo "usage: $thisfilename"
echo ""
echo " -h Print this help."
exit
}
if [ -n "$1" ]; then
if [ $1 == "-h" ]; then
help
fi
fi
# make sure jails dir exists
if [[ ! -e /usr/jails/ ]]; then
echo "/usr/jails does not exist"
exit 1
fi
# check if any jails exist
if [ ! "$(ls -A /usr/jails/)" ]; then
echo "no jails exist"
exit 1
fi
# check for /usr/sbin/jk_update
if [[ ! -x "/usr/sbin/jk_update" ]]; then
echo "/usr/sbin/jk_update does not exist or is not executable"
exit 1
fi
# get list of jails
cd /usr/jails/
jails=(*)
for jail in "${!jails[@]}"
do
jail=${jails[$jail]}
echo /usr/local/bin/vhost-user-jail-reset.sh -u $jail
done