diagnose_share_key.sh: some changes on script output.

This commit is contained in:
2026-09-15 01:17:59 +02:00
parent b1e02b737c
commit 44f143fbe8
+24 -8
View File
@@ -48,17 +48,30 @@ usage() {
fix - these are NOT signature problems, they are Server-Side
Encryption KEY-MATERIAL problems (a per-user 'share key' for a file
is either missing on disk or fails to decrypt with that user's
private key). This script accepts either a recovery_*.tsv or a
restore_*.tsv report as input.
private key).
\033[1mThis script accepts either of two report types as input, and\033[m
\033[1mevaluates a different row/status from each:\033[m
\033[1mrecovery_*.tsv\033[m report (from recover_bad_signature.sh)
-> evaluates every row whose validation is \033[1mREAD_ERROR\033[m
\033[1mrestore_*.tsv\033[m report (from restore_bad_signature.sh)
-> evaluates every row whose status is \033[1mWRITE_ERROR\033[m
This script changes NOTHING. It never decrypts a file, never
touches 'encryption_skip_signature_check', and never writes
anywhere except its own report file. It only:
1. Reads a chosen recovery_*.tsv report (produced by
recover_bad_signature.sh) and picks out every row whose
validation is READ_ERROR and whose detail text matches one of
the two known key-material error signatures above.
1. Reads the chosen report and picks out the matching rows:
- from a \033[1mrecovery_*.tsv\033[m report: every row whose
validation is \033[1mREAD_ERROR\033[m
- from a \033[1mrestore_*.tsv\033[m report: every row whose
status is \033[1mWRITE_ERROR\033[m
...and, in both cases, whose detail text matches one of the
two known key-material error signatures above.
2. For each such file, resolves - via Nextcloud's normal,
read-only Files API (\$node->getOwner(), \$folder->getById())
- who currently owns the file, i.e. whether the affected
@@ -405,8 +418,11 @@ if $terminal ; then
Nextcloud storage and never touches 'encryption_skip_signature_check'.
It only inspects, on disk and via the normal Files API, whether the
expected encryption key files are present for accounts/files that
recover_bad_signature.sh could not read (READ_ERROR, not 'Bad
Signature').\033[m"
recover_bad_signature.sh or restore_bad_signature.sh could not
process (not 'Bad Signature').\033[m"
echo ""
echo -e " \033[1mrecovery_*.tsv\033[m report -> evaluates \033[1mREAD_ERROR\033[m rows"
echo -e " \033[1mrestore_*.tsv\033[m report -> evaluates \033[1mWRITE_ERROR\033[m rows"
echo -e "\033[32m-----\033[m"
fi