Hyper Backup destination corrupted: what you can still recover
hbkit can't repair a damaged backup. It reads the parts that are still intact, checks every chunk against the archive's own MD5 and CRC32, and names each file it can't rebuild.
hbkit needs the archive's Config/ folder. If only Pool/ is left, hbkit can't recover it yet.
If the disk is slow, clicks or shows SMART errors, stop. Image it or send it to a recovery lab, then run hbkit on the copy.
hbkit never writes to the archive. If it is your only copy, copy the whole .hbk folder to another disk first and run hbkit on the copy.
What hbkit can't do yet
- Recover from
Pool/alone, withoutConfig/. - Open older RSA-encrypted archives, or open an archive with only the key file.
- Rebuild files stored by whole-file dedup (1 in 501,278 files in the reference archive).
- Synology C2 Storage: Not tested yet.
- On Windows, CI restores test archives byte-exact on every change. A backup from a real NAS has not been restored on Windows yet.
Use Hyper Backup Explorer for C2, key-file access and older RSA archives.
hbkit is an open reader for your own backups. It is free and open source, runs on macOS and Linux, and needs no NAS.
brew install YordiLorenzo/tap/hbkitHomebrew also installs liblz4. With pipx install hbkit, install liblz4 yourself: brew install lz4, sudo apt install liblz4-1 or sudo pacman -S lz4.
Get back what is intact, in five steps
1. Copy the whole .hbk folder first
Work on a copy and leave the original as it is. Copy the folder whose name ends in .hbk, with Config/, Pool/ and every file next to them, to a healthy disk.
rsync -a /Volumes/Backup/nas_1.hbk /Volumes/Spare/Then count the files in both folders. Different numbers show an incomplete copy; matching counts alone do not prove the contents match.
find /Volumes/Backup/nas_1.hbk -type f | wc -l
find /Volumes/Spare/nas_1.hbk -type f | wc -lAn incomplete copy causes errors that look like damage. A forum user downloaded only the .bkpi file from Amazon S3, and Hyper Backup Explorer said the data was corrupted. With the whole folder, the restore worked (thread 107656, 2017). The .bkpi file is only a marker and can be zero bytes (FORMAT.md).
A backup in S3, B2 or R2 is also faster to read from a local copy than through hbk mount.
2. Run doctor
hbk /Volumes/Spare/nas_1.hbk doctordoctor never writes to the archive. It reads the layout, then rebuilds a random sample of files and checks every chunk. For an encrypted archive, add -p and the password, or set HBK_PASSWORD. doctor does not ask for it. Its last line is one of three verdicts:
| Verdict | What it means | Next |
|---|---|---|
recoverable | Every sampled file came back and passed its checks. | Step 3. A sample can miss damage in other files. |
sample extraction FAILED | At least one check failed, usually on a sampled file. A FAIL line says which. | Step 3 finds every file that fails. |
cannot be recovered by this tool | Something blocks hbkit. The BLOCKED line says what. | See what hbkit can't do yet above. |
3. Verify every file
hbk /Volumes/Spare/nas_1.hbk verify "*" -j 8verify reads and checks every file without restoring it. It can write a local index cache, but never changes the archive. -j sets the number of worker processes: 8 (the default) for a local disk, 16 for a network mount. verify lists each failure as FAIL <path>: <reason>, up to 20, then counts the rest. Exit code 1 means at least one file failed.
4. Get the intact files
hbk /Volumes/Spare/nas_1.hbk get "/Photos/*" ~/restore -j 8Or tick folders in hbk-tui /Volumes/Spare/nas_1.hbk.
Each file that passes every check is saved as ~/restore/<share>/<original path>, with its original modification time. A file that fails is listed and is not saved under its name. If the run stops, run the same command again. Finished files are skipped.
5. If the newest version fails, try an older one
Each backup version has its own file list in Config/. If the newest file list is damaged, an older version may still open.
hbk /Volumes/Spare/nas_1.hbk versions
hbk /Volumes/Spare/nas_1.hbk get "/Photos/*" ~/restore-v12 --version 12If Config/version_info.db is damaged, hbkit stops with exit code 2, because it can't tell which versions finished. Add --allow-incomplete to read the newest file list of each share. hbkit then says that completion was not checked.
"Stored data on the backup destination are corrupted."
Hyper Backup Explorer, when it opens a backup.
Users report this message in these situations:
- Only part of the folder was copied. See the reported fix in step 1.
- A Mac or a Windows PC read the disk through an ext4 driver. The drivers were ext4fuse on a Mac (thread 108792, 2017) and DiskInternals Linux Reader on Windows (r/synology, 2025). Neither thread has a fix. For a related error, see "File or directory does not exist" below.
- The backup is damaged. A recovery company describes a disk with corrupted
.bucketand.indexfiles. Explorer restored about 75 GB, then stopped with errors (case report, 2025).
With hbkit, run steps 1 to 3 on the same folder. If part of the archive is missing, doctor reports what it could not open. If chunks are damaged, verify names each file that fails, and step 4 gets the rest. For an encrypted backup, hbkit checks the password before it reads any data and says if it is wrong.
"Partially copied the file/folder"
Hyper Backup Explorer, during a restore.
Explorer copied only part of what you selected. The message points to an error log. One user saw it on a Mac with Paragon ExtFS, after a client's NAS was stolen. Nobody replied (thread 111882, 2017). The recovery company above saw it on the damaged disk.
With hbkit, run verify first. It lists each file that fails, and the reason, before you copy anything. Then get restores every file that passes.
"File or directory does not exist."
Hyper Backup Explorer, when it copies files out.
Explorer opens the backup and shows the files, but the copy fails. Users report this on Macs and Windows PCs that read an ext4 backup disk through Paragon's driver (thread 103292, thread 130806). What users report:
- Synology support told one user to copy the disk to a local folder first, then open the copy (thread 103292).
- Linux worked. Explorer restored files in Ubuntu 18.04 (thread 103292) and in a Linux Mint virtual machine (thread 130806).
chmod -R 0777on the.hbkfolder fixed it for one user (thread 130806, 2022). This changes the backup. Do it only on a copy.
With hbkit, use Linux: it reads ext4 without an extra driver. hbkit never writes to the archive, so a read-only mount is enough.
"The data stored in backup destination [...] was corrupted."
Hyper Backup on the NAS, in the log. The task can show "Destination corrupted".
Users report it after the USB disk ran out of space (thread 190393, 2024). For USB disks, Synology support called it a known issue and said not to unmount the disk (thread 97610, 2017). The log can name a file in Config/, such as Config/virtual_file.index, that "was not existed or had invalid content". hbkit reads the same files, so a damaged one can block hbkit too. doctor tells you.
What users report:
- Synology support told users to delete the backup and start again (thread 97610; SynoForum, 2023 and 2025). That deletes every old version.
- Several users fixed the task with Synology's
synoimgbkptool, run over SSH on the NAS (SynoForum thread, 2020 to 2025). It failed for one user. It changes the backup, and one user expected it to run for days on 11 TB.
Before you delete the task or run a repair, do steps 1 to 4 on a copy.
Ransomware locked some files in the backup
In hbkit issue #6, wingsoon2 reported that C3RB3R ransomware renamed small files to .L0CK3D: bucketID.counter, del_list.db and _Syno_TaskConfig. It left Config/ and the Pool/ buckets alone. hbkit does not need those small files for this restore. It restored 465,000 files (754 GB), with none failed.
hbkit can't decrypt ransomware-encrypted files. If Config/ itself is encrypted, names and folders can't be rebuilt yet. Update DSM first, following Synology-SA-26:13.
Check a backup on a clean computer
A restore test shows that the backup works without the NAS.
- Connect the backup disk. Mount it read-only if you can.
- Run
hbk /Volumes/Backup doctor. - Run
hbk /Volumes/Backup verify "*" -j 8. - Restore one folder you know with
get, and open a few of its files.
After installation, hbkit needs no Synology account or internet connection when reading a local disk. For an encrypted archive, the index in ~/.cache/hbkit keeps the file names in plain text. Delete it when you finish.
If doctor fails on your archive for another reason, open an issue and paste its output. The output shows the task, host and share names, so remove what you want to keep private.
Install options and every command: hbkit home. For the full restore process, read Restore without a NAS.