#!/bin/bash # USAGE: # check_systemd [UNIT ...] FAILED=() for unit in "$@"; do if ! systemctl is-active "$unit" > /dev/null; then FAILED+=("$unit") fi done if [ ${#FAILED[@]} -gt 0 ]; then echo "systemd CRITICAL: failed units: ${FAILED[@]}" exit 2 fi #if ! systemctl is-system-running > /dev/null; then # echo systemd WARNING: System state degraded. # exit 1 #fi echo "systemd OK: $# units checked" exit 0