From 8a1bc3cba2c837faa694c3a7c32d8ff09d581946 Mon Sep 17 00:00:00 2001 From: oliver Date: Fri, 14 Aug 2026 14:26:42 -0300 Subject: [PATCH] Noice! --- app/sbin/checkFilestore | 27 ++++++++++++++++++++++++--- 1 file changed, 24 insertions(+), 3 deletions(-) diff --git a/app/sbin/checkFilestore b/app/sbin/checkFilestore index 7301056..8f30883 100755 --- a/app/sbin/checkFilestore +++ b/app/sbin/checkFilestore @@ -1,8 +1,8 @@ #!/bin/bash # checkFilestore — compare container filestore vs host disk via md5 -[[ -z "${1-}" ]] && { echo "Usage: $0 "; exit 1; } -UUID="$1" +check_one() { +local UUID="$1" FILESTORE_HOST="/4server/data/$UUID/odoo/odoo-web-data/filestore/$UUID" @@ -34,4 +34,25 @@ MD5_HOST=$(find "$FILESTORE_HOST" -type f | sort | xargs md5sum 2>/dev/null | aw echo "Container : $MD5_CONTAINER" echo "Host : $MD5_HOST" -[[ "$MD5_CONTAINER" == "$MD5_HOST" ]] && echo "OK: filestores match" || { echo "FAIL: mismatch"; exit 3; } +[[ "$MD5_CONTAINER" == "$MD5_HOST" ]] && echo "OK: filestores match" || { echo "FAIL: mismatch"; return 3; } +} + +if [[ -n "${1-}" ]]; then + check_one "$1" +else + for dir in /4server/data/00*/; do + UUID=$(basename "$dir") + result=$(check_one "$UUID" 2>&1) + if echo "$result" | grep -q "OK: filestores match"; then + echo "$UUID OK" + elif echo "$result" | grep -q "not running"; then + echo "$UUID NOT RUNNING" + elif echo "$result" | grep -q "host filestore not found"; then + echo "$UUID NO FILESTORE" + elif echo "$result" | grep -q "cannot query DB"; then + echo "$UUID DB ERROR" + else + echo "$UUID MISMATCH" + fi + done +fi