Data Safety Practices using KopiaUI on Windows with S3


So far I’m running KopiaUI on a couple Windows workstations, my end users do not necessarily know or understand how the backups are supposed to work, so I’m trying to ensure everything functions in the background.

I am keeping the defaults with KopiaUI’s maintenance, as well as using S3 as my repository.

  1. Is it safe for an end user to reboot the computer in the middle of a KopiaUI snapshot? Does this have a chance of corrupting data that will not be revealed until snapshot verify or snapshot fix operations? Or will Kopia resume normally when it relaunches?
  2. Is it safe to also interrupt snapshot fix operations, even with the --commit flag?
  3. I hear that running snapshot verify --verify-files-percent=x is suggested to run regularly, is this safe to run at the same time as KopiaUI snapshots? I was planning on adding this in Task Scheduler, separate from UI operations.
  4. To allow operations to be more unattended and hands free, is it safe to run snapshot fix invalid-files --verify-files-percent=x --commit instead verify? Or does this require closer admin attention when running? This would also run concurrently with and unaware of other KopiaUI operations on the same repo.

If it is not safe to do these things, I am curious how other admins deal with this.

After some brainstorming and reading,

I believe it is best to let KopiaUI run unattended on end user workstations, while a designated server/virtual machine in a controlled environment regularly runs snapshot verify, and runs snapshot fix if a snapshot is damaged. This removes quite a few variables when dealing with end users turning things off, whilst still being unattended.

What about interrupting a snapshot?

I tried to crash test it on my system.

On Windows 10, while the snapshots were running, I tried to break internet connectivity, request the app to close, reboot PC, run the Verify and run the Fix commands concurrently with a snapshot, start other Kopia tasks before and after snapshots started, etc. I don’t think I tried to sigKILL the app but I’m pretty sure I sent it sigterm s with ‘End Task’ in task manager.

I could not get the kopia snapshot verify --verify-files-percent=100 command to return any error whatsoever, and it seems remarkably stable when you try to break it. I could still access the data, even when dealing with over 100GB of backups, despite all those tests.

Now, when I run the Kopia snapshot fix command, it always finds some sort of issue and corrects it, the verify command never does, although this might be a bug, since it does not report data corruption, but just lists that the manifest was updated. Not sure what’s happening there.

If you want to use it on more workstations than a tiny handful I’d recommend continuing testing more, like ‘End Process’ in task manager, or hard-power cycling the device, and then running Snapshot verify --verify-files-percent=100 on the data, or checking it manually. I think it will have a good chance of passing these tests and being stable.

1 Like