monitor: use jexec

This commit is contained in:
tschettervictor
2025-07-22 21:24:05 -06:00
committed by GitHub
parent 995281396c
commit 4c1997620b

View File

@@ -129,11 +129,11 @@ for _jail in ${JAILS}; do
if [ -z "${ACTION}" ] && [ -f "${bastille_jail_monitor}" ]; then
for _service in $(xargs < "${bastille_jail_monitor}"); do
## check service status
if ! bastille service "${_jail}" "${_service}" status >/dev/null 2>/dev/null; then
if ! jexec -l -u root "${_jail}" service "${_service}" status >/dev/null 2>/dev/null; then
echo "$(date '+%Y-%m-%d %H:%M:%S'): ${_service} service not running in ${_jail}. Restarting..." | tee -a "${bastille_monitor_logfile}"
## attempt to restart the service if needed; update logs if unable
if ! bastille service "${_jail}" "${_service}" restart; then
if ! jexec -l -u root "${_jail}" service "${_service}" restart; then
echo "$(date '+%Y-%m-%d %H:%M:%S'): Failed to restart ${_service} service in ${_jail}." | tee -a "${bastille_monitor_logfile}"
SERVICE_FAILED=1
fi
@@ -174,7 +174,7 @@ for _jail in ${JAILS}; do
fi
else
if [ -f "${bastille_jail_monitor}" ]; then
echo -n "${_jail}: "
info "\n[${_jail}]:"
xargs < "${bastille_jail_monitor}"
fi
fi