Abstract:
Graphical user interface relationship graph for displaying relationships between image backup files in a backup job. In one example embodiment, one or more non-transitory computer-readable media store a program that causes a processor to generate and visually present, on an electronic display device associated with the processor, a graphical user interface (GUI) relationship graph for displaying relationships between image backup files in a backup job. The GUI relationship graph includes multiple image nodes each representing an image backup file of a source storage and a chain path including multiple links. Each of the links represents a parent-child relationship between one of the image nodes and another of the image nodes.
Abstract:
Cataloging file system-level changes to a source storage between image backups of the source storage. In one example embodiment, a method for cataloging file system-level changes to a source storage between image backups of the source storage may include obtaining first file system metadata (FSM) associated with a first image backup of the source storage that represents a first point in time, obtaining second FSM associated with a second image backup of the source storage that represents a second point in time, identifying a set of blocks that changed in the source storage between the first point in time and the second point in time, analyzing the set of blocks, the first FSM, and the second FSM, and cataloging files and/or directories that changed in the source storage between the first point in time and the second point in time based on the analyzing.
Abstract:
Live updating of a changed block tracking (CBT) driver. In one example embodiment, a method for live updating of a CBT driver may include loading a CBT driver into a running operating system and then performing various acts without rebooting the running operating system. These acts may include tracking, using the CBT driver, writes to blocks of a source storage between a first snapshot time and a second snapshot time, loading an updated CBT driver into the running operating system with the updated CBT driver having a different name than the CBT driver, handing over the tracking of writes to blocks of the source storage from the CBT driver to the updated CBT driver at a handover time, and tracking, using the updated CBT driver, writes to blocks of the source storage between the handover time and the second snapshot time.
Abstract:
Avoiding encryption in a deduplication vault. In one example embodiment, a method for avoiding encryption during a backup of a source storage into a deduplication storage may include analyzing an allocated plain text block stored in the source storage at the point in time to determine if the allocated plain text block is already duplicated in the deduplication storage, in response to the allocated plain text block already being duplicated in the deduplication storage, avoiding encryption of the allocated plain text block by skipping an encryption of the allocated plain text block and instead associating the location of the allocated plain text block in the source storage with the location of the duplicate block already duplicated in the deduplication storage.
Abstract:
Capturing post-snapshot quiescence writes in a linear image backup chain. In one example embodiment, a method for capturing post-snapshot quiescence writes in a linear image backup chain may include taking a first snapshot of a source storage at a first point in time using a Volume Shadow Copy Service (VSS), identifying a first set of block positions of blocks that are allocated in the source storage at the first point in time, identifying a second set of block positions of blocks that are written to the first snapshot during post-snapshot quiescence of the first snapshot by the VSS or by one or more VSS writers, resulting in a first quiesced snapshot, copying the blocks in the first set from the first snapshot to a full image backup, and copying the blocks in the second set from the first quiesced snapshot to a first incremental image backup.
Abstract:
Detecting modifications to a storage that occur in an alternate operating environment. In one example embodiment, a method for detecting modifications to a storage that occur in an alternate operating environment may include tracking, in a modify map, modifications to a storage that occur during operation of a primary operating environment, identifying a first most recent transaction identifier in a journal of a file system of the storage prior to closing of the storage by the primary operating environment, upon opening of the storage by the primary operating environment, identifying a second most recent transaction identifier in the journal, determining that the second most recent transaction identifier does not match the first most recent transaction identifier, concluding that the storage was modified in an alternate operating environment between the closing and the opening of the storage by the primary operating environment, and invalidating the modify map.
Abstract:
Virtualizing multiple networked machines using a predetermined network recovery policy. In one example embodiment, a method for virtualizing multiple networked machines using a predetermined network recovery policy may include identifying multiple image backups of the multiple networked machines, determining an order for booting the multiple networked machines as multiple networked virtual machines, determining network settings for the multiple networked machines when booted as the multiple networked virtual machines, storing the order and the network settings in the predetermined network recovery policy prior to booting the multiple networked machines as the multiple networked virtual machines, booting the multiple networked machines as the multiple networked virtual machines from the multiple image backups in the order stored in the predetermined network recovery policy and with the network settings stored in the predetermined network recovery policy subsequent to the storing and in response to receiving a command to implement the predetermined network recovery policy.
Abstract:
Client-side encryption in a deduplication backup system. In one example embodiment, a method includes a backup phase in which various steps are performed for each allocated plain text block stored in a source storage. One step includes hashing, using a first cryptographic hash function, the plain text block to generate a first hash. Another step includes hashing, using a second cryptographic hash function, the first hash to generate a second hash. Another step includes searching a key-value table of a deduplication storage to determine whether the second hash matches any key in the key-value table. Another step includes, upon determining that the second hash does not match any key in the key-value table, encrypting, using an encrypt/decrypt function, the plain text block using the first hash as an encryption password and inserting a key-value pair into the key-value table with the key being the second hash and the value being the encrypted block.
Abstract:
Head start population of an image backup. In one example embodiment, a method for head start population of an image backup may include tracking blocks that are modified in a source storage between a first point in time and a second point in time, head start copying a first portion of the modified blocks into the image backup prior to the second point in time, activating a snapshot on the source storage at the second point in time where the snapshot represents a state of the source storage at the second point in time, and copying, subsequent to the second point in time, from the snapshot and into the image backup, a second portion of the modified blocks that were not yet copied into the image backup by the second point in time.
Abstract:
Avoiding encryption in a deduplication vault. In one example embodiment, a method may include analyzing an allocated plain text block stored in the source storage to determine if the block is already stored in the deduplication storage, in response to the block not being stored, encrypting the allocated plain text block and analyzing the encrypted block to determine if the encrypted block is already stored in the deduplication storage, analyzing a second allocated plain text block stored in the source storage to determine if the block is already stored in the deduplication storage, in response to the block already being stored, avoiding encryption of the second allocated plain text block by not encrypting the second allocated plain text block and instead associating the location of the second allocated plain text block in the source storage with the location of the duplicate block already stored.