diagnose_share_key.sh: some changes on script output.
This commit is contained in:
+24
-8
@@ -48,17 +48,30 @@ usage() {
|
|||||||
fix - these are NOT signature problems, they are Server-Side
|
fix - these are NOT signature problems, they are Server-Side
|
||||||
Encryption KEY-MATERIAL problems (a per-user 'share key' for a file
|
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
|
is either missing on disk or fails to decrypt with that user's
|
||||||
private key). This script accepts either a recovery_*.tsv or a
|
private key).
|
||||||
restore_*.tsv report as input.
|
|
||||||
|
\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
|
This script changes NOTHING. It never decrypts a file, never
|
||||||
touches 'encryption_skip_signature_check', and never writes
|
touches 'encryption_skip_signature_check', and never writes
|
||||||
anywhere except its own report file. It only:
|
anywhere except its own report file. It only:
|
||||||
|
|
||||||
1. Reads a chosen recovery_*.tsv report (produced by
|
1. Reads the chosen report and picks out the matching rows:
|
||||||
recover_bad_signature.sh) and picks out every row whose
|
|
||||||
validation is READ_ERROR and whose detail text matches one of
|
- from a \033[1mrecovery_*.tsv\033[m report: every row whose
|
||||||
the two known key-material error signatures above.
|
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,
|
2. For each such file, resolves - via Nextcloud's normal,
|
||||||
read-only Files API (\$node->getOwner(), \$folder->getById())
|
read-only Files API (\$node->getOwner(), \$folder->getById())
|
||||||
- who currently owns the file, i.e. whether the affected
|
- 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'.
|
Nextcloud storage and never touches 'encryption_skip_signature_check'.
|
||||||
It only inspects, on disk and via the normal Files API, whether the
|
It only inspects, on disk and via the normal Files API, whether the
|
||||||
expected encryption key files are present for accounts/files that
|
expected encryption key files are present for accounts/files that
|
||||||
recover_bad_signature.sh could not read (READ_ERROR, not 'Bad
|
recover_bad_signature.sh or restore_bad_signature.sh could not
|
||||||
Signature').\033[m"
|
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"
|
echo -e "\033[32m-----\033[m"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user