Skip to content
This repository has been archived by the owner on Jan 12, 2023. It is now read-only.

Byron/godi

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SEAL, COPY & VERIFY - FAST

godi stands for "go data integrity" and is a commandline utility to generate seal files from a directory tree. This allows to re-check the tree for consistency, and thus verify the data is intact. This is especially useful if valuable, immutable data is retrieved from potentially unreliable media, and copied to another storage device.

As it is very common to verify copy operations, godi is able to copy files in the moment is generates the seal, to one or more destinations.

godi was inspired by the media hash list tool, whose seal file format it can read and write. It aims to be easier to use, and faster. On a quad core CPU, godi turned to be 6x the speed of mhl.

Why Godi

godi helps you to protect your data against unnoticed corruption, which represents an undesired change. Data files suitable for such protection is

  • valuable and reproducing it is either costly or prohibitive
    • Imagine you are on set of a block buster, and have to handle the camera data of a multi-million action shot that took weeks to prepare.
    • Your digital product is delivered to the client, and you want him to be sure that data was not corrupted in-flight. It's also an insurance for you as you can prove that the data was still intact on your end.
  • immutable and will not be changed directly
    • You took pictures of the Niagara Falls, and even though you want to do some post-processing, you will always keep the original. It should remain exactly as is, and will only serve as source for various image manipulations.

Therefore, if your data files change a lot, godi is not for you.

Usage Examples

Protect your valuable, immutable data against silent corruption and create a seal seal

Verify that data is still intact as compared against the seal verify

Seal valuable data and duplicate it to two backup devices sealed-copy

Seal valuable data and duplicate it to two backup devices [PARANOID VERSION] sealed-copy-verify

Operate godi and do all of the above with a graphical web-frontend web

Read more on the documentation page

Features

  • protect your data against unnoticed and silent corruption
  • atomically duplicate data to one or more locations while protecting it against corruption, without fearing to overwrite existing files.
  • use all [available device bandwidth and CPU cores](details.md#Performance Considerations) to finish your work much faster
  • runs on all major and minor platforms and architectures
  • provides a graphical web-frontend with multi-user support

Installation

  • Download and extract the multi-platform archive from the latest release
  • Typing godi/<platform>/godi in a terminal from the extraction point displays help on the respective platform.

If you are using godi more regularly, it is advised to put it into your shell's executable search path

Videos

Godi Performance Video Godi Usage Video

Development Status

Build Status GoDoc

Latest releases can be found here. Developer docs can be found at godoc.org

Infrastructure

Credits

godi uses the following libraries:

godi is inspired by

LICENSE

This open source software is licensed under GNU Lesser General Public License

About

Tool to verify data integrity with maximised performance

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages