ImgArchive supports cloud backup to protect data from cyberattacks, ransomware, and accidental deletion by being disconnected from the internet or network. see Cloud Backup This section details this support.

ImgArchive suports both on-line backup to local or networked storage and cloud backup. However the two storage mediums differ in two important ways:

  1. Local or networked storage is fast and reliable.

  2. Cloud storage is comparativly slower and dependent on the internet connection.

Backing up of images accurs in to cases:

  • When the images are imported into the archive.

  • When new versions of images are placed back in the archive (checking-in images).

As a consequence backing up to Local or networked storage is done as part of the import or check-in processes. however Cloud storage is out-loaded to a second background process. This second background process can run after the main process has completed backing up to the cloud in a timely maner possably, waiting for the internet to be connected.

Three Cloud backup devices are supported. Each of the devices can be used by any of the device types.

Implementing Cloud Backup

This section details how Cloud Backup is implemented.

The two processes used in cloud backup are:

  • iarbk - the cloud backgound process

  • iavault - the main client application

When iavault imports or checks in images, iavault will generate a list of task jobs the iarbk needs to perform in order to backup the newly iimported or checked in images. these task jobs are in the form of actions needed to be carried out on the remote cloud storage server. For example a typical list may contain actions to create folders and copy images to the remote cloud storage server.

In addition, iavault will create a virtual file system mirroring the file system to be generated on the remote cloud storage server. The purpose of which is to maintain the staus of the remote cloud file system.

One of the tasks of remote cloud backup process is to validate the images contained in the remote cloud storage are intact.

Backup Storage Devices

These are the devices used the push the images and metadata to be backed-up to the remote cloud storage. Device are tailored to different types of remote backup storage. For example: if the remote storage was controlled using a ftp server then a ftp client device to push images to the remote storage. ImgArchive to this end supports rclone. This is a third party application that enables interfaces to common remote storage backup systems such as Dropbox, Google drive, AWS etc. See RClonre https://rclone.org. Any number of these devices can be used. However one or two devices normally are used.

The Virtual file system

The Virtual file system enables all the information required about the real file system to be stored without the overhead of having the file contents. This means the information takes a fraction of the space than having a complete copy of the real file systems.

A Virtual file system is needed for each cloud backup device using the real file system would be potentially a large amount of storage space.

The Virtual file system consistes of a list encoded files repersenting a folder in the real file system. Each folder-file contains the details of files in the real file system.

These details consist of the following:

  • Path

  • CRC

  • Media Type

  • Sha256

  • Time backed up

  • Time last validated

  • file status

Using the imformation contained in the virtual file system access to the real file system.