Ability to delete backups/snapshots

Ryan M shared this idea 5 years ago
Under Consideration

Currently it's not possible to delete a backup or snapshot, you have to wait until it expires and is deleted by the cron.


I'd like to be able to delete a backup or snapshot on demand without having to go to the destination server, manually delete the files, and then re-index the destination.

Best Answer
photo

Hi Guys,


First off we'd like to thank everyone for continuing to provide feedback regarding this feature and while we do understand the need for this feature, we would like to take this opportunity to provide you with insight into some of the considerations we have that are keeping us from pursuing this feature.


To clarify, one of our core goals is to provide reliable backups and part of that goal is to ensure that backups generated in JetBackup are as resilient as possible to misconfiguration or unintentional deletion. With this in mind, we design our backup cleanup process to strictly follow the backup job configuration and err towards keeping backups instead of deleting them when there are changes to the configuration.


And just to add, we actually had this briefly implemented on an EDGE version of JetBackup 4 but received negative feedback from clients, with their main concern being that this introduces a possible single point of failure. In case an unauthorized actor gets access to the server/JB admin UI at the root/admin level, they can essentially delete all existing backups and compromise the server leaving admins unable to roll back. This extends to accidental deletion by the admin themselves, creating an irrecoverable situation if the backups were deleted.


We hope that everyone finds the following information insightful and we look forward to continuing to receive feedback from the community!


Best Regards,

JetApps Team

Replies (18)

photo
4

Hi,

Thank you for submitting a feedback :)

We will be review it and update accordingly.


Thanks,

Ofir, JetApps Team

photo
4

And there's no "re-index destination" so even if you remove it manually, it'll be there. This is basic.

photo
5

Hi,


Re-index can be executed by running the CLI command

/usr/bin/jetcli backup -vfR reindex

P.S - It's not recommended to make manual changes on the backup destination.


Regards,

Ofir,

JetAppsTeam

photo
3

REALLY!? This BASIC Feature isn't implemented yet?? I searched for it in WHM, not there. I permanently struggle with space problems. This is definitely what JetBackup can't handle properly. It just refuses to backup instead of deleting old backups. I deactivated snapshots, but it does them anyway. That's really a no go!

Currently we are forced to use the terminal to delete backups or organize them. Then enter a special re-index command... :-/

Please fix this.

Best, Michael

photo
1

Hello Michael,


Thank you for providing your feedback for this feature. By deleting old snaps only after a successful backup, we hope to ensure that user backups are not lost by mistake. This way, if there are any other errors that can occur, no backups will be lost. I would like to address the issue you mentioned regarding disabling snapshots but still having them appear. This does not seem to be expected behavior from JetBackup and I would like to recommend reaching out to our support team at support@jetapps.com to have this investigated.


This feature is still under consideration and we will provide updates as they become available. We appreciate any and all feedback as it helps us deliver secure, reliable, and cutting-edge software to our users.


Thank you,

The JetApps Team

photo
2

Come on! STILL considering this after 3 years? This is a BASIC BASIC feature that should ALWAYS be available!

photo
photo
1

Hi Guys,


First off we'd like to thank everyone for continuing to provide feedback regarding this feature and while we do understand the need for this feature, we would like to take this opportunity to provide you with insight into some of the considerations we have that are keeping us from pursuing this feature.


To clarify, one of our core goals is to provide reliable backups and part of that goal is to ensure that backups generated in JetBackup are as resilient as possible to misconfiguration or unintentional deletion. With this in mind, we design our backup cleanup process to strictly follow the backup job configuration and err towards keeping backups instead of deleting them when there are changes to the configuration.


And just to add, we actually had this briefly implemented on an EDGE version of JetBackup 4 but received negative feedback from clients, with their main concern being that this introduces a possible single point of failure. In case an unauthorized actor gets access to the server/JB admin UI at the root/admin level, they can essentially delete all existing backups and compromise the server leaving admins unable to roll back. This extends to accidental deletion by the admin themselves, creating an irrecoverable situation if the backups were deleted.


We hope that everyone finds the following information insightful and we look forward to continuing to receive feedback from the community!


Best Regards,

JetApps Team

photo
3

This is not a very strong reason to not implement this. While I can see the sense behind it there is a flaw in the logic. Some destinations are linked using private and public keys such as rsync.net or ssh or whatever uses them. Therefore it only takes a command that can be executed from the cli to remove all backups anyway if the hacker gets access at the root level. So by not providing a way to delete old backups, the flaw exists anyway from the cli.


If you are not going to provide this feature through the admin, then at least update your knowledge base with a supported method of deleting them directly on the destination. At present the way to do this by deleting the .snap folders and reindexing but this is not a process that Jetbackups supports even though it works. So give us a supported method please and we won't need this feature.

photo
3

5 years waiting for this?

