Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.
Message added by KluthR,

[Plugin] Appdata.Backup

Featured Replies

11 minutes ago, Kilrah said:

Do you have a delay set after gluetun start on the Docker page? If not set a minute or so. Gluetun's probably not ready and connected instantly.

I have experimented with some delays in the past, but no I did not have one set. I just updated the "Wait" to 120 for GluetunVPN. Manual backup just worked successfully. Fingers crossed for the regular backup next week!

  • Replies 2.2k
  • Views 364.8k
  • Created
  • Last Reply

Top Posters In This Topic

Most Popular Posts

  • Feature freeze I have less and less time for a complete care of this plugin. You already noticed this with the fact, that announced features were not implemented yet. Another reason is, that I will mo

  • The new update is coming It been a while since the last stable update. There were some betas (never got feedback though) but I had other work to do the last weeks. I tested the major changes agai

  • 2023.08.28 should fix the docker auto update issue.

Posted Images

@KluthR The donate button needs to be fixed, when I click on paypal it takes me to paypal and says "This organization's page is broken." and that's it.

  • Author

Its deleted in latest versions. The donation button was being disabled by me due to inactivity on this project

Hi,

I have been getting a failed backup recently; the last working backup is now just over a month ago. The log shows it is because of PLex with the error....

[28.10.2025 03:30:14][ℹï¸][plex] Backing up plex...
[28.10.2025 04:15:16][debug][plex] Tar out: tar: /mnt/cache/appdata/plex/Library/Application Support/Plex Media Server: file changed as we read it
[28.10.2025 04:15:16][âŒ][plex] tar creation failed! Tar said: tar: /mnt/cache/appdata/plex/Library/Application Support/Plex Media Server: file changed as we read it
[28.10.2025 04:16:38][debug][plex] lsof(/mnt/cache/appdata/plex)

But further up the log it shows that it did stop the container without issue, so I do not know why this would be happening if the container is stopped.

I did try and search through this thread but every search result took me to the wrong post so I could not find anything after 20mins of searching. Hope this is a simple fix, if anyone has any ideas that would be great.

backup.debug.log

Is the retention policy intended to also apply to the automated flash backup?

I just realised that whilst my appdata backups are beautifully adhering to the 7 day retention policy, I have hundreds of old flash drive backups -- looks like they go back to when the server was set up and the plugin was first installed.

I can't see any errors in the logs, and the script seems to be only applying the retention policy to the appdata backups, so I suspect my install is working as expected, but always aware I might have screwed something up!

If this is planned, is there a recommended way to apply a retention policy to the flash drive backups?

Ps - Thanks to the creator/maintainers for all your work on this!

Normal log extract
[02.11.2025 01:12:05][ℹ️][Main] Backing up the flash drive.
[02.11.2025 01:13:20][ℹ️][Main] Flash backup created!
[02.11.2025 01:13:20][ℹ️][Main] Copying the flash backup to '/mnt/user/backup/unraid_boot_flash/' as well...
[02.11.2025 01:13:22][ℹ️][Main] VM meta backup enabled! Backing up...
[02.11.2025 01:13:22][ℹ️][Main] Done!
[02.11.2025 01:13:22][ℹ️][Main] Checking retention...
[02.11.2025 01:13:22][ℹ️][Main] Delete old backup: /mnt/user/backup/appdata/ab_20251026_010002
[02.11.2025 01:13:22][ℹ️][Main] DONE! Thanks for using this plugin and have a safe day ;)
[02.11.2025 01:13:22][ℹ️][Main] ❤️

Debug log

