#!/bin/bash users="$(systemctl list-units | \ sed -nE 's/.*user@([0-9]+)\.service .*loaded active running.*/\1/p' | \ xargs -n1 id -un)" error=0 for user in $users; do homedir="$(getent passwd "$user"|cut -d: -f6)" for timer in "$homedir"/.config/systemd/user/*.timer; do if ! [ -f "$timer" ]; then continue fi timerunit="$(basename "$timer")" if ! systemctl --user -M"$user@" is-enabled "$timerunit" > /dev/null; then echo "disabled timer $timer" error=1 fi if ! systemctl --user -M"$user@" is-active "$timerunit" > /dev/null; then echo "inactive timer $timer" error=1 fi done if systemctl --user -M "$user@" is-system-running > /dev/null; then continue fi echo -e "# systemctl --user -M "$user@" --failed" systemctl --user -M "$user@" --failed error=1 done exit "$error"