Backup and Restore

How to create and restore a backup

With your Omni installation, a cron job was created automatically to create a daily backup. But what if you need to restore an app, or need to copy Omni to a new server? This tutorial will explain how!

About Backups

We realize that things can go wrong. Or perhaps you need to migrate Omni to a new server. In either case, a backup would really come in handy! Luckily, Omni makes it very easy to backup and restore.

Automatic backup schedule

To get the easiest part out of the way: when you install Omni, it creates an automatic backup cron that will run every morning at 4:10. It goes beyond the scope of this tutorial to teach the ins and outs of cronjobs, but if you wish to change the schedule, you can do so by typing crontab -e then save your new schedule with Ctrl-X.

Alternatively, you can select option 3 (setups menu), 3 (rerun scheduled task setup) in the Omni menu for several additional options.

Creating a manual backup

If you want to create a manual backup, type backup or select "backup" from the Omni utilities menu.

Your backups are located in the folder /Backups on your cloud service.

Restoring a backup

So, now that you have a backup, what can you do with it? Well, restore it of course, in case something goes wrong with your entire server, or if you want to wind back on a single container.

As with most Omni features you can either type restore or open the menu and select Restore from the Utility menu.

If Omni finds one or more backups, pick the server you wish to restore from.

Restoring the home directory

Next, Omni will ask if you want to restore your entire home directory. This includes the original configuration files for Omni itself: settings, custom container (yaml) files, plugins, etc.

You will have to decide whether you want to to restore your home directory to the temporary folder and then move the necessary files/folders to your home directory manually (safest). This is the default option.

You can also choose to restore it to the original location (which would be /home/youruser). This is obviously the easiest method, but proceed with caution - it will overwrite all existing files/folders, plus it will restore hidden system files as well. If your new server is significantly different from your old one - hardware wise - you could run into trouble easily.

Restoring container(s)

You'll be presented with a choice which containers to restore, followed by which differential backup you would like to restore. For the most up to date version, select all differential backups.

Then the most difficult part of the entire installation has arrived... waiting for the restore process to finish. Especially Plex can take a long, long time - be patient, it'll finish eventually (you may think it's stuck on 0%... well, it's not)!

Migrating to a new server

If you want to migrate to a new server, we'd recommend the following steps.

On your current server:

  1. Create a full backup using the methods outlined above.

  2. Copy the content of ~/.config/rclone/rclone.conf manually to a text file outside your server.

Then, on your new server:

  1. Install Debian or the distro of your choice.

  2. Install OmniStream (make sure you pick the option to restore from backup).

  3. Copy the content of your Rclone config file instead of creating a new configuration.

  4. Restore the backup from the menu

  5. Bring Omni up.

That way your server will have made a seamless transition to a setup that is identical to the one you just replaced - it will look like you've never been away at all!

Any questions?

Feel free to open a support request on GitHub!