Difficult to believe it's so hard to do, or not considered important enough.

The reason why it's so important is as follows:

The current recommended way of deleting backups is to reduce the retention value. When the backup processing next runs, it auto-removes the backups that are now outside the retention value.

BUT there's a fatal flaw! If the backup server is full (>95% utilised), then the backup processing can't execute, and the auto-removal of backup files can't happen.

So just at the moment you really need to remove backups by the recommended method - you can't!

You're then forced to use the non-recommended CLI method.

Not good.

photo
2

Also related: we need a way to be able to delete old/abandoned files from the backup server itself.

I'm thinking that a good way/place to do this would be using Jetbackup Management Console:

https://www.jetbackup.com/jetbackup-management-console/

Example: it's just come to my attention that some of our backup servers were still storing backup files from servers that we had decommissioned some time ago.

So clearly we forgot to manually remove these backup files when we decommissioned the servers. Our bad!

But if the Jetbackup MC included the ability to display the backups files sitting on the server (i.e. which source server they belong to), with the option to delete... that would be great.

photo
3

Agreed this is a must, and hopefully it wont get lost under the "Jetbackup 4" Topic.

photo
2

This should be a basic feature in every backup tool.

photo
1

Hello Ranjith Kk,

We greatly appreciate your feedback! Although it is not possible to remove snapshots/backups from the GUI, they can be removed via the API, deleteAccountSnapshots . When using this command, an account's snapshots to delete can be specified by setting the time range, backup job, and destination options.

Best regards,
The JetApps Team

photo
4

Thats the point of a feature request, to get this feature also into the GUI !
We know that it isnt there, and a lot of us have nothing to do with APIs as we are not programmers, but hosters.
Is it technically so hard to implement this feature?

photo
photo
1

