#!/bin/bash # # ups-shutdown-test.sh — rulează procedura reală de shutdown UPS în gol. # # Nu duplică logica: invocă exact scriptul care rulează la o pană de curent, # cu --dry-run. Asta e tot rostul lui — dacă testul ar avea cod propriu, ar # testa altceva decât ce se execută în realitate. # # Utilizare: # ups-shutdown-test.sh # ca root # sudo -u nut sudo /usr/local/bin/ups-shutdown-test.sh # verifică și lanțul de permisiuni # set -uo pipefail SCRIPT=/usr/local/bin/ups-shutdown-cluster.sh if [[ ! -x "$SCRIPT" ]]; then echo "EROARE: $SCRIPT lipsește sau nu e executabil." >&2 exit 1 fi if [[ "$(id -u)" != "0" ]]; then echo "EROARE: rulează ca $(id -un), nu ca root." >&2 echo " La o pană reală, upssched rulează ca 'nut' și invocă scriptul prin sudo." >&2 echo " Testează lanțul complet cu: sudo -u nut sudo $SCRIPT --dry-run --force" >&2 exit 1 fi echo "=== Test în gol al procedurii de shutdown UPS ===" echo "Nu se oprește nimic. --force ocolește verificarea că UPS-ul e pe baterie." echo exec "$SCRIPT" --dry-run --force "$@"