Restoring a specific file to FileCloud using Thirdparty Backups
Original Question or Issue:
How to restore a specific file to FileCloud using Thirdparty Backups from an older date?
Environment:
- Product - FileCloud Server
- Version -
- Platform - Windows, Linux
Steps to Reproduce:
Error or Log Message:
Defect or Enhancement Number:
Cause:
Resolution or Workaround:
FileCloud stores files in non human readable format to avoid file collisions and name spaces. These file metadata references can be found from the database to understand which path the file is stored on the storage location.
If you want to restore a single file or multiple file, you need to search for the file name in the storage database first. The command to find the reference is as follows.
test > use tonidostoragedb;
switched to db tonidostoragedb
tonidostoragedb> db.items.find({"name":"File to be restored.xlsx"}).pretty();
[
{
_id: ObjectId('6ab106b924a75f5785046a54’),
id: ‘698c32ec1de83009831551’,
type: ‘file’,
name: 'File to be restored.xlsx’,
lowername: 'File to be restored.xlsx’,
parentid: ‘622b259558c94695110340’,
owner: ‘teamuser’,
ext: ‘xlsx’,
date: ISODate('2026-09-21T10:28:09.328Z’),
creationdate: ISODate('2026-09-21T10:28:09.330Z’),
complete: ‘1’,
size: 515215,
containerid: ‘6aaca33fc77d4932228792’,
storedpath: '0/61912c0d634b6781269867/6aaca33fc77d4932228792/698c32ec1de83009831551_6ab106b950c22684021186.dat’,
who: ‘username’,
how: ‘WOPI’,
versionedon: ISODate('2026-09-21T10:28:13.165Z’),
checksum: ‘6886836ea02d0bd93421bf89533714fd753394cec7c694771fadc0cd1849e6b5’
},
{
_id: ObjectId('6ab106bd35788bc471028f12’),
id: ‘698c32ec1de83009831551’,
type: ‘file’,
name: 'File to be restored.xlsx’,
lowername: 'File to be restored.xlsx’,
parentid: ‘622b259558c94695110340’,
owner: ‘teamuser’,
ext: ‘xlsx’,
date: ISODate('2026-09-21T10:28:13.150Z’),
creationdate: ISODate('2026-09-21T10:28:13.152Z’),
complete: ‘1’,
size: 483328,
containerid: ‘6aaca33fc77d4932228792’,
storedpath: '0/61912c0d634b6781269867/6aaca33fc77d4932228792/698c32ec1de83009831551_6ab106bd25104776729180.dat’,
who: ‘username’,
how: ‘WOPI’,
checksum: ‘dd67fef4a6afe36eaf212ee9670cfbd65e47e7c9ae5fb5919e48fe10ba0ccd51’
}
]
The entry without "versionedon" will be the live file and entry with the "versionedon" will be a versioned file. The "storedpath" shows where the file is stored in the storage path, so this will be located as "/mnt/fileclouddata/61912c0d634b6781269867/6aaca33fc77d4932228792/698c32ec1de83009831551_6ab106bd25104776729180.dat" for the full path on storage disk.
In your backups, you can search for files starting with 698c32ec1de83009831551_ under the path /mnt/fileclouddata/61912c0d634b6781269867/6aaca33fc77d4932228792/ you will be able to find the backup copy. Once you find the file for the date you want to restore, you can rename the .dat file to the actual file name and verify the file content by opening it and re-upload it to the FileCloud UI.
Notes:
-
This method is not applicable for encrypted storage.
-
This method is not applicable for files that don't exist in the system, for files that don't exist in the system, a database backup from an older date and storage path from an older date needs to be restored on a temporary VM to recover the files.
- If same file name across multiple parent folders the "parentid" in database reference will change. Using the parentid in MongoDB query will help to find the parent folder for each file.