#!/bin/bash # # vhost-stack # https://git.stack-source.com/msb/vhost-stack # Copyright (c) 2022 Matthew Saunders Brown # 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