Five years later this option is still not available in the graphical user interface. :-(

photo
1

Hello Everyone,

At JetBackup, ensuring the safety and integrity of your backups is a top priority. To avoid any accidental/unintended deletions, we currently do not have plans to add a "Delete Snapshot" feature within the JetBackup GUI. This is a security measure to ensure that all snapshot deletions are intentional and controlled.

We have explored ways to potentially implement this feature, such as adding a 2FA for extra security. However, introducing this functionality could open vulnerabilities, potentially allowing bad actors to lock you out of your backups, posing a risk to the very data we aim to protect.

For users who need to delete snapshots, this functionality will continue to be available through our API, ensuring deliberate and secure management of your backups.

Best Regards,

The JetApps Team

photo
1

Ok, we understand, we had purchased a license to do tests for a month, but seeing that something as basic as this has not been integrated after five years and you also make it clear that it will not be integrated, we are clear that this is not the software we are looking for, we cannot have manual backups of past tests that cannot be deleted from the admin panel. Thank you.

photo
1

Hello Angel Martinez,

We're sorry to hear that, and we greatly value your feedback . Just wanted to clarify, manually generated backups follow the "Manual Backups TTL" in Settings >> General and will be deleted after the set number of days. By default it is set to "Don't Delete".

We understand that the API may not cover all the possibilities when identifying snapshots to delete. So, if there are any additional options that you would like to see included in the API's parameters, please let us know!

Best Regards,

The JetApps Team

photo
2

Yes, we know about that option, but it also deletes manual backups of clients that should be kept and we cannot go around asking each client if they want to keep their manual backup to block it and prevent it from being deleted with the TTL. At this point, having manual backups of clients and our own, we do not have a function in the GUI where we can delete those backups we want without affecting the rest of the manual backups or we have not found how to do it.

Thank you.

photo
photo
3

@JetApps Requests Admin

Thank you for your continued efforts in improving JetBackup and for providing insights into your considerations regarding the feature request for deleting backups and snapshots manually from the GUI. We understand the importance you place on ensuring backup integrity and preventing accidental or malicious deletions.

However, as paying customers, it’s crucial to remind ourselves that a productive and profitable relationship between software providers and their clients thrives when there’s active listening and responsiveness to customer feedback. We are your partners in this journey, and our needs help shape the evolution of your product. When we, as users, encounter challenges—such as the inability to delete specific backups that may, for example, be unnecessarily consuming expensive third-party storage, or a backup we don't actually need—it becomes a significant pain point that affects the way we use and recommend your product.

There's always a reason to say, "we cannot," but focusing on what can be done is what drives innovation and business growth. Instead of concentrating on the potential risks of implementing a feature, why not explore secure, creative solutions that can meet the needs of your users while maintaining the integrity of the platform?

For example, many platforms handle sensitive requests in ways that balance security and usability. WHMCS, for instance, requires an administrator password to confirm sensitive actions. cPanel, another industry leader (which enables 2FA login already), asks administrators to type the word “DELETE” to confirm critical deletions. These are straightforward yet effective methods to ensure deliberate and intentional actions are taken, without exposing users to unnecessary risk. Implementing a similar confirmation process in JetBackup—such as requiring an administrator password or a typed confirmation—could mitigate the risk of accidental deletions while offering the flexibility users need to manage their storage efficiently. If we accidentally delete a backup, that's our own fault, and at our peril. Even Backblaze B2 has the ability to manually delete files built into their client UI.

By fostering a culture of “what we can do,” you not only demonstrate responsiveness but also show that JetApps is dedicated to remaining competitive and evolving alongside the needs of your users. Businesses grow when they listen to their customers, and this feedback loop can be a powerful tool for JetApps to improve, innovate, and continue to lead in the backup solutions space.

As a customer, I have personally run into this issue of being unable to delete specific backups manually. Given that many of us also pay for storage at third-party sites, having the flexibility to manually remove unnecessary or outdated backups would allow us to manage our storage costs more effectively, which is a crucial factor in our operations.

We appreciate the strides JetApps has made thus far, but in the interest of mutual success, we encourage you to reconsider implementing this feature, whether through the GUI or another secure and user-friendly method (the API is somewhat confusing). We believe that listening to and addressing the needs of your customers will ensure long-term success for both JetApps and the businesses that depend on it.

Thank you for your time and for considering this feedback.

photo
1

Hello RW,

We greatly appreciate your support for JetBackup and sharing your feedback regarding this feature request. As mentioned in our previous posts, our top priority is to ensure the safety and integrity of the user's backups. Implementing this feature could open new vulnerabilities and allow bad actors to lock users out of their backups.


We understand that using the API can be confusing, but we assure you that our internal team will continue improving our documentation to provide clearer guidance.

Best Regards,

The JetApps Team

photo
photo
4

What he said ^^^

photo
5

Hi Everyone,

Jumping into the conversation to suggest an idea...

While we aim to allow this feature directly from the GUI, there are still concerns around security and preventing human errors.

What if we introduced a 'control file'? For example, if the root user creates a file (e.g., touch /usr/local/jetapps/allow_snapshots_removal) with the correct permissions, the GUI could then enable snapshot deletion.

This approach ensures the feature isn’t enabled by default. For scheduled or periodic deletion, the root user could create the control file, select the snapshots for deletion, and then remove the file afterward.

Thoughts?

photo
2

I think this is a great solution to a difficult problem. nice!

photo
1

Nice thinking! This sounds like a reasonable solution, and one that could work. Maybe even have the code to set a timer, that the file is automatically removed after "x" time period (to safeguard in case the admin does not delete the file).

photo
1

And as a side suggestion, if the control file is in place, there needs to be a nice red notice warning the administrator that the file exists to remind the admin to remove the file when done. Much in the same way that Wordpress does this for the debug.log file if it is enabled.

photo
photo
1

Hi Everyone,

I’ve created an internal GIT issue, BASE-2072, to document the findings from this feature request. Once it’s assigned a milestone, I’ll be able to provide an estimated ETA. This should be a straightforward implementation, so I don’t anticipate any issues.

photo
1

I'm so happy we have a solution. Deleting them from the command line is just so 2000's...LOL

photo
1

really hope that CLI comment is a joke, i pitty the ones who can't even control their own servers anymore. that said, i am very much with jetbackup on their security standpoint, but are happy they found a workaround for you guys. I prefer the API and CLI :-)

photo
3

Just because I PREFER doing things through a GUI doesn't mean I can't control my server through the command line.

photo
photo
3

Hi Everyone,

Following up on this to update that whis has been implemented in the latest dev build v5.3.15.10
Added some screenshots of how it looks when enabled, also an error message if you try to delete and the option is disabled

46d3c7bef87655e8e3261d2674fbe0bf249fcce715b13e3b1033ed22e6f4ff2c57685e52e5b3368b423ff04030916a0b

photo
2

This is very cool HOWEVER, will there be an accompanying error message warning the admin that the --enable-delete-snapshot is still enabled and it should be disabled if not being used?

photo
1

Hello BlueSteam,

Your feedback is greatly appreciated! There are a couple ways we can inform the Admin that the delete snapshot API is enabled (i.e. Banner that can be disabled, Alert after X hours). We're interested to hear what you had in mind for warning the Admin about the delete snapshot API so that we can find the best way to implement this feature.

Thank you,

The JetApps Team

photo
2

Hello :-)

Well it should be pretty simple. Just a banner on each page when navigating through the jetapps products with a notice saying something along the lines of:


"WARNING! --enable-delete-snapshot is currently enabled. This poses a risk to your backup environment as bad actors could potentially delete past backups with this feature. If you are not currently making use of this feature, we strongly recommend that you disable this setting. Read our knowledgebase for more info on how to do this [link here]"

photo
1

6de86e40758eb81682539d7a373d0e0e

photo
Leave a Comment
 
Attach a file