From b86b07a49c0d8c9a804a8e790761ec49b330426a Mon Sep 17 00:00:00 2001 From: Dillard Blom Date: Fri, 6 Nov 2026 11:56:10 +0100 Subject: [PATCH 1/3] Disaster recovery guide: --salvage after a restore that stopped halfway --- docs/DISASTER-RECOVERY.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/docs/DISASTER-RECOVERY.md b/docs/DISASTER-RECOVERY.md index 06a238f..3a2d41d 100644 --- a/docs/DISASTER-RECOVERY.md +++ b/docs/DISASTER-RECOVERY.md @@ -117,6 +117,11 @@ first. If none is better, `--salvage` restores whatever can be read: occ backup:restore:full offsite --install-apps --salvage +If a restore already stopped halfway, run it as in step 8: maintenance mode off, with `--force` and +without `--install-apps`: + + occ maintenance:mode --off && occ backup:restore:full offsite --salvage --force + - Files that cannot be read are left out and listed at the end; everything else is restored. - If the database cannot be restored (its dump is damaged, or it does not fit this installation), the database stays as the fresh installation made it, and the data directory From 4c973d5cd84ccf2ed1a881931bda38ffa17cdccb Mon Sep 17 00:00:00 2001 From: Dillard Blom Date: Fri, 6 Nov 2026 12:00:52 +0100 Subject: [PATCH 2/3] Docs: a full disk during a restore looks like a damaged backup, to be fixed in 1.0.3 --- CHANGELOG.md | 3 +++ README.md | 3 +++ docs/DISASTER-RECOVERY.md | 4 ++++ 3 files changed, 10 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index af889fc..6423596 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -55,6 +55,9 @@ shown under 1.0.0. The git tag of a release candidate goes after the date. ### Known issues - Empty folders are not backed up or restored; to be fixed in 1.0.3 (#27). +- A full disk during a restore looks like a damaged backup ("Size mismatch"), and with `--salvage` + the restore goes on and lists the remaining files. The backup itself is fine: make room and run + the restore again. To be fixed in 1.0.3. ## [1.0.1] - 2026-11-01 diff --git a/README.md b/README.md index 8db57de..87b1935 100644 --- a/README.md +++ b/README.md @@ -296,6 +296,9 @@ On the backlog; know them before you rely on NG Backup: - **Empty folders do not come back.** A backup only records files, so a folder without files is not restored. To be fixed in 1.0.3 ([#27](https://github.com/dillardblom/ng_backup/issues/27)). +- **A full disk during a restore looks like a damaged backup.** The reason shown is "Size mismatch", + and with `--salvage` the restore goes on and lists the remaining files. The backup itself is fine: + make room and run the restore again. To be fixed in 1.0.3. - **Only the data directory is backed up.** Object storage as primary storage (`objectstore` in `config.php`) is not supported: a backup refuses to start there. Folders mounted through the External storage app are not in the data directory and are **not included**, without a warning. diff --git a/docs/DISASTER-RECOVERY.md b/docs/DISASTER-RECOVERY.md index 3a2d41d..eedf155 100644 --- a/docs/DISASTER-RECOVERY.md +++ b/docs/DISASTER-RECOVERY.md @@ -123,6 +123,10 @@ without `--install-apps`: occ maintenance:mode --off && occ backup:restore:full offsite --salvage --force - Files that cannot be read are left out and listed at the end; everything else is restored. +- **Check the disk first if the reason is "Size mismatch".** In this version a full disk looks like + damaged data: the message then points at `--salvage`, and with `--salvage` the restore goes on and + lists the remaining files. The backup itself is fine: make room and run the same command again + with `--force`. To be fixed in 1.0.3. - If the database cannot be restored (its dump is damaged, or it does not fit this installation), the database stays as the fresh installation made it, and the data directory and config of the backup go to a folder of their own in the data directory, From d5eb7abbffe467bebef3f59831333d8c73349e3a Mon Sep 17 00:00:00 2001 From: Dillard Blom Date: Fri, 6 Nov 2026 12:02:38 +0100 Subject: [PATCH 3/3] Guide: after a full disk, run the restore again as in step 8 --- docs/DISASTER-RECOVERY.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/DISASTER-RECOVERY.md b/docs/DISASTER-RECOVERY.md index eedf155..cd517b6 100644 --- a/docs/DISASTER-RECOVERY.md +++ b/docs/DISASTER-RECOVERY.md @@ -125,8 +125,8 @@ without `--install-apps`: - Files that cannot be read are left out and listed at the end; everything else is restored. - **Check the disk first if the reason is "Size mismatch".** In this version a full disk looks like damaged data: the message then points at `--salvage`, and with `--salvage` the restore goes on and - lists the remaining files. The backup itself is fine: make room and run the same command again - with `--force`. To be fixed in 1.0.3. + lists the remaining files. The backup itself is fine: make room and run the restore again as in + step 8, without `--salvage` unless the backup is damaged as well. To be fixed in 1.0.3. - If the database cannot be restored (its dump is damaged, or it does not fit this installation), the database stays as the fresh installation made it, and the data directory and config of the backup go to a folder of their own in the data directory,