[02.11.2025 01:12:05][debug][Main] Not executing script: Not set!
[02.11.2025 01:12:05][ℹ️][Main] Backing up the flash drive.
[02.11.2025 01:13:19][debug][Main] flash backup returned: unraid-v7.2.0-flash-backup-20251102-0112.zip
[02.11.2025 01:13:20][ℹ️][Main] Flash backup created!
[02.11.2025 01:13:20][ℹ️][Main] Copying the flash backup to '/mnt/user/backup/unraid_boot_flash/' as well...
[02.11.2025 01:13:22][ℹ️][Main] VM meta backup enabled! Backing up...
[02.11.2025 01:13:22][debug][Main] tar return: 0 and output: 1
[02.11.2025 01:13:22][ℹ️][Main] Done!
[02.11.2025 01:13:22][ℹ️][Main] Checking retention...
[02.11.2025 01:13:22][debug][Main] toKeep after slicing:
Array
(
[0] => /mnt/user/backup/appdata/ab_20251102_010002
[1] => /mnt/user/backup/appdata/ab_20251101_010004
[2] => /mnt/user/backup/appdata/ab_20251031_010002
)

[02.11.2025 01:13:22][debug][Main] Delete backups older than 20251026_011322
[02.11.2025 01:13:22][debug][Main] Discarding /mnt/user/backup/appdata/ab_20251102_010002, because its newer or already in toKeep
[02.11.2025 01:13:22][debug][Main] Discarding /mnt/user/backup/appdata/ab_20251101_010004, because its newer or already in toKeep
[02.11.2025 01:13:22][debug][Main] Discarding /mnt/user/backup/appdata/ab_20251031_010002, because its newer or already in toKeep
[02.11.2025 01:13:22][debug][Main] Keeping /mnt/user/backup/appdata/ab_20251030_010002
[02.11.2025 01:13:22][debug][Main] Keeping /mnt/user/backup/appdata/ab_20251029_010001
[02.11.2025 01:13:22][debug][Main] Keeping /mnt/user/backup/appdata/ab_20251028_010002
[02.11.2025 01:13:22][debug][Main] Keeping /mnt/user/backup/appdata/ab_20251027_010002
[02.11.2025 01:13:22][debug][Main] Discarding /mnt/user/backup/appdata/ab_20251026_010002, because its newer or already in toKeep
[02.11.2025 01:13:22][debug][Main] Resulting toKeep: /mnt/user/backup/appdata/ab_20251102_010002, /mnt/user/backup/appdata/ab_20251101_010004, /mnt/user/backup/appdata/ab_20251031_010002, /mnt/user/backup/appdata/ab_20251030_010002, /mnt/user/backup/appdata/ab_20251029_010001, /mnt/user/backup/appdata/ab_20251028_010002, /mnt/user/backup/appdata/ab_20251027_010002
[02.11.2025 01:13:22][debug][Main] Resulting deletion list: /mnt/user/backup/appdata/ab_20251026_010002
[02.11.2025 01:13:22][ℹ️][Main] Delete old backup: /mnt/user/backup/appdata/ab_20251026_010002
[02.11.2025 01:13:22][ℹ️][Main] DONE! Thanks for using this plugin and have a safe day ;)
[02.11.2025 01:13:22][ℹ️][Main] ❤️
[02.11.2025 01:13:23][debug][Main] Not executing script: Not set!


image.png

3 hours ago, maelstrm said:

Is the retention policy intended to also apply to the automated flash backup?

The flash backup is stored in the backup folder with the rest so as folders get purged it goes with them.

Problem is you filled the optional "also copy it to another location" field, and that is not managed.

Edited by Kilrah

11 hours ago, Kilrah said:

The flash backup is stored in the backup folder with the rest so as folders get purged it goes with them.

Problem is you filled the optional "also copy it to another location" field, and that is not managed.

OK this makes sense - I didn't interpret that path field correctly, and assumed that it meant that the flash backup would be stored in another path but subject to the same retention policy.
Hopefully it's not too common a mistake - I had hundreds of GBs being consumed by duplicate backups. All sorted for me now tho thank you!!

Hey!

I'm using the option "Copy the flash backup to a custom destination" with a destination to an exact same type of flash drive as my boot drive. It is only a 16Gb pendrive and it got a notification that it filled up. Is there and option to keep this cleaned up too? It looks like the "Delete backups if older than x days:" setting does not apply on this.

