diff --git a/RebuildBdd/Checkup/check-target-readiness.sh b/RebuildBdd/Checkup/check-target-readiness.sh index 3e9ebc6..e44b378 100755 --- a/RebuildBdd/Checkup/check-target-readiness.sh +++ b/RebuildBdd/Checkup/check-target-readiness.sh @@ -260,10 +260,27 @@ EOF } check_sudo_non_interactive() { - sudo true >/dev/null 2>&1 || \ - fail "sudo indisponible pour ${USER}" + sudo /usr/bin/systemctl --version >/dev/null 2>&1 || \ + fail "sudo indisponible pour systemctl" - log "sudo validé." + log "sudo pour systemctl validé." + + if command -v apt >/dev/null 2>&1; then + sudo /usr/bin/apt --version >/dev/null 2>&1 || \ + fail "sudo indisponible pour apt" + log "sudo pour apt validé." + elif command -v apt-get >/dev/null 2>&1; then + sudo /usr/bin/apt-get --version >/dev/null 2>&1 || \ + fail "sudo indisponible pour apt-get" + log "sudo pour apt-get validé." + else + fail "ni apt ni apt-get disponibles sur la cible" + fi + + sudo -u postgres /usr/bin/psql -d postgres -c "SELECT 1;" >/dev/null 2>&1 || \ + fail "sudo -u postgres indisponible pour psql" + + log "sudo -u postgres pour psql validé." } run_postgresql_check() { @@ -278,7 +295,8 @@ run_postgresql_check() { --non-interactive \ >>"$LOG_FILE" 2>&1 || fail "échec de préparation PostgreSQL" - sudo -u postgres true >/dev/null 2>&1 || fail "sudo -u postgres indisponible après préparation PostgreSQL" + sudo -u postgres /usr/bin/psql -d postgres -c "SELECT 1;" >/dev/null 2>&1 || \ + fail "sudo -u postgres indisponible après préparation PostgreSQL" log "Préparation PostgreSQL validée." }