mirror of
https://github.com/amadvance/snapraid.git
synced 2026-10-26 19:01:57 -04:00
143 lines
5.4 KiB
HTML
143 lines
5.4 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
|
<html lang="en">
|
|
<head>
|
|
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
|
|
<meta name="description" content="A backup program for disk arrays. It stores parity information of your data and it recovers from up to six disk failures">
|
|
<meta name="keywords" content="snapraid snapshot raid backup disk array redundancy parity">
|
|
<meta name="author" content="Andrea Mazzoleni">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
|
|
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
|
|
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
|
|
<link rel="manifest" href="/site.webmanifest">
|
|
<link rel="stylesheet" type="text/css" href="style.css">
|
|
<title>SnapRAID</title>
|
|
|
|
<!-- Google Analytics 4 -->
|
|
<!-- Google tag (gtag.js) -->
|
|
<script async src="https://www.googletagmanager.com/gtag/js?id=G-W1Z5FKHYQ4"></script>
|
|
<script>
|
|
window.dataLayer = window.dataLayer || [];
|
|
function gtag(){dataLayer.push(arguments);}
|
|
gtag('js', new Date());
|
|
|
|
gtag('config', 'G-W1Z5FKHYQ4');
|
|
</script>
|
|
|
|
<!-- Google Universal Analytics -->
|
|
<script type="text/javascript">
|
|
|
|
var _gaq = _gaq || [];
|
|
_gaq.push(['_setAccount', 'UA-21967501-1']);
|
|
_gaq.push(['_trackPageview']);
|
|
|
|
(function() {
|
|
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
|
|
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
|
|
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
|
|
})();
|
|
|
|
</script>
|
|
</head>
|
|
<body>
|
|
<div id="header">
|
|
<img src="index.jpg" width="1200" height="150" alt="Title">
|
|
</div>
|
|
<div id="menu">
|
|
<a href="/">About</a>
|
|
<a href="download">Download</a>
|
|
<a href="design">Design</a>
|
|
<a href="compare">Compare</a>
|
|
<a href="faq">FAQ</a>
|
|
<a href="manual">Manual</a>
|
|
<a href="support">Support</a>
|
|
<a href="authors">Authors</a>
|
|
</div>
|
|
<div id="main">
|
|
|
|
|
|
|
|
<p>
|
|
<span class="bold">SnapRAID</span> was created following the <a href="http://en.wikipedia.org/wiki/Unix_philosophy">Unix philosophy</a>:
|
|
<em>Write programs that do one thing and do it well</em>.
|
|
</p>
|
|
|
|
<p>
|
|
The first design principle was <span class="bold">reliability</span>.
|
|
The result is a simple architecture and an easy to understand implementation,
|
|
following the <a href="http://en.wikipedia.org/wiki/Edsger_W._Dijkstra">Dijkstra</a>
|
|
quote <i>Simplicity is prerequisite for reliability</i>.
|
|
</p>
|
|
|
|
<p>
|
|
Extensive and automated tests with the runtime checker <a href="http://valgrind.org/">Valgrind</a>
|
|
and with the <a href="https://github.com/google/sanitizers">Google Sanitizers</a>
|
|
are done to ensure the correctness of the final application.
|
|
The test has a <a href="cov/">code coverage of over 90%</a>, measured with <a href="http://ltp.sourceforge.net/coverage/lcov.php">lcov</a>.
|
|
</p>
|
|
|
|
<p>
|
|
SnapRAID is also verified with the
|
|
<a href="https://scan.coverity.com/projects/snapraid">Coverity Scan</a>
|
|
and <a href="http://clang-analyzer.llvm.org/">clang</a> static analyzers,
|
|
and with the <a href="http://lcamtuf.coredump.cx/afl/">American Fuzzy Lop</a> fuzzy tester.
|
|
</p>
|
|
|
|
<p>
|
|
The second design principle was <span class="bold">robustness</span>.
|
|
It supports any kind of problem. Even on kernel panics, power-downs
|
|
or any other hard failure at runtime, your redundancy data is in safe hands.
|
|
<br>
|
|
It uses all the possible storage techniques to ensure to always keep consistent
|
|
redundancy even after critical interruptions.
|
|
</p>
|
|
|
|
<p>
|
|
The third design principle was <span class="bold">efficiency</span>.
|
|
It's a native C application highly optimized using all the
|
|
possible OS services to ensure the maximum throughput of your disk array.
|
|
</p>
|
|
<p>
|
|
For integrity checks is used the highly efficient <a href="http://code.google.com/p/smhasher/">murmur3</a>
|
|
and <a href="http://burtleburtle.net/bob/hash/spooky.html">SpookyHash</a> hashes at 128 bits.
|
|
For the redundancy computations we use a
|
|
<a href="https://github.com/amadvance/snapraid/tree/master/raid">RAID library</a>
|
|
written from scratch that supports up to six levels of parity delivering top-notch performance.
|
|
The library design is originally based, and also binary compatible,
|
|
with the <a href="http://lxr.linux.no/linux+*/lib/raid6">Linux Kernel RAID</a>
|
|
library made by H. Peter Anvin.
|
|
As internal data base it's used the <a href="http://www.tommyds.it/">TommyDS</a> library of data structures.
|
|
</p>
|
|
|
|
<p>
|
|
</p>
|
|
|
|
</div>
|
|
|
|
<div id="footer">
|
|
|
|
<div class="column">
|
|
<span class="bold">Donate with</span>
|
|
<br>
|
|
<!--
|
|
<a href="http://sourceforge.net/p/snapraid/donate/"><img src="paypal.png" width="160" height="60" alt="PayPal"></a>
|
|
-->
|
|
<a href="https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=amadvance%40gmail%2ecom&lc=US&item_name=SnapRAID&no_note=0¤cy_code=USD&bn=PP%2dDonationsBF%3abtn_donateCC_LG%2egif%3aNonHostedGuest"><img src="paypal.png" width="160" height="60" alt="PayPal"></a>
|
|
<!--
|
|
<a href="https://coinkite.com/u/amadvance/"><img src="bitcoin.png" width="160" height="60" alt="BitCoin"></a>
|
|
-->
|
|
</div>
|
|
|
|
<div class="column">
|
|
<span class="bold">Find other resources at</span>
|
|
<br>
|
|
<a href="https://github.com/amadvance/snapraid/"><img src="github.png" width="160" height="60" alt="GitHub"></a>
|
|
<a href="http://sourceforge.net/projects/snapraid/"><img src="sourceforge.png" width="115" height="60" alt="SourceForge"></a>
|
|
</div>
|
|
|
|
</div>
|
|
</body>
|
|
</html>
|
|
|
|
|
|
|