Edit: I just saw the solution on the previous posts. So it is not managed by the plugin.

Edited by Lecso

40 minutes ago, Lecso said:

I'm using the option "Copy the flash backup to a custom destination" with a destination to an exact same type of flash drive as my boot drive. It is only a 16Gb pendrive and it got a notification that it filled up.

Not a great thing to do, since it's zipped it's not usable as is anyway without taking it to a PC and extracting it, and that flash drive will get premature wear from all the writing.

2 hours ago, Kilrah said:

Not a great thing to do, since it's zipped it's not usable as is anyway without taking it to a PC and extracting it, and that flash drive will get premature wear from all the writing.

What solution would you suggest?

I send a copy of my appdata backups (so including the "main" flash backup) to another machine on my network.

EDIT: and also to an external HDD that I plug to the server once in a while and uses an Unassigned Devices script to rsync the backup share to it.

Edited by Kilrah

10 hours ago, Kilrah said:

I send a copy of my appdata backups (so including the "main" flash backup) to another machine on my network.

I do something similar. I have an external USB drive attached to my server, which via a script that runs once a week, I rsync the folder which contains backups of several Windows machines in the house, my appdata backup folder (which has my Unraid flash drive backups), as well as a few other miscellaneous things. I actually have two of these drives, and I rotate them out every few months, keeping one offsite.

Having the data on a drive I can grab and move to another machine is very convenient if any data recovery is needed.

I have experimented with some delays in the past, but no I did not have one set. I just updated the "Wait" to 120 for GluetunVPN. Manual backup just worked successfully. Fingers crossed for the regular backup next week!

No luck. :-/

Same errors this morning. Debug Log attached.

DebugLog 20251104.txt

Try disabling auto-updates. AFAIK when the VPN container updates the others then can't find their dependency since the container got replaced by a new one. The Docker page update button takes care of that but maybe not this plugin.

Could be that your manual tests are always close enough to the previous one that there haven't been updates inbetween, but there is after a week.

Edited by Kilrah

24 minutes ago, Kilrah said:

Try disabling auto-updates. AFAIK when the VPN container updates the others then can't find their dependency since the container got replaced by a new one. The Docker page update button takes care of that but maybe not this plugin.

Could be that your manual tests are always close enough to the previous one that there haven't been updates inbetween, but there is after a week.

The auto-updates are a useful feature but I have turned it off for now so we can at least see if it is potentially the problem. I also tweaked the start order in case the apps like Bazaar that are stopped are for some reason tripping up other app VPN apps. It is worth noting that when the backup fails, "Start All" in the Docker tab will not restart the apps. I have to restart the Server, Docker, or each App one-by-one. I have rebooted my server (and updated it to Unraid 7.2.0) and manually completed a backup. Will report back after the scheduled backup next week.

image.png

I initially had the backup set to dump in a local folder on my Unraid server, but have now updated it to dump straight to a remote target (mounted using Unassigned Devices). What I can't work out, is why when the backup runs locally it creates backup.log and config.json:

root@NAS01:/mnt/user/data/Backup/ab_20251109_040001# ls -lah

total 879M

drwxr-x--- 1 nobody users 138 Nov 9 04:03 ./

drwxrwxrwx 1 username users 128 Nov 9 04:00 ../

-rw-r----- 1 nobody users 743 Nov 9 04:03 backup.log

-rw-r----- 1 nobody users 1006 Nov 9 04:03 config.json

-rw-r----- 1 nobody users 879M Nov 9 04:00 nas01-v7.2.0-flash-backup-20251109-0400.zip

But when I have the target set as the remote device, it only puts the data and not the backup.log and config.json file?

root@NAS01:/mnt/remotes/NAS02.LAN_Backup/ab_20251109_065248# ls -lah

total 879M

drwxrwxrwx 2 nobody users 0 Nov 9 06:53 ./

drwxrwxrwx 2 nobody users 0 Nov 9 06:52 ../

-rwxrwxrwx 1 nobody users 879M Nov 9 06:53 nas01-v7.2.0-flash-backup-20251109-0652.zip*

1 minute ago, flashback said:

I initially had the backup set to dump in a local folder on my Unraid server, but have now updated it to dump straight to a remote target (mounted using Unassigned Devices). What I can't work out, is why when the backup runs locally it creates backup.log and config.json:

root@NAS01:/mnt/user/data/Backup/ab_20251109_040001# ls -lah

total 879M

drwxr-x--- 1 nobody users 138 Nov 9 04:03 ./

drwxrwxrwx 1 username users 128 Nov 9 04:00 ../

-rw-r----- 1 nobody users 743 Nov 9 04:03 backup.log

-rw-r----- 1 nobody users 1006 Nov 9 04:03 config.json

-rw-r----- 1 nobody users 879M Nov 9 04:00 nas01-v7.2.0-flash-backup-20251109-0400.zip

But when I have the target set as the remote device, it only puts the data and not the backup.log and config.json file?

root@NAS01:/mnt/remotes/NAS02.LAN_Backup/ab_20251109_065248# ls -lah

total 879M

drwxrwxrwx 2 nobody users 0 Nov 9 06:53 ./

drwxrwxrwx 2 nobody users 0 Nov 9 06:52 ../

-rwxrwxrwx 1 nobody users 879M Nov 9 06:53 nas01-v7.2.0-flash-backup-20251109-0652.zip*

OK, it looks like it has created it - it's just a 3 minute or so lag to do so.

Alright........ now that is sorted, do I have to manually delete the 3 backups I had run to the Unraid device, now that I've set the target to a new place? Or is it smart enough to do its version control and auto clean them up (I have it set to 14 and 7).

If you changed the destination how would it know about the old one anymore? It'll clean up in the configured destination folder.

Is there a way to use this with containers that use SQLite, such as Sonarr or Radarr, without it causing their databases to be corrupted when it stops the container?

(Running a backup without stopping the container, obviously — but that's not ideal as the backup could be corrupted!)

Unfortunately, whatever method is used to stop the container doesn't seem to wait long enough for Radarr to finish before abruptly terminating the container mid-operation. (It's also possible that Radarr doesn't spot that it's being asked to shut down gracefully and just rampages on until it gets killed…)

AFAIK the timeout used is the global one set in Docker settings, might want to increase that

Edited by Kilrah

15 hours ago, Kilrah said:

AFAIK the timeout used is the global one set in Docker settings, might want to increase that

10 seconds. Yes, no wonder it was causing problems. Thanks!

The auto-updates are a useful feature but I have turned it off for now so we can at least see if it is potentially the problem. I also tweaked the start order in case the apps like Bazaar that are stopped are for some reason tripping up other app VPN apps. It is worth noting that when the backup fails, "Start All" in the Docker tab will not restart the apps. I have to restart the Server, Docker, or each App one-by-one. I have rebooted my server (and updated it to Unraid 7.2.0) and manually completed a backup. Will report back after the scheduled backup next week.

image.png

Good news: backup was successfully completed this morning!

I am interested in still having app updates automatically applied. I may try to see if the problem with the updates is connected with the stopped / non-auto-start apps. Especially (VPN linked) Bazaar in my case. I have removed Bazaar, set Handbrake to auto-start. And turned on updates in this plugin. I will see if it works next week.

Is there any way to copy files without making tar files? @KluthR

I tried turning off compression, but the files are still .tar

52 minutes ago, KluthR said:

No, at least tar (no compression packed) required

Is there a food reason for this? I am asking because I am thinking about making my own solution that can use a tool such as Borg or Duplicacy to deduplicate and compress backups instead. If there are considerations which led you to use tar I would love to know before I spend the next 1000 hours making a script that can do this 😂

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.