Auto update

This commit is contained in:
Andrea Mazzoleni 2026-03-30 10:01:17 +02:00
parent e7391dbbfe
commit f4679d3f6e
125 changed files with 17882 additions and 48238 deletions

View file

Before

Width:  |  Height:  |  Size: 136 KiB

After

Width:  |  Height:  |  Size: 136 KiB

Before After
Before After

View file

@ -1,109 +0,0 @@
<!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>
The author of <span class="bold">SnapRAID</span> is Andrea Mazzoleni.
</p>
<p>
I'm an Italian Software Engineer living in <a href="http://maps.google.com/maps?q=bergamo,+italy">Bergamo, Italy</a>.
My hobbies are road cycling,
<a href="http://www.mtbbergamo.it/">mountain bike</a>,
reading and
<a href="https://github.com/amadvance">programming</a>.
</p>
<p>
You can contact me by email using the address
<img align="bottom" src="email.png" alt="email">.
</p>
<p>
Please don't send support request at this address, but use the <a href="https://www.snapraid.it/support">Support</a>.
</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&currency_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>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 149 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 30 KiB

View file

@ -1,439 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<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">
<title>Compare SnapRAID</title>
<link rel="stylesheet" href="style.css">
<link rel="apple-touch-icon" sizes="180x180" href="/beta/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/beta/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/beta/favicon-16x16.png">
<link rel="manifest" href="/beta/site.webmanifest">
<script src="script.js"></script>
<!-- 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>
<header>
<div class="container nav-container">
<a href="index" class="logo">
<img src="android-chrome-192x192.png" width="32" height="32"/>
SnapRAID
</a>
<nav>
<input type="checkbox" id="menu-toggle">
<label for="menu-toggle" class="menu-icon"><svg viewBox="0 0 24 24" width="24" height="24" fill="currentColor"><path d="M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z"/></svg></label>
<ul>
<li><a href="index" >Home</a></li>
<li><a href="ui" >UI & Daemon</a></li>
<li><a href="howitworks" >How it Works</a></li>
<li><a href="design" >Design</a></li>
<li><a href="compare" class="active">Compare</a></li>
<li><a href="manual" >Manual</a></li>
<li><a href="faq" >FAQ</a></li>
<li><a href="support" >Support</a></li>
<li><a href="download" class="nav-cta">Download</a></li>
<li>
<button class="theme-toggle" aria-label="Toggle theme">
<svg class="sun-icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg>
<svg class="moon-icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg>
</button>
</li>
</ul>
</nav>
</div>
</header>
<div class="container" style="padding: 4rem 20px;">
<h1 style="text-align: center; margin-bottom: 2rem;">Comparison</h1>
<div style="max-width: 800px; margin: 0 auto 4rem auto; color: var(--text-secondary); line-height: 1.7;">
<p style="font-size: 1.1rem; margin-bottom: 1.5rem;">
<strong style="color: var(--text-primary);">SnapRAID</strong> is one of many <strong style="color: var(--text-primary);">RAID-like</strong> solutions available for disk arrays.
</p>
<p style="margin-bottom: 1rem;">Some well-known alternatives include:</p>
<ul style="margin-bottom: 2rem; list-style: none; padding-left: 0;">
<li style="margin-bottom: 1.25rem; padding-left: 1rem; border-left: 2px solid var(--border-color);">
<a href="http://www.lime-technology.com/" target="_blank" rel="noopener">unRAID</a>
- A commercial solution (only the RAID core is GPL2). It uses a modified Linux XFS filesystem with real-time redundancy. Integrity checksums are not natively supported.
</li>
<!--
<li style="margin-bottom: 1.25rem; padding-left: 1rem; border-left: 2px solid var(--border-color);">
<s>FlexRAID</s>
- <strong style="color: var(--danger); font-size: 0.75rem; border: 1px solid var(--danger); padding: 1px 4px; border-radius: 4px; vertical-align: middle;">DISCONTINUED</strong>. A commercial, proprietary C++/Java application for Windows, with limited Linux support. It offered both snapshot and real-time redundancy, including integrity checksums.
</li>
-->
<li style="margin-bottom: 1.25rem; padding-left: 1rem; border-left: 2px solid var(--border-color);">
<a href="http://en.wikipedia.org/wiki/ZFS" target="_blank" rel="noopener">ZFS</a>
- An open-source (GPL-incompatible) filesystem with real-time redundancy and integrity checksums.
</li>
<li style="margin-bottom: 1.25rem; padding-left: 1rem; border-left: 2px solid var(--border-color);">
<a href="http://en.wikipedia.org/wiki/btrfs" target="_blank" rel="noopener">Btrfs</a>
- An open-source (GPL2) Linux filesystem with real-time redundancy. Since Linux 3.9, it supports <a href="http://lwn.net/Articles/536038/" target="_blank" rel="noopener">RAID5/6 redundancy</a> and integrity checksums.
Issues have been identified, and the official <a href="https://btrfs.readthedocs.io/en/latest/btrfs-man5.html#raid56-status-and-recommended-practices" target="_blank" rel="noopener">wiki</a> as of 2026 warns:
<em style="display: block; margin-top: 0.5rem; color: var(--text-secondary); background: rgba(255,255,255,0.03); padding: 0.5rem; border-radius: 4px;">"There are some implementation and design deficiencies that make it unreliable for some corner cases and the feature should not be used in production, only for evaluation or testing."</em>
</li>
<li style="margin-bottom: 1.25rem; padding-left: 1rem; border-left: 2px solid var(--border-color);">
<a href="https://learn.microsoft.com/en-us/windows-server/storage/storage-spaces/overview" target="_blank" rel="noopener">Storage Spaces</a>
- Microsoft’s solution, integrated into Windows 8 and later. Proprietary, with real-time redundancy but no checksum support. It also has several <a href="https://helgeklein.com/blog/windows-8-storage-spaces-bugs-and-design-flaws/" target="_blank" rel="noopener">limitations</a>.
</li>
</ul>
</div>
<div style="margin-top: 4rem;">
<h2>Key Takeaways</h2>
<div class="grid grid-2-cols">
<div class="card">
<h3>Real-time vs Snapshot</h3>
<p>
The primary factor for categorizing storage solutions is when redundancy information is updated. This timing determines whether the system acts as a live mirror or a point-in-time recovery tool.
In <strong style="color: var(--text-primary);">real-time</strong> solutions, parity is updated immediately during every write operation without user action. While this ensures the array is constantly protected against hardware failure, it does not allow for the restoration of an earlier state, meaning accidental deletions are propagated instantly.
In <strong style="color: var(--text-primary);">snapshot</strong> solutions, parity is updated only upon an explicit request, similar to a backup. This creates a fixed point in time that allows to recover files that were accidentally deleted or modified since the last sync.
</p>
</div>
<div class="card">
<h3>Integrity & Bitrot</h3>
<p>
Silent data corruption, or bitrot, is a <a href="https://www.zdnet.com/article/data-corruption-is-worse-than-you-know/" target="_blank" rel="noopener">major threat</a> where storage devices return corrupted data without reporting hardware errors. Unlike traditional disk failures, this bit-level degradation remains invisible until the data is accessed or an array reconstruction is attempted.
A primary factor in categorizing storage solutions is their support for <strong style="color: var(--text-primary);">integrity checksums</strong> to detect and repair this corruption. Advanced systems use hashing to verify data blocks, allowing them to identify silent changes even if timestamps remain unaltered and use parity data to reconstruct the original, uncorrupted information.
</p>
</div>
</div>
</div>
<div class="compare-container" style="margin-top: 4rem;">
<h2>Features comparison</h2>
<table class="data-table compare-table">
<thead>
<tr>
<th style="width: 30%;">Feature</th>
<th class="snapraid-header snapraid-col">SnapRAID</th>
<th>Unraid</th>
<th>ZFS</th>
<th>Btrfs</th>
<th>Storage Spaces</th>
</tr>
</thead>
<tbody>
<!-- Redundancy Model -->
<tr>
<td class="feature-cell">
Redundancy Model
<div class="cell-subtext">Real-time computes parity in real-time like RAID; snapshot computes parity on request, like backups.</div>
</td>
<td class="snapraid-col">Snapshot</td>
<td>Real-time</td>
<td>Real-time<br>Snapshot</td>
<td>Real-time<br>Snapshot</td>
<td>Real-time</td>
</tr>
<!-- Integrity -->
<tr>
<td class="feature-cell">
Integrity
<div class="cell-subtext">Whether data is validated with a checksum, and the default checksum type.</div>
</td>
<td class="snapraid-col check">Yes<br>SpookyHash<br>128-bit</td>
<td class="cross">
No
<div class="info-wrapper">
<button class="info-btn" aria-label="More info">
<svg viewBox="0 0 24 24" width="16" height="16" fill="currentColor"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z"/></svg>
</button>
<div class="info-content" hidden>
unRAID can use integrity checksums via plugins like <a href="https://forums.lime-technology.com/topic/43290-dynamix-file-integrity-plugin/">Dynamix File Integrity</a> or <a href="https://forums.lime-technology.com/topic/35615-bunker-yet-another-utility-for-file-integrity-checks/">bunker</a>. However, these are independent of parity processing and not used to aid recovery. For example, when recovering a single failed disk with dual parity, checksums can identify additional silent errors to facilitate recovery. To achieve functionality similar to SnapRAID, you would need to use the Btrfs filesystem for all your data disks.
</div>
</div>
</td>
<td class="check">Yes<br>Fletcher4<br>256-bit</td>
<td class="check">Yes<br>CRC32C<br>32-bit</td>
<td class="cross">
No
<div class="info-wrapper">
<button class="info-btn" aria-label="More info">
<svg viewBox="0 0 24 24" width="16" height="16" fill="currentColor"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z"/></svg>
</button>
<div class="info-content" hidden>
Storage Spaces can be used with ReFS, which supports integrity checksums, but not in Parity mode: <a href="http://www.windowscentral.com/how-use-resilient-file-system-refs-windows-10"><i>"Although you may select Simple (no resiliency) or Parity, both options will fail the process."</i></a>
</div>
</div>
</td>
</tr>
<!-- Fix Silent Errors -->
<tr>
<td class="feature-cell">
Fix Silent Errors
<div class="cell-subtext">Whether silent errors are detected and fixed before propagating to parity.</div>
</td>
<td class="snapraid-col check">Yes</td>
<td class="cross">
No
<div class="info-wrapper">
<button class="info-btn" aria-label="More info">
<svg viewBox="0 0 24 24" width="16" height="16" fill="currentColor"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z"/></svg>
</button>
<div class="info-content" hidden>
unRAID lacks native checksums and ignores silent errors. Even worse, if a parity mismatch is detected due to a silent error in the data, the parity is automatically recomputed, making it impossible to recover the silent error, even manually. Integrity checksum plugins do not help in this case, as they are not integrated into the parity-checking process.
</div>
</div>
</td>
<td class="check">
Yes
<div class="info-wrapper">
<button class="info-btn" aria-label="More info">
<svg viewBox="0 0 24 24" width="16" height="16" fill="currentColor"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z"/></svg>
</button>
<div class="info-content" hidden>
ZFS provides bit-rot protection comparable to SnapRAID. One drawback of ZFS is that its default Fletcher checksum prioritizes speed over reliability. SnapRAID uses 128-bit SpookyHash.
</div>
</div>
</td>
<td class="check">
Yes
<div class="info-wrapper">
<button class="info-btn" aria-label="More info">
<svg viewBox="0 0 24 24" width="16" height="16" fill="currentColor"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z"/></svg>
</button>
<div class="info-content" hidden>
Btrfs provides bit-rot protection comparable to SnapRAID. Btrfs uses CRC32C by default. SnapRAID uses 128-bit SpookyHash.
</div>
</div>
</td>
<td class="cross">No</td>
</tr>
<!-- Number of Failures -->
<tr>
<td class="feature-cell">Number of Failures
<div class="cell-subtext">How many disk failures are supported? 1 for RAID5, 2 for RAID6.</div>
</td>
<td class="snapraid-col check">1-6</td>
<td class="check">1-2</td>
<td class="check">
1-3
<div class="info-wrapper">
<button class="info-btn" aria-label="More info">
<svg viewBox="0 0 24 24" width="16" height="16" fill="currentColor"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z"/></svg>
</button>
<div class="info-content" hidden>
ZFS employs a suboptimal RAID-Z3 algorithm requiring ~2x computation vs SnapRAID z-parity.
</div>
</div>
</td>
<td class="check">1-2</td>
<td class="check">1-2</td>
</tr>
<!-- More disk failures -->
<tr>
<td class="feature-cell">
More disk failures
<div class="cell-subtext">If more disks fail than the supported redundancy model, can data on non-failed disks be recovered?</div>
</td>
<td class="snapraid-col check">Yes</td>
<td class="check">Yes</td>
<td class="cross">No</td>
<td class="cross">No</td>
<td class="cross">No</td>
</tr>
<!-- Power/Noise -->
<tr>
<td class="feature-cell">
Power/Noise
<div class="cell-subtext">How many disks spin when reading a single file?</div>
</td>
<td class="snapraid-col check">One</td>
<td class="check">One</td>
<td class="cross">All</td>
<td class="cross">All</td>
<td class="cross">All</td>
</tr>
<!-- Filled disks -->
<tr>
<td class="feature-cell">Filled Disks
<div class="cell-subtext">Can you start with disks that already contain data?</div>
</td>
<td class="snapraid-col check">Yes</td>
<td class="check">Yes</td>
<td class="cross">No</td>
<td class="cross">No</td>
<td class="cross">No</td>
</tr>
<!-- Add filled disks -->
<tr>
<td class="feature-cell">Add Filled Disks
<div class="cell-subtext">Can data disks that already contain data be added later?</div>
</td>
<td class="snapraid-col check">Yes</td>
<td class="cross">
No
<div class="info-wrapper">
<button class="info-btn" aria-label="More info">
<svg viewBox="0 0 24 24" width="16" height="16" fill="currentColor"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z"/></svg>
</button>
<div class="info-content" hidden>
unRAID 7.2 claims it can add data disks to an existing array, but it effectively rebuilds parity from scratch. During this process, disks already in the array <a href="https://youtu.be/frtauLMO3-c?t=803">are not protected</a>. This puts stress on all drives with no safety net. If any disk is near failure, there’s a high risk it could fail during this operation. With unRAID, the only safe way to add a new data disk to an existing array is to pre-clear it first.
</div>
</div>
</td>
<td class="cross">No</td>
<td class="cross">No</td>
<td class="cross">No</td>
</tr>
<!-- OS -->
<tr>
<td class="feature-cell">Operating System
<div class="cell-subtext">Which operating systems are supported?</div>
</td>
<td class="snapraid-col">Linux, Win, macOS, BSD</td>
<td>Linux</td>
<td>
Linux, BSD, macOS
<div class="info-wrapper">
<button class="info-btn" aria-label="More info">
<svg viewBox="0 0 24 24" width="16" height="16" fill="currentColor"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z"/></svg>
</button>
<div class="info-content" hidden>
ZFS is available on Linux at the kernel level via <a href="http://zfsonlinux.org/">ZFS on Linux</a>.
</div>
</div>
</td>
<td>Linux</td>
<td>Windows</td>
</tr>
<!-- Age -->
<tr>
<td class="feature-cell">Stable Since
<div class="cell-subtext">Year of the first official release supporting at least RAID5 redundancy.</div>
</td>
<td class="snapraid-col">2011</td>
<td>2005</td>
<td>2005</td>
<td class="partial">
Unstable
<div class="info-wrapper">
<button class="info-btn" aria-label="More info">
<svg viewBox="0 0 24 24" width="16" height="16" fill="currentColor"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z"/></svg>
</button>
<div class="info-content" hidden>
Btrfs has supported RAID5 since 2013, but serious issues in RAID5/6 support were <a href="https://www.phoronix.com/scan.php?page=news_item&px=Btrfs-RAID-56-Is-Bad">identified</a>. As of 2026, these remain unresolved. The official <a href="https://btrfs.readthedocs.io/en/latest/btrfs-man5.html#raid56-status-and-recommended-practices" target="_blank" rel="noopener">wiki</a> states that RAID5/6 support should not be used in production.
</div>
</div>
</td>
<td>2012</td>
</tr>
<!-- Price -->
<tr>
<td class="feature-cell">License / Price
<div class="cell-subtext">Software license and cost.</div>
</td>
<td class="snapraid-col check">GPL3 / Free</td>
<td class="partial">Proprietary / Subscription</td>
<td class="check">CDDL / Free</td>
<td class="check">GPL2 / Free</td>
<td class="partial">Proprietary / Windows</td>
</tr>
<!-- Interface -->
<tr>
<td class="feature-cell">Interface
<div class="cell-subtext">Which interface is provided? GUI or command line?</div>
</td>
<td class="snapraid-col">CLI / GUI / API</td>
<td>GUI / CLI / API</td>
<td>
CLI / GUI
<div class="info-wrapper">
<button class="info-btn" aria-label="More info">
<svg viewBox="0 0 24 24" width="16" height="16" fill="currentColor"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z"/></svg>
</button>
<div class="info-content" hidden>
ZFS supports external GUIs, such as Napp-it, and plugins for TrueNAS/FreeNAS and XigmaNAS.
</div>
</div>
</td>
<td>
CLI / GUI
<div class="info-wrapper">
<button class="info-btn" aria-label="More info">
<svg viewBox="0 0 24 24" width="16" height="16" fill="currentColor"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z"/></svg>
</button>
<div class="info-content" hidden>
Btrfs supports external GUIs, such as Rockstor.
</div>
</div>
</td>
<td>GUI</td>
</tr>
</tbody>
</table>
</div>
</div>
<!-- Global Popover Element -->
<div id="global-popover" class="global-popover">
<div class="popover-arrow"></div>
<div id="global-popover-content"></div>
</div>
<div id="popover-overlay" class="popover-overlay"></div>
<!-- Footer -->
<footer>
<div class="container footer-content">
<div class="footer-col">
<div class="logo">
<img src="android-chrome-192x192.png" width="32" height="32"/>
SnapRAID
</div>
<p>Copyright &copy; 2026 Andrea Mazzoleni</p>
<p class="license">Distributed under GPL v3 License</p>
</div>
<div class="footer-col">
</div>
</div>
</footer>
</body>
</html>

View file

@ -1,195 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<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">
<title>SnapRAID Design</title>
<link rel="stylesheet" href="style.css">
<link rel="apple-touch-icon" sizes="180x180" href="/beta/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/beta/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/beta/favicon-16x16.png">
<link rel="manifest" href="/beta/site.webmanifest">
<script src="script.js"></script>
<!-- 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>
<header>
<div class="container nav-container">
<a href="index" class="logo">
<img src="android-chrome-192x192.png" width="32" height="32"/>
SnapRAID
</a>
<nav>
<input type="checkbox" id="menu-toggle">
<label for="menu-toggle" class="menu-icon"><svg viewBox="0 0 24 24" width="24" height="24" fill="currentColor"><path d="M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z"/></svg></label>
<ul>
<li><a href="index" >Home</a></li>
<li><a href="ui" >UI & Daemon</a></li>
<li><a href="howitworks" >How it Works</a></li>
<li><a href="design" class="active">Design</a></li>
<li><a href="compare" >Compare</a></li>
<li><a href="manual" >Manual</a></li>
<li><a href="faq" >FAQ</a></li>
<li><a href="support" >Support</a></li>
<li><a href="download" class="nav-cta">Download</a></li>
<li>
<button class="theme-toggle" aria-label="Toggle theme">
<svg class="sun-icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg>
<svg class="moon-icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg>
</button>
</li>
</ul>
</nav>
</div>
</header>
<div class="container" style="padding: 4rem 20px;">
<div style="text-align: center; margin-bottom: 4rem;">
<h1 style="margin-bottom: 1rem;">Design Philosophy</h1>
<blockquote style="font-size: 1.5rem; color: var(--text-accent); font-style: italic; margin: 0; padding: 0; border: none; font-family: serif;">
Simplicity is prerequisite for reliability
</blockquote>
<cite style="display: block; margin-top: 1rem; font-size: 1rem; color: var(--text-secondary); font-style: normal;">
<a href="http://en.wikipedia.org/wiki/Edsger_W._Dijkstra" style="color: var(--text-secondary); text-decoration: underline;">Edsger W. Dijkstra</a>
</cite>
</div>
<!-- Unix Philosophy & Reliability -->
<div style="max-width: 800px; margin: 0 auto 4rem auto;">
<p style="font-size: 1.1rem; color: var(--text-secondary); margin-bottom: 1.5rem;">
<strong style="color: var(--text-primary);">SnapRAID</strong> 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>
</div>
<div class="grid grid-3-cols" style="margin-bottom: 4rem;">
<!-- Testing/Verification Card -->
<div class="card">
<h3>Reliability</h3>
<p>
The first design principle was <strong style="color: var(--text-primary);">reliability</strong>.
The result is a simple architecture and an easy to understand implementation.
</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="https://github.com/linux-test-project/lcov">lcov</a>.
</p>
<p>
SnapRAID is also verified with Coverity Scan for both the
<a href="https://scan.coverity.com/projects/snapraid">CLI</a> and the <a href="https://scan.coverity.com/projects/snapraid-daemon">Daemon</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>
</div>
<!-- Robustness Card -->
<div class="card">
<h3>Robustness</h3>
<p>
The second design principle was <strong style="color: var(--text-primary);">robustness</strong>.
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.
</p>
<p>
It uses all the possible storage techniques to ensure to always keep consistent
redundancy even after critical interruptions.
</p>
</div>
<!-- Efficiency Card -->
<div class="card">
<h3>Efficiency</h3>
<p>
The third design principle was <strong style="color: var(--text-primary);">efficiency</strong>.
It's a native C application highly optimized to ensure maximum throughput of your disk array.
</p>
<p>
Integrity checks use the highly efficient <a href="https://github.com/aappleby/smhasher">murmur3</a>
and <a href="https://burtleburtle.net/bob/hash/spooky.html">SpookyHash</a> hashes at 128 bits.
</p>
<p>
Redundancy computations use a custom <a href="https://github.com/amadvance/snapraid/tree/master/raid">RAID library</a>
(based on Linux Kernel RAID) supporting up to six parity levels.
Internal structures use <a href="https://www.tommyds.it/">TommyDS</a>.
</p>
</div>
</div>
<div class="grid" style="margin-bottom: 4rem;">
<!-- AI -->
<div class="card">
<h3>Use of Artificial Intelligence</h3>
<p>
This project <strong style="color: var(--text-primary);">is not "vibe-coded"</strong>.
Artificial intelligence is used strictly as a
precision tool and a pair programmer, never as a substitute for engineering judgment. All architecture
decisions, core logic, and safety guarantees remain under direct human control and review.
</p>
<p>
AI was used selectively to accelerate front-end scaffolding, component layout, and alignment with modern UI
standards. All functional behavior, state management, API integration, and system logic were implemented and
<strong style="color: var(--text-primary);">manually validated</strong>.
</p>
<p>
Development follows a <strong style="color: var(--text-primary);">human-led</strong>, AI-assisted workflow. The developer defines the architecture and writes
the core implementations. AI contributes by exploring design alternatives, surfacing edge cases, suggesting
optimizations, and helping refine documentation. Any generated output is reviewed, revised where necessary,
and hardened before integration.
</p>
<p>
This approach improves development efficiency while preserving strict <strong style="color: var(--text-primary);">engineering oversight</strong> and reliability.
</p>
</div>
</div>
</div>
<!-- Footer -->
<footer>
<div class="container footer-content">
<div class="footer-col">
<div class="logo">
<img src="android-chrome-192x192.png" width="32" height="32"/>
SnapRAID
</div>
<p>Copyright &copy; 2026 Andrea Mazzoleni</p>
<p class="license">Distributed under GPL v3 License</p>
</div>
<div class="footer-col">
</div>
</div>
</footer>
</body>
</html>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 100 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 106 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 62 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 84 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 89 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 64 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 65 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 103 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 101 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 112 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 108 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 70 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 72 KiB

View file

@ -1,266 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<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">
<title>Download SnapRAID</title>
<link rel="stylesheet" href="style.css">
<link rel="apple-touch-icon" sizes="180x180" href="/beta/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/beta/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/beta/favicon-16x16.png">
<link rel="manifest" href="/beta/site.webmanifest">
<script src="script.js"></script>
<!-- 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>
<header>
<div class="container nav-container">
<a href="index" class="logo">
<img src="android-chrome-192x192.png" width="32" height="32"/>
SnapRAID
</a>
<nav>
<input type="checkbox" id="menu-toggle">
<label for="menu-toggle" class="menu-icon"><svg viewBox="0 0 24 24" width="24" height="24" fill="currentColor"><path d="M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z"/></svg></label>
<ul>
<li><a href="index" >Home</a></li>
<li><a href="ui" >UI & Daemon</a></li>
<li><a href="howitworks" >How it Works</a></li>
<li><a href="design" >Design</a></li>
<li><a href="compare" >Compare</a></li>
<li><a href="manual" >Manual</a></li>
<li><a href="faq" >FAQ</a></li>
<li><a href="support" >Support</a></li>
<li><a href="download" class="nav-cta">Download</a></li>
<li>
<button class="theme-toggle" aria-label="Toggle theme">
<svg class="sun-icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg>
<svg class="moon-icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg>
</button>
</li>
</ul>
</nav>
</div>
</header>
<div class="container" style="padding: 4rem 20px;">
<h1 style="text-align: center;">Download SnapRAID</h1>
<div style="text-align: center; max-width: 700px; margin: 0 auto 3rem auto;">
<p style="margin-bottom: 1rem; font-size: 1.2rem;">
SnapRAID CLI <strong>v14.0rc3h</strong> (Released March 2026).
</p>
<p style="margin-bottom: 1rem; font-size: 1.2rem;">
SnapRAID Daemon <strong>v1.0beta3h</strong> (Released March 2026).
</p>
<p style="color: var(--text-secondary);">
<strong style="color: var(--text-primary);">SnapRAID</strong> is a <a href="http://en.wikipedia.org/wiki/Free_Software">Free Software</a>
application released with the <a href="http://www.gnu.org/licenses/quick-guide-gplv3.html">GPLv3 license</a>.
</p>
</div>
<div class="grid">
<!-- SnapRAID CLI -->
<div class="card">
<h2>SnapRAID CLI (Command Line Interface)</h2>
<p>
The classic command line tool.
See the <a href="https://github.com/amadvance/snapraid/blob/master/HISTORY">ChangeLog</a> for the detailed list of changes,
and <a href="https://github.com/amadvance/snapraid/blob/master/CHECKSUMS">CheckSums</a> for the SHA256 checksums.
</p>
<table class="data-table">
<thead>
<tr>
<th>Platform</th>
<th>Version</th>
<th>Description</th>
<th>Download</th>
</tr>
</thead>
<tbody>
<tr>
<td>Windows</td>
<td>14.0rc3h</td>
<td>Portable executable for Windows</td>
<td><a href="https://github.com/amadvance/snapraid/releases/download/v14.0rc3h/snapraid-14.0rc3h-windows-x64.zip">snapraid-14.0rc3h-windows-x64.zip</a></td>
</tr>
<tr>
<td>DEB</td>
<td>14.0rc3h</td>
<td>Package for Ubuntu/Debian</td>
<td><a href="https://github.com/amadvance/snapraid/releases/download/v14.0rc3h/snapraid_14.0rc3h-1_amd64.deb">snapraid_14.0rc3h-1_amd64.deb</a></td>
</tr>
<tr>
<td>RPM</td>
<td>14.0rc3h</td>
<td>Package for RedHat/Fedora</td>
<td><a href="https://github.com/amadvance/snapraid/releases/download/v14.0rc3h/snapraid-14.0rc3h-1.x86_64.rpm">snapraid-14.0rc3h-1.x86_64.rpm</a></td>
</tr>
<tr>
<td>PKG</td>
<td>14.0rc3h</td>
<td>Package for Arch</td>
<td><a href="https://github.com/amadvance/snapraid/releases/download/v14.0rc3h/snapraid-14.0rc3h-1-x86_64.pkg.tar.zst">snapraid-14.0rc3h-1-x86_64.pkg.tar.zst</a></td>
</tr>
<tr>
<td>TXZ</td>
<td>14.0rc3h</td>
<td>Package for Slackware</td>
<td><a href="https://github.com/amadvance/snapraid/releases/download/v14.0rc3h/snapraid-14.0rc3h-x86_64-1_am.txz">snapraid-14.0rc3h-x86_64-1_am.txz</a></td>
</tr>
<tr>
<td>Source Code</td>
<td>14.0rc3h</td>
<td>C source code compatible with all Linux distributions and macOS</td>
<td><a href="https://github.com/amadvance/snapraid/releases/download/v14.0rc3h/snapraid-14.0rc3h.tar.gz">snapraid-14.0rc3h.tar.gz</a></td>
</tr>
</tbody>
</table>
<p style="font-size: 0.85rem; color: var(--text-secondary);">
Old versions are available on <a href="https://github.com/amadvance/snapraid/releases">GitHub</a>.
</p>
</div>
<!-- Daemon -->
<div class="card">
<h2>SnapRAID Daemon (Automation, Web UI, REST API)</h2>
<div class="warning-card">
<svg viewBox="0 0 24 24" width="24" height="24" fill="currentColor" style="min-width: 24px;"><path d="M1 21h22L12 2 1 21zm12-3h-2v-2h2v2zm0-4h-2v-4h2v4z"/></svg>
<span><strong>Warning:</strong>The SnapRAID Daemon for Linux requires SnapRAID CLI 14.0+ to be already installed and configured. In contrast, the Windows installer contains both the SnapRAID CLI and the SnapRAID Daemon. On Windows, if you are already using SnapRAID, ensure you install the daemon in the same directory.</span>
</div>
<div class="warning-card">
<svg viewBox="0 0 24 24" width="24" height="24" fill="currentColor" style="min-width: 24px;"><path d="M1 21h22L12 2 1 21zm12-3h-2v-2h2v2zm0-4h-2v-4h2v4z"/></svg>
<span><strong>Warning:</strong>SnapRAID Daemon is currently available only for Linux and Windows. If you are a Mac developer interested in volunteering your expertise to bring the daemon to macOS as an open-source collaborator, we would love to hear from you!</span>
</div>
<p>
Includes background service and Web UI.
See the <a href="https://github.com/amadvance/snapraid-daemon/blob/master/HISTORY">ChangeLog</a> for the detailed list of changes,
and <a href="https://github.com/amadvance/snapraid-daemon/blob/master/CHECKSUMS">CheckSums</a> for the SHA256 checksums.
</p>
<table class="data-table">
<thead>
<tr>
<th>Platform</th>
<th>Version</th>
<th>Description</th>
<th>Download</th>
</tr>
</thead>
<tbody>
<tr>
<td>EXE</td>
<td>1.0beta3h</td>
<td>Windows Installer (If the SmartScreen "Blue Box" appears, select "More Info" and then "Run anyway")</td>
<td><a href="https://github.com/amadvance/snapraid-daemon/releases/download/v1.0beta3h/snapraid-daemon-1.0beta3h.exe">snapraid-daemon-1.0beta3h.exe</a></td>
</tr>
<tr>
<td>DEB</td>
<td>1.0beta3h</td>
<td>Package for Ubuntu/Debian</td>
<td><a href="https://github.com/amadvance/snapraid-daemon/releases/download/v1.0beta3h/snapraid-daemon_1.0beta3h-1_amd64.deb">snapraid-daemon_1.0beta3h-1_amd64.deb</a></td>
</tr>
<tr>
<td>RPM</td>
<td>1.0beta3h</td>
<td>Package for RedHat/Fedora</td>
<td><a href="https://github.com/amadvance/snapraid-daemon/releases/download/v1.0beta3h/snapraid-daemon-1.0beta3h-1.x86_64.rpm">snapraid-daemon-1.0beta3h-1.x86_64.rpm</a></td>
</tr>
<tr>
<td>PKG</td>
<td>1.0beta3h</td>
<td>Package for Arch</td>
<td><a href="https://github.com/amadvance/snapraid-daemon/releases/download/v1.0beta3h/snapraid-daemon-1.0beta3h-1-x86_64.pkg.tar.zst">snapraid-daemon-1.0beta3h-1-x86_64.pkg.tar.zst</a></td>
</tr>
<tr>
<td>TXZ</td>
<td>1.0beta3h</td>
<td>Package for Slackware</td>
<td><a href="https://github.com/amadvance/snapraid-daemon/releases/download/v1.0beta3h/snapraid-daemon-1.0beta3h-x86_64-1_am.txz">snapraid-daemon-1.0beta3h-x86_64-1_am.txz</a></td>
</tr>
<tr>
<td>Source Code</td>
<td>1.0beta3h</td>
<td>C source code compatible with all Linux distributions</td>
<td><a href="https://github.com/amadvance/snapraid-daemon/releases/download/v1.0beta3h/snapraid-daemon-1.0beta3h.tar.gz">snapraid-1.0beta3h.tar.gz</a></td>
</tr>
</tbody>
</table>
<p style="font-size: 0.85rem; color: var(--text-secondary);">
Old versions are available on <a href="https://github.com/amadvance/snapraid-daemon/releases">GitHub</a>.
</p>
</div>
<!-- Donation Card -->
<div class="card donation-card">
<h2 style="color: var(--text-warning);">
<svg viewBox="0 0 24 24" width="32" height="32" fill="currentColor"><path d="M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z"/></svg>
Support the Project
<svg viewBox="0 0 24 24" width="32" height="32" fill="currentColor"><path d="M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z"/></svg>
</h2>
<p>
If you want to show your appreciation,
you can <a href="https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=amadvance%40gmail%2ecom&lc=US&item_name=SnapRAID&no_note=0&currency_code=USD&bn=PP%2dDonationsBF%3abtn_donateCC_LG%2egif%3aNonHostedGuest"><strong>donate with Paypal</strong></a>,
or you can <a href="https://github.com/amadvance/snapraid/"><strong>star SnapRAID CLI <img src="https://img.shields.io/github/stars/amadvance/snapraid?style=flat"></strong></a> and <a href="https://github.com/amadvance/snapraid-daemon/"><strong>star SnapRAID Daemon <img src="https://img.shields.io/github/stars/amadvance/snapraid-daemon?style=flat"></strong></a> on GitHub.
</p>
<p>
Donations are used to support SnapRAID development, covering costs such as new hardware, internet services, and AI subscriptions
</p>
<a href="https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=amadvance%40gmail%2ecom&lc=US&item_name=SnapRAID&no_note=0&currency_code=USD&bn=PP%2dDonationsBF%3abtn_donateCC_LG%2egif%3aNonHostedGuest" class="btn btn-primary" style="background: var(--warning); color: black; box-shadow: none; margin-top: 1rem;">Donate via PayPal</a>
</div>
</div>
</div>
<!-- Footer -->
<footer>
<div class="container footer-content">
<div class="footer-col">
<div class="logo">
<img src="android-chrome-192x192.png" width="32" height="32"/>
SnapRAID
</div>
<p>Copyright &copy; 2026 Andrea Mazzoleni</p>
<p class="license">Distributed under GPL v3 License</p>
</div>
<div class="footer-col">
</div>
</div>
</footer>
</body>
</html>

File diff suppressed because it is too large Load diff

Binary file not shown.

Before

Width:  |  Height:  |  Size: 926 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

View file

@ -1,340 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<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">
<title>SnapRAID</title>
<link rel="stylesheet" href="style.css">
<link rel="apple-touch-icon" sizes="180x180" href="/beta/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/beta/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/beta/favicon-16x16.png">
<link rel="manifest" href="/beta/site.webmanifest">
<script src="script.js"></script>
<!-- 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>
<header>
<div class="container nav-container">
<a href="index" class="logo">
<img src="android-chrome-192x192.png" width="32" height="32"/>
SnapRAID
</a>
<nav>
<input type="checkbox" id="menu-toggle">
<label for="menu-toggle" class="menu-icon"><svg viewBox="0 0 24 24" width="24" height="24" fill="currentColor"><path d="M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z"/></svg></label>
<ul>
<li><a href="index" class="active">Home</a></li>
<li><a href="ui" >UI & Daemon</a></li>
<li><a href="howitworks" >How it Works</a></li>
<li><a href="design" >Design</a></li>
<li><a href="compare" >Compare</a></li>
<li><a href="manual" >Manual</a></li>
<li><a href="faq" >FAQ</a></li>
<li><a href="support" >Support</a></li>
<li><a href="download" class="nav-cta">Download</a></li>
<li>
<button class="theme-toggle" aria-label="Toggle theme">
<svg class="sun-icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg>
<svg class="moon-icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg>
</button>
</li>
</ul>
</nav>
</div>
</header>
<!-- Hero Section -->
<section class="hero-section">
<div class="container hero-content">
<h1>Intelligent Redundancy<br>for Your Disk Array</h1>
<p class="hero-subtext">
SnapRAID combines the safety of RAID with the convenience of backups.
Now with real-time health monitoring and automation via the new <strong>SnapRAID Daemon</strong>.
</p>
<div class="hero-actions">
<a href="download" class="btn btn-primary">
<svg viewBox="0 0 24 24" width="20" height="20" fill="currentColor"><path d="M19 9h-4V3H9v6H5l7 7 7-7zM5 18v2h14v-2H5z"/></svg>
Download
</a>
<a href="ui" class="btn btn-secondary">Explore the UI</a>
</div>
</div>
</section>
<!-- What is SnapRAID? Section -->
<section class="daemon-section">
<div class="container">
<div class="grid grid-2-cols daemon-layout">
<div class="daemon-text">
<h2>What is SnapRAID?</h2>
<p style="font-size: 1.1rem; color: var(--text-secondary);">
SnapRAID is a powerful backup and redundancy program designed for disk arrays. It stores parity information (a special type of mathematical backup) that allows you to fully recover your data even if you experience up to six simultaneous disk failures.
</p>
<p style="font-size: 1.1rem; color: var(--text-secondary);">
It is primarily intended for home media centers and large storage arrays containing files that don't change frequently (like movies, music, and photo archives). It offers the high-end protection of a professional server but with the simplicity and flexibility of a home computer.
</p>
</div>
<!-- Terminal Mockup -->
<div class="terminal-mockup">
<div class="terminal-header">
<div class="dot red"></div>
<div class="dot yellow"></div>
<div class="dot green"></div>
</div>
<div class="terminal-body" style="font-size: 0.95rem; line-height: 1.6;">
<div class="term-line">$ snapraid sync</div>
<div class="term-line">Loading state from /db/snapraid.content...</div>
<div class="term-line">Scanning...</div>
<div class="term-line">Initializing...</div>
<div class="term-line">Resizing...</div>
<div class="term-line">Syncing...</div>
</div>
</div>
</div>
</div>
</section>
<!-- Why Choose SnapRAID (New Section) -->
<section style="padding: 5rem 0; border-bottom: 1px solid var(--border-color); background: var(--bg-body);">
<div class="container">
<h2 class="section-title">Why Choose SnapRAID?</h2>
<p style="text-align: center; max-width: 800px; margin: 0 auto 4rem auto; font-size: 1.1rem; color: var(--text-secondary);">
SnapRAID provides a unique approach to data protection that prioritizes safety, flexibility, and energy efficiency.
It is designed to sit on top of your files as a safety net, ensuring your data is protected without requiring complex
changes to your hardware or operating system.
</p>
<div class="grid grid-2-cols" style="align-items: start;">
<!-- Column 1: Safety Net Philosophy -->
<div>
<h3 style="color: var(--text-accent); margin-bottom: 1.5rem;">The "Safety Net" Philosophy</h3>
<p>SnapRAID acts as a transparent layer of security that protects your data without ever
taking it hostage. It treats your array as a collection of individual assets, providing a
safety net that is both powerful and precise.</p>
<ul class="feature-list" style="margin-top: 2rem;">
<li style="display: flex; gap: 1rem; align-items: start; margin-bottom: 1.5rem;">
<div style="min-width: 24px; height: 24px; background: rgba(59, 130, 246, 0.1); border-radius: 50%; display: flex; align-items: center; justify-content: center;">
<svg style="width: 14px; height: 14px; fill: var(--primary);" viewBox="0 0 24 24"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"/></svg>
</div>
<div>
<strong style="color: var(--text-primary);">Disaster-Proof Recovery</strong>
<p style="margin: 0.25rem 0 0 0; font-size: 0.95rem;">The primary goal is total data reconstruction. Should a hard drive fail, SnapRAID uses its parity data to rebuild the entire contents of the lost disk onto a new one. Because it can handle up to six simultaneous failures, it provides a level of resilience that scales with your needs, ensuring that a hardware crash doesn't mean a data catastrophe.</p>
</div>
</li>
<li style="display: flex; gap: 1rem; align-items: start; margin-bottom: 1.5rem;">
<div style="min-width: 24px; height: 24px; background: rgba(59, 130, 246, 0.1); border-radius: 50%; display: flex; align-items: center; justify-content: center;">
<svg style="width: 14px; height: 14px; fill: var(--primary);" viewBox="0 0 24 24"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"/></svg>
</div>
<div>
<strong style="color: var(--text-primary);">Defense Against the Invisible</strong>
<p style="margin: 0.25rem 0 0 0; font-size: 0.95rem;">Physical disk failure isn't the only threat; "bit-rot" or silent errors can corrupt files without warning. SnapRAID proactively defends your archive by hashing every file. It doesn't just wait for a disk to die; it constantly verifies that your data is exactly as you left it, identifying and repairing invisible corruption before it can spread.</p>
</div>
</li>
</ul>
</div>
<!-- Column 2: Maximum Freedom -->
<div>
<h3 style="color: var(--text-accent); margin-bottom: 1.5rem;">Maximum Freedom, Minimum Risk</h3>
<p>SnapRAID is designed for the "real world" of home hardware. Most users don't buy ten identical 20TB drives at once.</p>
<ul class="feature-list" style="margin-top: 2rem;">
<li style="display: flex; gap: 1rem; align-items: start; margin-bottom: 1.5rem;">
<div style="min-width: 24px; height: 24px; background: rgba(59, 130, 246, 0.1); border-radius: 50%; display: flex; align-items: center; justify-content: center;">
<svg style="width: 14px; height: 14px; fill: var(--primary);" viewBox="0 0 24 24"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"/></svg>
</div>
<div>
<strong style="color: var(--text-primary);">Grow as you go</strong>
<p style="margin: 0.25rem 0 0 0; font-size: 0.95rem;">You can mix a 4TB drive with a 12TB drive and add a new one whenever you find a sale.</p>
</div>
</li>
<li style="display: flex; gap: 1rem; align-items: start; margin-bottom: 1.5rem;">
<div style="min-width: 24px; height: 24px; background: rgba(59, 130, 246, 0.1); border-radius: 50%; display: flex; align-items: center; justify-content: center;">
<svg style="width: 14px; height: 14px; fill: var(--primary);" viewBox="0 0 24 24"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"/></svg>
</div>
<div>
<strong style="color: var(--text-primary);">No Reformatting</strong>
<p style="margin: 0.25rem 0 0 0; font-size: 0.95rem;">You can start protecting disks that are already full of your movies and photos without moving them.</p>
</div>
</li>
<li style="display: flex; gap: 1rem; align-items: start;">
<div style="min-width: 24px; height: 24px; background: rgba(59, 130, 246, 0.1); border-radius: 50%; display: flex; align-items: center; justify-content: center;">
<svg style="width: 14px; height: 14px; fill: var(--primary);" viewBox="0 0 24 24"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"/></svg>
</div>
<div>
<strong style="color: var(--text-primary);">Zero Lock-in</strong>
<p style="margin: 0.25rem 0 0 0; font-size: 0.95rem;">Your data is never trapped. If you decide to stop using SnapRAID, your disks remain standard drives that can be read by any computer.</p>
</div>
</li>
</ul>
</div>
</div>
</div>
</section>
<!-- Daemon Spotlight Section -->
<section class="daemon-section">
<div class="container">
<div class="grid grid-2-cols daemon-layout">
<div class="daemon-text">
<h3 class="accent-text">INTRODUCING THE DAEMON</h3>
<h2>Real-Time Monitoring & Web API</h2>
<p>
The new SnapRAID Daemon bridges the gap between raw parity and proactive protection.
Move from a manual terminal workflow to an "always-on" background intelligence.
</p>
<ul class="feature-list">
<li>
<svg class="icon-check" viewBox="0 0 24 24"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"/></svg>
Background scrubbing and health checks
</li>
<li>
<svg class="icon-check" viewBox="0 0 24 24"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"/></svg>
Modern Web UI for dashboard and tasks
</li>
<li>
<svg class="icon-check" viewBox="0 0 24 24"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"/></svg>
REST API for 3rd party integration
</li>
</ul>
<a href="ui" class="link-arrow">See Daemon Features &rarr;</a>
</div>
<!-- Visual Representation of Daemon Dashboard -->
<div style="border-radius: var(--radius); overflow: hidden; border: 1px solid var(--border-color); box-shadow: 0 0 30px rgba(59, 130, 246, 0.5);">
<img src="desk-dashboard.png" alt="SnapRAID Daemon Dashboard" style="width: 100%; height: auto; display: block;">
</div>
</div>
</div>
</section>
<!-- Feature Spotlight Section -->
<section class="features-section">
<div class="container">
<h2 class="section-title">Feature Spotlight</h2>
<!-- Resilient Recovery -->
<div style="margin-bottom: 3rem;">
<h3 style="margin-bottom: 1.5rem; color: var(--text-accent); border-left: 3px solid var(--primary); padding-left: 1rem;">Resilient Recovery</h3>
<div class="grid grid-2-cols" style="margin-bottom: 2rem;">
<!-- Card 0: Surgical Recovery -->
<div class="card">
<h3>Full Recovery</h3>
<p class="card-subtitle">Total data reconstruction</p>
<p>If your hard disks die, SnapRAID can fully recover all the data from the failed drives, up to the number of parity disks you have assigned (protecting you from up to 6 simultaneous failures).</p>
</div>
<!-- Card 3: Silent Corruption Protection -->
<div class="card">
<h3>Silent Corruption Protection</h3>
<p class="card-subtitle">Total data integrity</p>
<p>All your data is hashed to ensure integrity and prevent "bit-rot." If a file suffers from silent corruption, SnapRAID detects it and repairs it using your parity information.</p>
</div>
</div>
<div class="grid grid-2-cols">
<!-- Card 1: Surgical Recovery -->
<div class="card">
<h3>Surgical Recovery</h3>
<p class="card-subtitle">Undelete and restore</p>
<p>If you accidentally delete files on a disk, recovery is possible. SnapRAID can reconstruct missing data and even undelete specific folders without affecting the rest of the array.</p>
</div>
<!-- Card 2: Fault Isolation -->
<div class="card">
<h3>Fault Isolation</h3>
<p class="card-subtitle">Confined data loss</p>
<p>When the number of failed disks exceeds the parity count, data loss is confined only to the affected disks. Data on all other healthy disks remains fully accessible and untouched.</p>
</div>
</div>
</div>
<!-- Hardware Freedom -->
<div style="margin-bottom: 3rem;">
<h3 style="margin-bottom: 1.5rem; color: var(--text-accent); border-left: 3px solid var(--primary); padding-left: 1rem;">Hardware Freedom</h3>
<div class="grid grid-2-cols">
<!-- Card 1: Maximum Flexibility -->
<div class="card">
<h3>Maximum Flexibility</h3>
<p class="card-subtitle">Mix, match, and grow</p>
<p>Disks can have different sizes and different brands. You can add new disks to the array at any time as your storage needs grow, without the need for complex migrations.</p>
</div>
<!-- Card 2: Eco-Friendly Efficiency -->
<div class="card">
<h3>Eco-Friendly Efficiency</h3>
<p class="card-subtitle">Power-saving by design</p>
<p>To access a file, only a single disk needs to spin. This reduces noise, saves power, and extends the lifespan of your hardware compared to traditional RAID systems that spin every disk for every read.</p>
</div>
</div>
</div>
<!-- Data Sovereignty -->
<div>
<h3 style="margin-bottom: 1.5rem; color: var(--text-accent); border-left: 3px solid var(--primary); padding-left: 1rem;">Data Sovereignty</h3>
<div class="grid grid-2-cols">
<!-- Card 1: Non-Locking Integration -->
<div class="card">
<h3>Non-Locking Integration</h3>
<p class="card-subtitle">Access your data, your way</p>
<p>You can utilize disks already filled with files without the need to reformat them. Access your files as usual, even without the program running. SnapRAID doesn't lock in your data; you can stop using it anytime without moving a single byte.</p>
</div>
<!-- Card 2: Open Source & Free -->
<div class="card" style="border-color: var(--text-accent);">
<h3>Open Source & Free</h3>
<p class="card-subtitle">Transparent, Community-Driven, and Cost-Free</p>
<p>SnapRAID is released under the GPLv3 license, ensuring the code remains open for inspection and improvement. There are no licensing fees, no subscriptions, and no hidden "Pro" tiers. You have full ownership of your data protection engine.</p>
</div>
</div>
</div>
</div>
</section>
<!-- Footer -->
<footer>
<div class="container footer-content">
<div class="footer-col">
<div class="logo">
<img src="android-chrome-192x192.png" width="32" height="32"/>
SnapRAID
</div>
<p>Copyright &copy; 2026 Andrea Mazzoleni</p>
<p class="license">Distributed under GPL v3 License</p>
</div>
<div class="footer-col">
</div>
</div>
</footer>
</body>
</html>

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

Binary file not shown.

Before

Width:  |  Height:  |  Size: 109 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 111 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 118 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 120 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 130 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 131 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 103 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 102 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 96 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 97 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 147 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 149 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 123 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 121 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 89 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 90 KiB

View file

@ -1 +0,0 @@
{"name":"SnapRAID","short_name":"SnapRAID","icons":[{"src":"/android-chrome-192x192.png","sizes":"192x192","type":"image/png"},{"src":"/android-chrome-512x512.png","sizes":"512x512","type":"image/png"}],"theme_color":"#f8fafc","background_color":"#020617","display":"standalone"}

File diff suppressed because it is too large Load diff

View file

@ -1,425 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<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">
<title>SnapRAID Support</title>
<link rel="stylesheet" href="style.css">
<link rel="apple-touch-icon" sizes="180x180" href="/beta/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/beta/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/beta/favicon-16x16.png">
<link rel="manifest" href="/beta/site.webmanifest">
<script src="script.js"></script>
<!-- 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>
<header>
<div class="container nav-container">
<a href="index" class="logo">
<img src="android-chrome-192x192.png" width="32" height="32"/>
SnapRAID
</a>
<nav>
<input type="checkbox" id="menu-toggle">
<label for="menu-toggle" class="menu-icon"><svg viewBox="0 0 24 24" width="24" height="24" fill="currentColor"><path d="M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z"/></svg></label>
<ul>
<li><a href="index" >Home</a></li>
<li><a href="ui" >UI & Daemon</a></li>
<li><a href="howitworks" >How it Works</a></li>
<li><a href="design" >Design</a></li>
<li><a href="compare" >Compare</a></li>
<li><a href="manual" >Manual</a></li>
<li><a href="faq" >FAQ</a></li>
<li><a href="support" class="active">Support</a></li>
<li><a href="download" class="nav-cta">Download</a></li>
<li>
<button class="theme-toggle" aria-label="Toggle theme">
<svg class="sun-icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg>
<svg class="moon-icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg>
</button>
</li>
</ul>
</nav>
</div>
</header>
<div class="container" style="padding: 4rem 20px;">
<h1 style="text-align: center; margin-bottom: 3rem;">Community Support</h1>
<div class="grid grid-2-cols" style="margin-bottom: 4rem;">
<div class="card support-card">
<svg class="support-icon" viewBox="0 0 24 24"><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"/></svg>
<div>
<h3>GitHub Issues</h3>
<p>Report bugs and request features for <a href="https://github.com/amadvance/snapraid/issues" style="text-decoration: underline;">SnapRAID CLI</a> and <a href="https://github.com/amadvance/snapraid-daemon/issues" style="text-decoration: underline;">SnapRAID Daemon</a>.</p>
</div>
</div>
<a href="https://www.reddit.com/r/Snapraid/" class="card support-card">
<svg class="support-icon" viewBox="0 0 24 24"><path d="M12 0A12 12 0 0 0 0 12a12 12 0 0 0 12 12 12 12 0 0 0 12-12A12 12 0 0 0 12 0zm5.01 4.744c.688 0 1.25.561 1.25 1.249a1.25 1.25 0 0 1-2.498.056l-2.597-.547-.8 3.747c1.824.07 3.48.632 4.674 1.488.308-.309.73-.491 1.207-.491.968 0 1.754.786 1.754 1.754 0 .716-.435 1.333-1.01 1.614a3.111 3.111 0 0 1 .042.52c0 2.694-3.13 4.87-7.004 4.87-3.874 0-7.004-2.176-7.004-4.87 0-.183.015-.366.043-.534A1.748 1.748 0 0 1 4.028 12c0-.968.786-1.754 1.754-1.754.463 0 .898.196 1.207.49 1.207-.883 2.878-1.43 4.744-1.487l.885-4.182a.342.342 0 0 1 .14-.197.35.35 0 0 1 .238-.042l2.906.617a1.214 1.214 0 0 1 1.108-.701zM9.25 12C8.561 12 8 12.562 8 13.25c0 .687.561 1.248 1.25 1.248.687 0 1.248-.561 1.248-1.249 0-.688-.561-1.249-1.249-1.249zm5.5 0c-.687 0-1.248.561-1.248 1.25 0 .687.561 1.248 1.249 1.248.688 0 1.249-.561 1.249-1.249 0-.687-.562-1.249-1.25-1.249zm-5.466 3.99a.327.327 0 0 0-.231.094.33.33 0 0 0 0 .463c.842.842 2.484.913 2.961.913.477 0 2.105-.056 2.961-.913a.361.361 0 0 0 .029-.463.33.33 0 0 0-.464 0c-.547.533-1.684.73-2.512.73-.828 0-1.979-.196-2.512-.73a.326.326 0 0 0-.232-.095z"/></svg>
<div>
<h3>Reddit r/Snapraid</h3>
<p>Active community for Q&A, tips, and experience sharing.</p>
</div>
</a>
<a href="https://sourceforge.net/p/snapraid/discussion/1677233/" class="card support-card">
<svg class="support-icon" viewBox="0 0 24 24"><path d="M21 11.5a8.38 8.38 0 0 1-.9 3.8 8.5 8.5 0 0 1-7.6 4.7 8.38 8.38 0 0 1-3.8-.9L3 21l1.9-5.7a8.38 8.38 0 0 1-.9-3.8 8.5 8.5 0 0 1 4.7-7.6 8.38 8.38 0 0 1 3.8-.9h.5a8.48 8.48 0 0 1 8 8v.5z"/></svg>
<div>
<h3>SourceForge Forum</h3>
<p>SourceForge historical Forum for bug reports and discussion.</p>
</div>
</a>
<a href="https://forum.openmediavault.org/wsc/index.php?search/&q=snapraid" class="card support-card">
<svg class="support-icon" viewBox="0 0 24 24"><path d="M3 13h2v-2H3v2zm0 4h2v-2H3v2zm0-8h2V7H3v2zm4 4h14v-2H7v2zm0 4h14v-2H7v2zM7 7v2h14V7H7z"/></svg>
<div>
<h3>OpenMediaVault</h3>
<p>Support for OMV users running the SnapRAID plugin.</p>
</div>
</a>
<a href="https://forums.unraid.net/topic/163648-plugin-snapraid-on-unraid/" class="card support-card">
<svg class="support-icon" viewBox="0 0 24 24"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 17h-2v-2h2v2zm2.07-7.75l-.9.92C13.45 12.9 13 13.5 13 15h-2v-.5c0-1.1.45-2.1 1.17-2.83l1.24-1.26c.37-.36.59-.86.59-1.41 0-1.1-.9-2-2-2s-2 .9-2 2H8c0-2.21 1.79-4 4-4s4 1.79 4 4c0 .88-.36 1.68-.93 2.25z"/></svg>
<div>
<h3>UNRAID Plugin</h3>
<p>Discussion for users running SnapRAID on Unraid.</p>
</div>
</a>
</div>
<div style="margin-top: 4rem;">
<h2>Community Guides & Tutorials</h2>
<table class="data-table">
<thead>
<tr>
<th>Platform</th>
<th>Title</th>
<th>Published</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>Linux</td>
<td><a href="https://zackreed.me/encrypted-snapraid/" target="_blank">Encrypted SnapRAID</a></td>
<td>May 11,<br/>2024</td>
<td>Tutorial for setting up encrypted SnapRAID storage with dm-crypt and LUKS.</td>
</tr>
<!-- Scripts removed as now the daemon takes this role
<tr>
<td>Linux</td>
<td><a href="https://zackreed.me/updated-snapraid-sync-script/" target="_blank">Script for Nightly SnapRAID Syncs and Scrubs</a></td>
<td>May 11,<br/>2024</td>
<td>SnapRAID sync script with improved error handling and email notifications for automated backup management.</td>
</tr>
<tr>
<td>Linux</td>
<td><a href="https://github.com/Chronial/snapraid-runner/" target="_blank">Snapraid Runner Script</a></td>
<td>26 Feb 2021</td>
<td>Script that runs snapraid and sends its output to the console, a log file and via email.</td>
</tr>
<tr>
<td>Linux</td>
<td><a href="https://github.com/auanasgheps/snapraid-aio-script" target="_blank">Snapraid AIO Script</a></td>
<td>May 21,<br/>2024</td>
<td>The definitive all-in-one SnapRAID script on Linux.</td>
</tr>
<tr>
<td>Linux</td>
<td><a href="https://zackreed.me/snapraid-split-parity-sync-script/" target="_blank">SnapRAID Split Parity Sync Script</a></td>
<td>Nov 17,<br/>2016</td>
<td>Script for dual parity syncing across multiple disks in SnapRAID setups.</td>
</tr>
-->
<tr>
<td>Linux</td>
<td><a href="https://thenomadcode.tech/mergerfs-snapraid-is-the-new-raid-5" target="_blank">(MergerFS + SnapRAID) is the new RAID 5</a></td>
<td>Feb 3,<br/>2023</td>
<td>Explains why MergerFS + SnapRAID offers RAID 5/6-like protection with more flexibility.</td>
</tr>
<tr>
<td>Linux</td>
<td><a href="https://perfectmediaserver.com/02-tech-stack/snapraid/" target="_blank">SnapRAID - Perfect Media Server</a></td>
<td>Dec 27,<br/>2023</td>
<td>Overview of SnapRAID for flexible, snapshot-based data backup and parity protection on a Perfect Media Server.</td>
</tr>
<tr>
<td>OpenMediaVault</td>
<td><a href="https://wiki.omv-extras.org/doku.php?id=omv7:omv7_plugins:snapraid" target="_blank">SnapRAID Plugin For OMV7</a></td>
<td>Jan 18,<br/>2025</td>
<td>Guide for installing and configuring the SnapRAID plugin on OpenMediaVault 7 for data protection and recovery.</td>
</tr>
<tr>
<td>OpenMediaVault</td>
<td><a href="https://www.gravee.dev/en/snapraid-upgrade-drive/" target="_blank">SnapRAID Upgrade Drive</a></td>
<td>Jul 18,<br/>2024</td>
<td>Step-by-step guide to upgrading drives in a SnapRAID array while maintaining data integrity.</td>
</tr>
<tr>
<td>MANS</td>
<td><a href="https://blog.muffn.io/posts/muffins-awesome-nas-stack/" target="_blank">A Hybrid NAS Approach with SnapRAID and MergerFS</a></td>
<td>Feb 7,<br/>2024</td>
<td>Guide to building a robust NAS stack with SnapRAID, MergerFS, and Docker for efficient storage and media management.</td>
</tr>
<tr>
<td>Windows</td>
<td><a href="https://github.com/Smurf-IV/Elucidate" target="_blank">Elucidate</a></td>
<td>Sep 9,<br/>2025</td>
<td>Elucidate is a Windows GUI front-end for the command-line SnapRAID application.</td>
</tr>
</tbody>
</table>
</div>
<!---
COMPARISON
<tr>
<td>Linux</td>
<td><a href="https://markhenrick.site/2020/11/04/unraid-snapraid.html" target="_blank">Unraid vs Snapraid</a></td>
<td>Nov 4,<br/>2020</td>
<td>Side-by-side comparison of Unraid and SnapRAID, including pros/cons and summaries.</td>
</tr>
OBSOLETE
<tr>
<td>Linux</td>
<td><a href="https://blog.karaolidis.com/ultimate-home-server-part-1/" target="_blank">Building the Ultimate Linux Home Server - Part 1: Intro, MergerFS & SnapRAID</a></td>
<td>Jul 24,<br/>2021</td>
<td>Introduces MergerFS for pooling drives and SnapRAID for redundancy in a home server build.</td>
</tr>
<tr>
<td>Linux</td>
<td><a href="https://joshmlwood.com/post/home-file-server-snapraid/" target="_blank">Home File Server - SnapRAID</a></td>
<td>Jan 6,<br/>2019</td>
<td>Personal guide to using SnapRAID for disk array backups and multi-drive failure recovery.</td>
</tr>
POCO INFORMATIVO
<tr>
<td><a href="https://noted.lol/an-intro-to-mergerfs-and-snapraid/" target="_blank">An Intro to MergerFS and SnapRAID</a></td>
<td>Sep 5,<br/>2023</td>
<td>Beginner-friendly overview of benefits for data protection in storage setups.</td>
</tr>
<tr>
<td>Linux</td>
<td><a href="https://noted.lol/mergerfs-and-snapraid-setup-1/" target="_blank">Setup and Install MergerFS and SnapRAID (Part 1)</a></td>
<td>Aug 9,<br/>2024</td>
<td>Part 1 of a guide focusing on installing and configuring MergerFS for pooling before SnapRAID protection.</td>
</tr>
https://noted.lol/mergerfs-and-snapraid-setup-part-2/
<tr>
<td><a href="https://mohammedalqadi.sa/snapraid/" target="_blank">SnapRAID</a></td>
<td>Mar 11,<br/>2025</td>
<td>Overview of SnapRAID's features for static datasets like media, with sample configuration examples.</td>
</tr>
RIMPIAZZATO DA perfectmediaserver.com
<tr>
<td><a href="https://www.linuxserver.io/blog/2019-07-16-perfect-media-server-2019" target="_blank">The Perfect Media Server - 2019 Edition</a></td>
<td>Jul 16,<br/>2019</td>
<td>Recommends MergerFS + SnapRAID combo for reliable media storage since 2016.</td>
</tr>
AUFS OBSOLETE
<tr>
<td><a href="https://wdullaer.com/blog/2016/03/19/create-a-nas-with-redundancy-using-snapraid/" target="_blank">Create a NAS with Redundancy Using Snapraid</a></td>
<td>Mar 19,<br/>2016</td>
<td>Details configuring AUFS for pooling and SnapRAID for redundancy and bitrot protection on Ubuntu.</td>
</tr>
2019 e AUFS OBSOLETE
<tr>
<td><a href="https://www.addictivetips.com/ubuntu-linux-tips/set-up-snapraid-on-ubuntu-server/" target="_blank">How to set up SnapRAID on Ubuntu server</a></td>
<td>Feb 26,<br/>2019</td>
<td>Comprehensive tutorial for installing and configuring SnapRAID on Ubuntu, including directory setup and conf file editing.</td>
</tr>
--->
<div style="margin-top: 4rem;">
<h2>Video Tutorials</h2>
<table class="data-table">
<thead>
<tr>
<th>Platform</th>
<th>Title</th>
<th>Published</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>Linux</td>
<td><a href="https://www.youtube.com/watch?v=QFGEKh1A90I" target="_blank">How to install and setup Snapraid</a></td>
<td>Jun 26,<br/>2023</td>
<td>Step-by-step guide to compiling, installing, and automating SnapRAID parity protection.</td>
</tr>
<tr>
<td>Linux</td>
<td><a href="https://www.youtube.com/watch?v=fmuiRLPcuJE" target="_blank">How to recover a failed drive using Snapraid</a></td>
<td>Jul 31,<br/>2023</td>
<td>Demonstrates recovering data from a failed drive in a MergerFS + SnapRAID setup.</td>
</tr>
<tr>
<td>Linux</td>
<td><a href="https://www.youtube.com/watch?v=n7piuhTXeG4" target="_blank">How to install and setup MergerFS</a></td>
<td>Jun 26,<br/>2023</td>
<td>How to install and setup MergerFS for SnapRAID.</td>
</tr>
<tr>
<td>Linux</td>
<td><a href="https://www.youtube.com/watch?v=tX5MA-c6Qq4" target="_blank">MergerFS + SnapRAID : Forget about RAID 5 in your Home Server !</a></td>
<td>Feb 21,<br/>2023</td>
<td>Explains setting up MergerFS and SnapRAID for home server safety equivalent to RAID 5, with Slack notifications.</td>
</tr>
<tr>
<td>Linux</td>
<td><a href="https://www.youtube.com/watch?v=fR0XhaWvR1E" target="_blank">DIY Unraid-like functionality</a></td>
<td>Jun 12,<br/>2025</td>
<td>Builds Unraid-style setup with SnapRAID overview, install, and use starting at 11:26.</td>
</tr>
<tr>
<td>Linux</td>
<td><a href="https://www.youtube.com/watch?v=Yt67zz9p0FU" target="_blank">How to build the Perfect Media Server | Part 1 - The Tech Stack</a></td>
<td>Apr 22,<br/>2025</td>
<td>Overview of building a media server stack, including SnapRAID integration at 19:28.</td>
</tr>
<tr>
<td>Linux</td>
<td><a href="https://www.youtube.com/watch?v=D2Klx-X7pFo" target="_blank">How to setup a Linux Fileserver with Snapraid and Mergerfs Re-Export</a></td>
<td>Apr 23,<br/>2018</td>
<td>Guides through setting up SnapRAID with MergerFS on Linux for a simple fileserver, including add/remove drives.</td>
</tr>
<tr>
<td>Linux (Italian)</td>
<td><a href="https://www.youtube.com/watch?v=5QSkDZi9OzY&" target="_blank">Il RAID è OBSOLETO: la migliore ALTERNATIVA in ambito domestico</a></td>
<td>Jun 18,<br/>2023</td>
<td>Review di SnapRAID da parte di Morro Linux</td>
</tr>
<tr>
<td>OpenMediaVault</td>
<td><a href="https://www.youtube.com/watch?v=_LLB6x5WOR4" target="_blank">Setting up SnapRAID + mergerfs on OpenMediaVault</a></td>
<td>Nov 19,<br/>2023</td>
<td>Tutorial for configuring SnapRAID and MergerFS on OpenMediaVault, including drive additions.</td>
</tr>
<tr>
<td>OpenMediaVault</td>
<td><a href="https://www.youtube.com/watch?v=9XvY6usHSIA" target="_blank">Setting up MergerFS SnapRaid and file server on OpenMediaVault</a></td>
<td>Sep 10,<br/>2023</td>
<td>Guides through creating a protected storage pool and file server with MergerFS and SnapRAID.</td>
</tr>
<tr>
<td>Windows</td>
<td><a href="https://www.youtube.com/watch?v=5IXMM4hfIek">Setting up SnapRAID for Windows (and DrivePool) PART 1</a></td>
<td>Apr 28,<br/>2023</td>
<td>A detailed guide on installing and configuring SnapRAID on Windows, including integration with DrivePool for disk pooling.</td>
</tr>
<tr>
<td>Windows</td>
<td><a href="https://www.youtube.com/watch?v=Mw_7x_MCwi0">SnapRAID for Windows (and DrivePool) Part 2 - Recovery</a></td>
<td>May 12,<br/>2023</td>
<td>The second part of the series, focusing on array modification, data recovery from deletions or corruption, and disk replacement.</td>
</tr>
<tr>
<td>Windows</td>
<td><a href="https://www.youtube.com/watch?v=kDCMpVgZb4g" target="_blank">How to setup Snapraid and DrivePool in Windows</a></td>
<td>Sep 29,<br/>2017</td>
<td>Shows how to set up SnapRAID and DrivePool to create a large volume with parity backup for files.</td>
</tr>
</tbody>
</table>
</div>
<!--
COMPARISON
<tr>
<td><a href="https://www.youtube.com/watch?v=NQJkTiLXfgs" target="_blank">Best RAID for mixed drive sizes. Unraid vs BTRFS vs...</a></td>
<td>Dec 7,<br/>2022</td>
<td>Compares SnapRAID + MergerFS with other RAID alternatives, including testing results.</td>
</tr>
UNION FS OBSOLETE
<tr>
<td><a href="https://www.youtube.com/watch?v=FYkdPyCt5FU" target="_blank">Snapraid and Unionfs: Advanced Array Options on Openmediavault</a></td>
<td>Mar 1,<br/>2019</td>
<td>Explains installing SnapRAID and UnionFS for array backup and efficient disk space use.</td>
</tr>
SPAGNOLO
<tr>
<td><a href="https://www.youtube.com/watch?v=0UI2qQC6CRs" target="_blank">OpenMediaVault SnapRAID Tutorial</a></td>
<td>Jan 2,<br/>2024</td>
<td>Step-by-step tutorial for installing and configuring SnapRAID on OpenMediaVault NAS.</td>
</tr>
-->
</div>
<!-- Footer -->
<footer>
<div class="container footer-content">
<div class="footer-col">
<div class="logo">
<img src="android-chrome-192x192.png" width="32" height="32"/>
SnapRAID
</div>
<p>Copyright &copy; 2026 Andrea Mazzoleni</p>
<p class="license">Distributed under GPL v3 License</p>
</div>
<div class="footer-col">
</div>
</div>
</footer>
</body>
</html>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.6 KiB

View file

@ -1,17 +1,17 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!DOCTYPE html>
<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>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<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">
<title>Compare SnapRAID</title>
<link rel="stylesheet" href="style.css">
<link rel="apple-touch-icon" sizes="180x180" href="/beta/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/beta/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/beta/favicon-16x16.png">
<link rel="manifest" href="/beta/site.webmanifest">
<script src="script.js"></script>
<!-- Google Analytics 4 -->
<!-- Google tag (gtag.js) -->
@ -36,235 +36,403 @@
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">
<header>
<div class="container nav-container">
<a href="index" class="logo">
<img src="android-chrome-192x192.png" width="32" height="32"/>
SnapRAID
</a>
<nav>
<input type="checkbox" id="menu-toggle">
<label for="menu-toggle" class="menu-icon"><svg viewBox="0 0 24 24" width="24" height="24" fill="currentColor"><path d="M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z"/></svg></label>
<ul>
<li><a href="index" >Home</a></li>
<li><a href="ui" >UI & Daemon</a></li>
<li><a href="howitworks" >How it Works</a></li>
<li><a href="design" >Design</a></li>
<li><a href="compare" class="active">Compare</a></li>
<li><a href="manual" >Manual</a></li>
<li><a href="faq" >FAQ</a></li>
<li><a href="support" >Support</a></li>
<li><a href="download" class="nav-cta">Download</a></li>
<li>
<button class="theme-toggle" aria-label="Toggle theme">
<svg class="sun-icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg>
<svg class="moon-icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg>
</button>
</li>
</ul>
</nav>
</div>
</header>
<p>
<span class="bold">SnapRAID</span> is one of many <span class="bold">RAID-like</span> solutions available for disk arrays.
</p>
<p>
Some well-known alternatives include:
</p>
<ul>
<li><a href="http://www.lime-technology.com/">unRAID</a>
- A commercial and open-source (GPL2) solution. It uses a modified Linux XFS filesystem with real-time redundancy. Integrity checksums are not natively supported.
</li>
<li><s>FlexRAID</s>
- <b>DISCONTINUED</b>. A commercial, proprietary C++/Java application for Windows, with limited Linux support. It offered both snapshot and real-time redundancy, including integrity checksums.
</li>
<li><a href="http://en.wikipedia.org/wiki/ZFS">ZFS</a>
- An open-source (GPL-incompatible) filesystem with real-time redundancy and integrity checksums.
</li>
<li><a href="http://en.wikipedia.org/wiki/btrfs">Btrfs</a>
- An open-source (GPL2) Linux filesystem with real-time redundancy. Since Linux 3.9, it supports <a href="http://lwn.net/Articles/536038/">RAID5/6 redundancy</a> and integrity checksums.
Issues have been identified, and the official <a href="https://btrfs.readthedocs.io/en/latest/btrfs-man5.html#raid56-status-and-recommended-practices">wiki</a> as of 2025 warns:
<i>"There are some implementation and design deficiencies that make it unreliable for some corner cases and the feature should not be used in production, only for evaluation or testing."</i>
</li>
<li><a href="https://learn.microsoft.com/en-us/windows-server/storage/storage-spaces/overview">Storage Spaces</a>
- Microsoft’s solution, integrated into Windows 8 and later. Proprietary, with real-time redundancy but no checksum support. It also has several <a href="http://helgeklein.com/blog/2012/03/windows-8-storage-spaces-bugs-and-design-flaws/">limitations</a>.
</li>
</ul>
<p>
The primary factor for categorizing these solutions is when redundancy information is updated.
In <span class="bold">real-time</span> solutions, parity data is updated in real-time
without explicit user action, similar to standard RAID.
In <span class="bold">snapshot</span> solutions, parity data is updated only upon explicit user request, similar to backups.
</p>
<p>
Other key factors include support for <span class="bold">integrity</span> checksums to detect <a href="https://www.zdnet.com/article/data-corruption-is-worse-than-you-know/">silent data corruption</a> and the ability to <span class="bold">fix it</span>, whether you can <span class="bold">use already filled disks</span>, whether you can <span class="bold">recover data from non-failed disks</span> when there are too many failures for full recovery, and whether <span class="bold">all disks spin when reading one file</span>.
</p>
<table class="compare">
<tr><th width="30%"></th><th><span class="bold">SnapRAID</span></th><th>unRAID</th><th>ZFS</th><th>Btrfs</th><th>Storage Spaces</th></tr>
<tr><td><span class="bold">Redundancy model</span><br>Real-time computes parity in real-time like RAID; snapshot computes parity on request, like backups.</td>
<td>Snapshot</td><td>Real-time</td><td>Real-time<br>Snapshot</td><td>Real-time<br>Snapshot</td><td>Real-time</td></tr>
<tr><td><span class="bold">Integrity</span><br>Whether data is validated with a checksum, and the default checksum type.</td>
<td>Yes<br>SpookyHash<br>128-bit</td><td>No <a href="#note8">[8]</a></td><td>Yes<br>Fletcher4<br>256-bit</td><td>Yes<br>CRC32C<br>32-bit</td><td>No <a href="#note9">[9]</a></td></tr>
<tr><td><span class="bold">Fix silent errors</span><br>Whether silent errors are detected and fixed before propagating to parity.</td>
<td>Yes</td><td>No <a href="#note1">[1]</a></td><td>Yes <a href="#note3">[3]</a></td><td>Yes <a href="#note3">[3]</a></td><td>No</td></tr>
<!---
Silent error discussion in UnRAID Forum:
unRAID vs ZFS
http://lime-technology.com/forum/index.php?topic=27488
In case of silent error in a data disk unRAID automatically
fixes the parity hiding the error forever.
http://lime-technology.com/forum/index.php?topic=29459
Corrective parity check after unclean shutdown
http://lime-technology.com/forum/index.php?topic=25416
Neil Brown statement about linux-raid NOT doing smart recovery
to recover silent errors
http://neil.brown.name/blog/20100211050355
Brahim statement about data-rot
http://forum.flexraid.com/index.php/topic,23.msg256.html#msg256
http://forum.flexraid.com/index.php/topic,1753.msg12512.html#msg12512
http://www.openegg.org/forums/posts/list/727.page
-->
<tr><td><span class="bold">Number of failures</span><br>How many disk failures are supported? 1 for RAID5, 2 for RAID6.</td>
<td>1, 2, 3, 4, 5, 6</td><td>1, 2</td><td>1, 2, 3</td><td>1, 2</td><td>1, 2</td></tr>
<!---
unRAID 6.2 adds Dual parityvs ZFS
New Storage Spaces adds Dual Parity if you have at least 7 disks
https://blogs.technet.microsoft.com/tip_of_the_day/2014/07/23/tip-of-the-day-dual-parity-storage-spaces/
-->
<tr><td><span class="bold">More disk failures</span><br>If more disks fail than the supported redundancy model, can data on non-failed disks be recovered?</td>
<td>Yes</td><td>Yes</td><td>No</td><td>No</td><td>No</td></tr>
<tr><td><span class="bold">Power/Noise</span><br>How many disks spin when reading a single file?</td>
<td>One</td><td>One</td><td>All</td><td>All</td><td>All</td></tr>
<tr><td><span class="bold">Filled disks</span><br>Can you start with disks that already contain data?</td>
<td>Yes</td><td>Yes</a></td><td>No</td><td>No</td><td>No</td></tr>
<tr><td><span class="bold">Add filled disks</span><br>Can data disks that already contain data be added later?</td>
<td>Yes</td><td>No <a href="#note4">[4]</td><td>No</a></td><td>No</td><td>No</td></tr>
<div class="container" style="padding: 4rem 20px;">
<h1 style="text-align: center; margin-bottom: 2rem;">Comparison</h1>
<div style="max-width: 800px; margin: 0 auto 4rem auto; color: var(--text-secondary); line-height: 1.7;">
<p style="font-size: 1.1rem; margin-bottom: 1.5rem;">
<strong style="color: var(--text-primary);">SnapRAID</strong> is one of many <strong style="color: var(--text-primary);">RAID-like</strong> solutions available for disk arrays.
</p>
<p style="margin-bottom: 1rem;">Some well-known alternatives include:</p>
<ul style="margin-bottom: 2rem; list-style: none; padding-left: 0;">
<li style="margin-bottom: 1.25rem; padding-left: 1rem; border-left: 2px solid var(--border-color);">
<a href="http://www.lime-technology.com/" target="_blank" rel="noopener">unRAID</a>
- A commercial solution (only the RAID core is GPL2). It uses a modified Linux XFS filesystem with real-time redundancy. Integrity checksums are not natively supported.
</li>
<!--
Until 2024 it was "ZFS does't allow to add new disks to a raidz pool"
http://serverfault.com/questions/190207/how-can-i-add-one-disk-to-an-existing-raidz-zpool
https://louwrentius.com/the-hidden-cost-of-using-zfs-for-your-home-nas.html
Implemented in OpenZFS Release 2.3.0 (2025)
<li style="margin-bottom: 1.25rem; padding-left: 1rem; border-left: 2px solid var(--border-color);">
<s>FlexRAID</s>
- <strong style="color: var(--danger); font-size: 0.75rem; border: 1px solid var(--danger); padding: 1px 4px; border-radius: 4px; vertical-align: middle;">DISCONTINUED</strong>. A commercial, proprietary C++/Java application for Windows, with limited Linux support. It offered both snapshot and real-time redundancy, including integrity checksums.
</li>
-->
<li style="margin-bottom: 1.25rem; padding-left: 1rem; border-left: 2px solid var(--border-color);">
<a href="http://en.wikipedia.org/wiki/ZFS" target="_blank" rel="noopener">ZFS</a>
- An open-source (GPL-incompatible) filesystem with real-time redundancy and integrity checksums.
</li>
<li style="margin-bottom: 1.25rem; padding-left: 1rem; border-left: 2px solid var(--border-color);">
<a href="http://en.wikipedia.org/wiki/btrfs" target="_blank" rel="noopener">Btrfs</a>
- An open-source (GPL2) Linux filesystem with real-time redundancy. Since Linux 3.9, it supports <a href="http://lwn.net/Articles/536038/" target="_blank" rel="noopener">RAID5/6 redundancy</a> and integrity checksums.
Issues have been identified, and the official <a href="https://btrfs.readthedocs.io/en/latest/btrfs-man5.html#raid56-status-and-recommended-practices" target="_blank" rel="noopener">wiki</a> as of 2026 warns:
<em style="display: block; margin-top: 0.5rem; color: var(--text-secondary); background: rgba(255,255,255,0.03); padding: 0.5rem; border-radius: 4px;">"There are some implementation and design deficiencies that make it unreliable for some corner cases and the feature should not be used in production, only for evaluation or testing."</em>
</li>
<li style="margin-bottom: 1.25rem; padding-left: 1rem; border-left: 2px solid var(--border-color);">
<a href="https://learn.microsoft.com/en-us/windows-server/storage/storage-spaces/overview" target="_blank" rel="noopener">Storage Spaces</a>
- Microsoft’s solution, integrated into Windows 8 and later. Proprietary, with real-time redundancy but no checksum support. It also has several <a href="https://helgeklein.com/blog/windows-8-storage-spaces-bugs-and-design-flaws/" target="_blank" rel="noopener">limitations</a>.
</li>
</ul>
<tr><td><span class="bold">Operating system</span><br>Which operating systems are supported?</td>
<td>Linux<br>Windows<br>macOS<br>OpenIndiana<br>Solaris<br>BSD</td><td>Linux</td><td>Linux <a href="#note6">[6]</a><br>macOS<br>OpenIndiana<br>Solaris<br>BSD</td><td>Linux</td><td>Windows</td></tr>
</div>
<tr><td><span class="bold">Age</span><br>Year of the first official release supporting at least RAID5 redundancy.</td>
<td>2011</td><td>2005</td><td>2005</td><td>Not yet stable <a href="#note11">[11]</a></td><td>2012</td></tr>
<div style="margin-top: 4rem;">
<h2>Key Takeaways</h2>
<div class="grid grid-2-cols">
<div class="card">
<h3>Real-time vs Snapshot</h3>
<p>
The primary factor for categorizing storage solutions is when redundancy information is updated. This timing determines whether the system acts as a live mirror or a point-in-time recovery tool.
In <strong style="color: var(--text-primary);">real-time</strong> solutions, parity is updated immediately during every write operation without user action. While this ensures the array is constantly protected against hardware failure, it does not allow for the restoration of an earlier state, meaning accidental deletions are propagated instantly.
In <strong style="color: var(--text-primary);">snapshot</strong> solutions, parity is updated only upon an explicit request, similar to a backup. This creates a fixed point in time that allows to recover files that were accidentally deleted or modified since the last sync.
</p>
</div>
<div class="card">
<h3>Integrity & Bitrot</h3>
<p>
Silent data corruption, or bitrot, is a <a href="https://www.zdnet.com/article/data-corruption-is-worse-than-you-know/" target="_blank" rel="noopener">major threat</a> where storage devices return corrupted data without reporting hardware errors. Unlike traditional disk failures, this bit-level degradation remains invisible until the data is accessed or an array reconstruction is attempted.
A primary factor in categorizing storage solutions is their support for <strong style="color: var(--text-primary);">integrity checksums</strong> to detect and repair this corruption. Advanced systems use hashing to verify data blocks, allowing them to identify silent changes even if timestamps remain unaltered and use parity data to reconstruct the original, uncorrupted information.
</p>
</div>
</div>
</div>
<!---
ZFS 2009 is the data of the "Triple-Parity RAID-Z" article by Adam Leventhal
RAID 1987 is the date of the paper:
"A Case for Redundant Arrays of Inexpensive Disks (RAID)", David A. Patterson, Garth A. Gibson and Randy H. Katz
http://www.eecs.berkeley.edu/Pubs/TechRpts/1987/5853.html
-->
<div class="compare-container" style="margin-top: 4rem;">
<h2>Features comparison</h2>
<table class="data-table compare-table">
<thead>
<tr>
<th style="width: 30%;">Feature</th>
<th class="snapraid-header snapraid-col">SnapRAID</th>
<th>Unraid</th>
<th>ZFS</th>
<th>Btrfs</th>
<th>Storage Spaces</th>
</tr>
</thead>
<tbody>
<!-- Redundancy Model -->
<tr>
<td class="feature-cell">
Redundancy Model
<div class="cell-subtext">Real-time computes parity in real-time like RAID; snapshot computes parity on request, like backups.</div>
</td>
<td class="snapraid-col">Snapshot</td>
<td>Real-time</td>
<td>Real-time<br>Snapshot</td>
<td>Real-time<br>Snapshot</td>
<td>Real-time</td>
</tr>
<tr><td><span class="bold">License/Price</span><br>Software license and cost.</td>
<td>Open Source GPL3<br>Free</td><td>Open Source GPL2<br>$49/$109 +$36 yearly, 219$ lifetime</td><td>Open Source CDDL<br>Free</td><td>Open Source GPL2<br>Free</td><td>Proprietary<br>Included with Windows 8/10</td></tr>
<!-- Integrity -->
<tr>
<td class="feature-cell">
Integrity
<div class="cell-subtext">Whether data is validated with a checksum, and the default checksum type.</div>
</td>
<td class="snapraid-col check">Yes<br>SpookyHash<br>128-bit</td>
<td class="cross">
No
<div class="info-wrapper">
<button class="info-btn" aria-label="More info">
<svg viewBox="0 0 24 24" width="16" height="16" fill="currentColor"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z"/></svg>
</button>
<div class="info-content" hidden>
unRAID can use integrity checksums via plugins like <a href="https://forums.lime-technology.com/topic/43290-dynamix-file-integrity-plugin/">Dynamix File Integrity</a> or <a href="https://forums.lime-technology.com/topic/35615-bunker-yet-another-utility-for-file-integrity-checks/">bunker</a>. However, these are independent of parity processing and not used to aid recovery. For example, when recovering a single failed disk with dual parity, checksums can identify additional silent errors to facilitate recovery. To achieve functionality similar to SnapRAID, you would need to use the Btrfs filesystem for all your data disks.
</div>
</div>
</td>
<td class="check">Yes<br>Fletcher4<br>256-bit</td>
<td class="check">Yes<br>CRC32C<br>32-bit</td>
<td class="cross">
No
<div class="info-wrapper">
<button class="info-btn" aria-label="More info">
<svg viewBox="0 0 24 24" width="16" height="16" fill="currentColor"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z"/></svg>
</button>
<div class="info-content" hidden>
Storage Spaces can be used with ReFS, which supports integrity checksums, but not in Parity mode: <a href="http://www.windowscentral.com/how-use-resilient-file-system-refs-windows-10"><i>"Although you may select Simple (no resiliency) or Parity, both options will fail the process."</i></a>
</div>
</div>
</td>
</tr>
<tr><td><span class="bold">Interface</span><br>Which interface is provided? GUI or command line?</td>
<td>Command line<br><a href="https://github.com/Smurf-IV/Elucidate">Elucidate</a> GUI,<br>or plugin for <a href="https://www.openmediavault.org/">OpenMediaVault</a></td>
<td>Command line<br>GUI</td><td>Command line<br>GUI/Plugins <a href="#note7">[7]</a></td><td>Command line<br>GUI <a href="#note10">[10]</a></td><td>GUI</td></tr>
<!-- Fix Silent Errors -->
<tr>
<td class="feature-cell">
Fix Silent Errors
<div class="cell-subtext">Whether silent errors are detected and fixed before propagating to parity.</div>
</td>
<td class="snapraid-col check">Yes</td>
<td class="cross">
No
<div class="info-wrapper">
<button class="info-btn" aria-label="More info">
<svg viewBox="0 0 24 24" width="16" height="16" fill="currentColor"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z"/></svg>
</button>
<div class="info-content" hidden>
unRAID lacks native checksums and ignores silent errors. Even worse, if a parity mismatch is detected due to a silent error in the data, the parity is automatically recomputed, making it impossible to recover the silent error, even manually. Integrity checksum plugins do not help in this case, as they are not integrated into the parity-checking process.
</div>
</div>
</td>
<td class="check">
Yes
<div class="info-wrapper">
<button class="info-btn" aria-label="More info">
<svg viewBox="0 0 24 24" width="16" height="16" fill="currentColor"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z"/></svg>
</button>
<div class="info-content" hidden>
ZFS provides bit-rot protection comparable to SnapRAID. One drawback of ZFS is that its default Fletcher checksum prioritizes speed over reliability. SnapRAID uses 128-bit SpookyHash.
</div>
</div>
</td>
<td class="check">
Yes
<div class="info-wrapper">
<button class="info-btn" aria-label="More info">
<svg viewBox="0 0 24 24" width="16" height="16" fill="currentColor"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z"/></svg>
</button>
<div class="info-content" hidden>
Btrfs provides bit-rot protection comparable to SnapRAID. Btrfs uses CRC32C by default. SnapRAID uses 128-bit SpookyHash.
</div>
</div>
</td>
<td class="cross">No</td>
</tr>
</table>
<!-- Number of Failures -->
<tr>
<td class="feature-cell">Number of Failures
<div class="cell-subtext">How many disk failures are supported? 1 for RAID5, 2 for RAID6.</div>
</td>
<td class="snapraid-col check">1-6</td>
<td class="check">1-2</td>
<td class="check">
1-3
<div class="info-wrapper">
<button class="info-btn" aria-label="More info">
<svg viewBox="0 0 24 24" width="16" height="16" fill="currentColor"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z"/></svg>
</button>
<div class="info-content" hidden>
ZFS employs a suboptimal RAID-Z3 algorithm requiring ~2x computation vs SnapRAID z-parity.
</div>
</div>
</td>
<td class="check">1-2</td>
<td class="check">1-2</td>
</tr>
<h3>Notes</h3>
<!-- More disk failures -->
<tr>
<td class="feature-cell">
More disk failures
<div class="cell-subtext">If more disks fail than the supported redundancy model, can data on non-failed disks be recovered?</div>
</td>
<td class="snapraid-col check">Yes</td>
<td class="check">Yes</td>
<td class="cross">No</td>
<td class="cross">No</td>
<td class="cross">No</td>
</tr>
<p>
<a id="note1">[1]</a> - unRAID lacks native checksums and ignores silent errors.
Even worse, if a parity mismatch is detected due to a silent error in the data,
the parity is automatically recomputed, making it impossible to recover the silent error, even manually.
Integrity checksum plugins do not help in this case, as they are not integrated into the parity-checking process.
To achieve functionality similar to SnapRAID, you would need to use the Btrfs filesystem for all your data disks.
</p>
<!-- Power/Noise -->
<tr>
<td class="feature-cell">
Power/Noise
<div class="cell-subtext">How many disks spin when reading a single file?</div>
</td>
<td class="snapraid-col check">One</td>
<td class="check">One</td>
<td class="cross">All</td>
<td class="cross">All</td>
<td class="cross">All</td>
</tr>
<p>
<a id="note3">[3]</a> - ZFS and Btrfs provide bit-rot protection comparable to SnapRAID, always verifying data before use. These three solutions represent the state of the art.
<br>
One drawback of ZFS is that its default <a href="http://en.wikipedia.org/wiki/Fletcher%27s_checksum">Fletcher</a> checksum prioritizes speed over reliability. Although it is a 256-bit checksum, Fletcher is considered weaker than alternatives. Similarly, Btrfs uses CRC32C by default, which is strong but only 32-bit. Better alternatives are "edonr" for ZFS and "xxhash" for Btrfs. In contrast, SnapRAID uses the 128-bit <a href="http://burtleburtle.net/bob/hash/spooky.html">SpookyHash</a>, which offers state-of-the-art checksum quality without sacrificing speed.
<br>
ZFS also employs a suboptimal RAID-Z3 algorithm that requires roughly twice the computation compared to SnapRAID’s z-parity.
</p>
<!-- Filled disks -->
<tr>
<td class="feature-cell">Filled Disks
<div class="cell-subtext">Can you start with disks that already contain data?</div>
</td>
<td class="snapraid-col check">Yes</td>
<td class="check">Yes</td>
<td class="cross">No</td>
<td class="cross">No</td>
<td class="cross">No</td>
</tr>
<p>
<a id="note4">[4]</a> - unRAID 7.2 claims that it can add data disks to an existing array, but in reality, what it actually does is create a new array and rebuild the parity from scratch.
The key difference is that during this process, the data disks already in the array <a href="https://youtu.be/frtauLMO3-c?t=803">are not protected</a>.
This is a serious flaw, as a full parity rebuild puts considerable stress on all drives. If any disk is near failure, there’s a high risk it could fail during this operation.
With unRAID, the only safe way to add a new data disk to an existing array is to pre-clear it first.
</p>
<!-- Add filled disks -->
<tr>
<td class="feature-cell">Add Filled Disks
<div class="cell-subtext">Can data disks that already contain data be added later?</div>
</td>
<td class="snapraid-col check">Yes</td>
<td class="cross">
No
<div class="info-wrapper">
<button class="info-btn" aria-label="More info">
<svg viewBox="0 0 24 24" width="16" height="16" fill="currentColor"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z"/></svg>
</button>
<div class="info-content" hidden>
unRAID 7.2 claims it can add data disks to an existing array, but it effectively rebuilds parity from scratch. During this process, disks already in the array <a href="https://youtu.be/frtauLMO3-c?t=803">are not protected</a>. This puts stress on all drives with no safety net. If any disk is near failure, there’s a high risk it could fail during this operation. With unRAID, the only safe way to add a new data disk to an existing array is to pre-clear it first.
</div>
</div>
</td>
<td class="cross">No</td>
<td class="cross">No</td>
<td class="cross">No</td>
</tr>
<p>
<a id="note6">[6]</a> - ZFS is available on Linux at the kernel level via <a href="http://zfsonlinux.org/">ZFS on Linux</a>.
</p>
<!-- OS -->
<tr>
<td class="feature-cell">Operating System
<div class="cell-subtext">Which operating systems are supported?</div>
</td>
<td class="snapraid-col">Linux, Win, macOS, BSD</td>
<td>Linux</td>
<td>
Linux, BSD, macOS
<div class="info-wrapper">
<button class="info-btn" aria-label="More info">
<svg viewBox="0 0 24 24" width="16" height="16" fill="currentColor"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z"/></svg>
</button>
<div class="info-content" hidden>
ZFS is available on Linux at the kernel level via <a href="http://zfsonlinux.org/">ZFS on Linux</a>.
</div>
</div>
</td>
<td>Linux</td>
<td>Windows</td>
</tr>
<p>
<a id="note7">[7]</a> - ZFS supports external GUIs, such as <a href="http://www.napp-it.org/">Napp-it</a>, and plugins for <a href="http://www.freenas.org/">FreeNAS</a> and <a href="http://www.nas4free.org/">NAS4Free</a>.
</p>
<!-- Age -->
<tr>
<td class="feature-cell">Stable Since
<div class="cell-subtext">Year of the first official release supporting at least RAID5 redundancy.</div>
</td>
<td class="snapraid-col">2011</td>
<td>2005</td>
<td>2005</td>
<td class="partial">
Unstable
<div class="info-wrapper">
<button class="info-btn" aria-label="More info">
<svg viewBox="0 0 24 24" width="16" height="16" fill="currentColor"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z"/></svg>
</button>
<div class="info-content" hidden>
Btrfs has supported RAID5 since 2013, but serious issues in RAID5/6 support were <a href="https://www.phoronix.com/scan.php?page=news_item&px=Btrfs-RAID-56-Is-Bad">identified</a>. As of 2026, these remain unresolved. The official <a href="https://btrfs.readthedocs.io/en/latest/btrfs-man5.html#raid56-status-and-recommended-practices" target="_blank" rel="noopener">wiki</a> states that RAID5/6 support should not be used in production.
</div>
</div>
</td>
<td>2012</td>
</tr>
<!-- Price -->
<tr>
<td class="feature-cell">License / Price
<div class="cell-subtext">Software license and cost.</div>
</td>
<td class="snapraid-col check">GPL3 / Free</td>
<td class="partial">Proprietary / Subscription</td>
<td class="check">CDDL / Free</td>
<td class="check">GPL2 / Free</td>
<td class="partial">Proprietary / Windows</td>
</tr>
<p>
<a id="note8">[8]</a> - unRAID can use integrity checksums via plugins like <a href="https://forums.lime-technology.com/topic/43290-dynamix-file-integrity-plugin/">Dynamix File Integrity</a>, or <a href="https://forums.lime-technology.com/topic/35615-bunker-yet-another-utility-for-file-integrity-checks/">bunker</a>.
However, these are independent of parity processing and not used to aid recovery.
For example, when recovering a single failed disk with dual parity, checksums can identify additional silent errors to facilitate recovery.
To achieve functionality similar to SnapRAID, you would need to use the Btrfs filesystem for all your data disks.
</p>
<!-- Interface -->
<tr>
<td class="feature-cell">Interface
<div class="cell-subtext">Which interface is provided? GUI or command line?</div>
</td>
<td class="snapraid-col">CLI / GUI / API</td>
<td>GUI / CLI / API</td>
<td>
CLI / GUI
<div class="info-wrapper">
<button class="info-btn" aria-label="More info">
<svg viewBox="0 0 24 24" width="16" height="16" fill="currentColor"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z"/></svg>
</button>
<div class="info-content" hidden>
ZFS supports external GUIs, such as Napp-it, and plugins for TrueNAS/FreeNAS and XigmaNAS.
</div>
</div>
</td>
<td>
CLI / GUI
<div class="info-wrapper">
<button class="info-btn" aria-label="More info">
<svg viewBox="0 0 24 24" width="16" height="16" fill="currentColor"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z"/></svg>
</button>
<div class="info-content" hidden>
Btrfs supports external GUIs, such as Rockstor.
</div>
</div>
</td>
<td>GUI</td>
</tr>
</tbody>
</table>
</div>
<p>
<a id="note9">[9]</a> - Storage Spaces can be used with ReFS, which supports integrity checksums, but not in Parity mode: <a href="http://www.windowscentral.com/how-use-resilient-file-system-refs-windows-10"><i>"Although you may select Simple (no resiliency) or Parity, both options will fail the process."</i></a>
</p>
</div>
<!-- Global Popover Element -->
<div id="global-popover" class="global-popover">
<div class="popover-arrow"></div>
<div id="global-popover-content"></div>
</div>
<div id="popover-overlay" class="popover-overlay"></div>
<p>
<a id="note10">[10]</a> - Btrfs supports external GUIs, such as <a href="http://rockstor.com/">Rockstor</a>.
</p>
<p>
<a id="note11">[11]</a> - Btrfs has supported RAID5 since 2013, but serious issues in RAID5/6 support were <a href="https://www.phoronix.com/scan.php?page=news_item&px=Btrfs-RAID-56-Is-Bad">identified</a>. As of 2025, these <a href="https://www.phoronix.com/scan.php?page=news_item&px=Btrfs-RAID56-Not-All-Clear">remain unresolved</a>. The official wiki states: <a href="https://btrfs.readthedocs.io/en/latest/btrfs-man5.html#raid56-status-and-recommended-practices"><i>"There are implementation and design deficiencies that make it unreliable for some corner cases. The feature should not be used in production, only for evaluation or testing."</i></a>
</p>
<p>
If you believe any information is incorrect or unfair, please report it in the <a href="https://sourceforge.net/p/snapraid/discussion/1677233/">Forum</a>.
</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&currency_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>
<!-- Footer -->
<footer>
<div class="container footer-content">
<div class="footer-col">
<div class="logo">
<img src="android-chrome-192x192.png" width="32" height="32"/>
SnapRAID
</div>
<p>Copyright &copy; 2026 Andrea Mazzoleni</p>
<p class="license">Distributed under GPL v3 License</p>
</div>
<div class="footer-col">
</div>
</div>
</footer>
</body>
</html>

View file

@ -1,17 +1,17 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!DOCTYPE html>
<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>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<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">
<title>SnapRAID Design</title>
<link rel="stylesheet" href="style.css">
<link rel="apple-touch-icon" sizes="180x180" href="/beta/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/beta/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/beta/favicon-16x16.png">
<link rel="manifest" href="/beta/site.webmanifest">
<script src="script.js"></script>
<!-- Google Analytics 4 -->
<!-- Google tag (gtag.js) -->
@ -36,108 +36,160 @@
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">
<header>
<div class="container nav-container">
<a href="index" class="logo">
<img src="android-chrome-192x192.png" width="32" height="32"/>
SnapRAID
</a>
<nav>
<input type="checkbox" id="menu-toggle">
<label for="menu-toggle" class="menu-icon"><svg viewBox="0 0 24 24" width="24" height="24" fill="currentColor"><path d="M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z"/></svg></label>
<ul>
<li><a href="index" >Home</a></li>
<li><a href="ui" >UI & Daemon</a></li>
<li><a href="howitworks" >How it Works</a></li>
<li><a href="design" class="active">Design</a></li>
<li><a href="compare" >Compare</a></li>
<li><a href="manual" >Manual</a></li>
<li><a href="faq" >FAQ</a></li>
<li><a href="support" >Support</a></li>
<li><a href="download" class="nav-cta">Download</a></li>
<li>
<button class="theme-toggle" aria-label="Toggle theme">
<svg class="sun-icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg>
<svg class="moon-icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg>
</button>
</li>
</ul>
</nav>
</div>
</header>
<div class="container" style="padding: 4rem 20px;">
<div style="text-align: center; margin-bottom: 4rem;">
<h1 style="margin-bottom: 1rem;">Design Philosophy</h1>
<blockquote style="font-size: 1.5rem; color: var(--text-accent); font-style: italic; margin: 0; padding: 0; border: none; font-family: serif;">
Simplicity is prerequisite for reliability
</blockquote>
<cite style="display: block; margin-top: 1rem; font-size: 1rem; color: var(--text-secondary); font-style: normal;">
<a href="http://en.wikipedia.org/wiki/Edsger_W._Dijkstra" style="color: var(--text-secondary); text-decoration: underline;">Edsger W. Dijkstra</a>
</cite>
</div>
<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>
<!-- Unix Philosophy & Reliability -->
<div style="max-width: 800px; margin: 0 auto 4rem auto;">
<p style="font-size: 1.1rem; color: var(--text-secondary); margin-bottom: 1.5rem;">
<strong style="color: var(--text-primary);">SnapRAID</strong> 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>
</div>
<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>
<div class="grid grid-3-cols" style="margin-bottom: 4rem;">
<!-- Testing/Verification Card -->
<div class="card">
<h3>Reliability</h3>
<p>
The first design principle was <strong style="color: var(--text-primary);">reliability</strong>.
The result is a simple architecture and an easy to understand implementation.
</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="https://github.com/linux-test-project/lcov">lcov</a>.
</p>
<p>
SnapRAID is also verified with Coverity Scan for both the
<a href="https://scan.coverity.com/projects/snapraid">CLI</a> and the <a href="https://scan.coverity.com/projects/snapraid-daemon">Daemon</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>
</div>
<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>
<!-- Robustness Card -->
<div class="card">
<h3>Robustness</h3>
<p>
The second design principle was <strong style="color: var(--text-primary);">robustness</strong>.
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.
</p>
<p>
It uses all the possible storage techniques to ensure to always keep consistent
redundancy even after critical interruptions.
</p>
</div>
<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>
<!-- Efficiency Card -->
<div class="card">
<h3>Efficiency</h3>
<p>
The third design principle was <strong style="color: var(--text-primary);">efficiency</strong>.
It's a native C application highly optimized to ensure maximum throughput of your disk array.
</p>
<p>
Integrity checks use the highly efficient <a href="https://github.com/aappleby/smhasher">murmur3</a>
and <a href="https://burtleburtle.net/bob/hash/spooky.html">SpookyHash</a> hashes at 128 bits.
</p>
<p>
Redundancy computations use a custom <a href="https://github.com/amadvance/snapraid/tree/master/raid">RAID library</a>
(based on Linux Kernel RAID) supporting up to six parity levels.
Internal structures use <a href="https://www.tommyds.it/">TommyDS</a>.
</p>
</div>
</div>
<div class="grid" style="margin-bottom: 4rem;">
<!-- AI -->
<div class="card">
<h3>Use of Artificial Intelligence</h3>
<p>
This project <strong style="color: var(--text-primary);">is not "vibe-coded"</strong>.
Artificial intelligence is used strictly as a
precision tool and a pair programmer, never as a substitute for engineering judgment. All architecture
decisions, core logic, and safety guarantees remain under direct human control and review.
</p>
<p>
AI was used selectively to accelerate front-end scaffolding, component layout, and alignment with modern UI
standards. All functional behavior, state management, API integration, and system logic were implemented and
<strong style="color: var(--text-primary);">manually validated</strong>.
</p>
<p>
Development follows a <strong style="color: var(--text-primary);">human-led</strong>, AI-assisted workflow. The developer defines the architecture and writes
the core implementations. AI contributes by exploring design alternatives, surfacing edge cases, suggesting
optimizations, and helping refine documentation. Any generated output is reviewed, revised where necessary,
and hardened before integration.
</p>
<p>
This approach improves development efficiency while preserving strict <strong style="color: var(--text-primary);">engineering oversight</strong> and reliability.
</p>
</div>
</div>
</div>
<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&currency_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>
<!-- Footer -->
<footer>
<div class="container footer-content">
<div class="footer-col">
<div class="logo">
<img src="android-chrome-192x192.png" width="32" height="32"/>
SnapRAID
</div>
<p>Copyright &copy; 2026 Andrea Mazzoleni</p>
<p class="license">Distributed under GPL v3 License</p>
</div>
<div class="footer-col">
</div>
</div>
</footer>
</body>
</html>

BIN
desk-dashboard-light.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 96 KiB

BIN
desk-dashboard.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 101 KiB

BIN
desk-differences-light.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 57 KiB

BIN
desk-differences.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 58 KiB

BIN
desk-disks-light.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 80 KiB

BIN
desk-disks.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 84 KiB

BIN
desk-recovery-light.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

BIN
desk-recovery.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

BIN
desk-settings-light.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 98 KiB

BIN
desk-settings.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 95 KiB

BIN
desk-smart-light.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 106 KiB

BIN
desk-smart.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 103 KiB

BIN
desk-tasks-light.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 67 KiB

BIN
desk-tasks.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 67 KiB

View file

@ -1,17 +1,17 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!DOCTYPE html>
<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>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<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">
<title>Download SnapRAID</title>
<link rel="stylesheet" href="style.css">
<link rel="apple-touch-icon" sizes="180x180" href="/beta/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/beta/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/beta/favicon-16x16.png">
<link rel="manifest" href="/beta/site.webmanifest">
<script src="script.js"></script>
<!-- Google Analytics 4 -->
<!-- Google tag (gtag.js) -->
@ -36,111 +36,231 @@
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">
<header>
<div class="container nav-container">
<a href="index" class="logo">
<img src="android-chrome-192x192.png" width="32" height="32"/>
SnapRAID
</a>
<nav>
<input type="checkbox" id="menu-toggle">
<label for="menu-toggle" class="menu-icon"><svg viewBox="0 0 24 24" width="24" height="24" fill="currentColor"><path d="M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z"/></svg></label>
<ul>
<li><a href="index" >Home</a></li>
<li><a href="ui" >UI & Daemon</a></li>
<li><a href="howitworks" >How it Works</a></li>
<li><a href="design" >Design</a></li>
<li><a href="compare" >Compare</a></li>
<li><a href="manual" >Manual</a></li>
<li><a href="faq" >FAQ</a></li>
<li><a href="support" >Support</a></li>
<li><a href="download" class="nav-cta">Download</a></li>
<li>
<button class="theme-toggle" aria-label="Toggle theme">
<svg class="sun-icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg>
<svg class="moon-icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg>
</button>
</li>
</ul>
</nav>
</div>
</header>
<div class="container" style="padding: 4rem 20px;">
<h1 style="text-align: center;">Download SnapRAID</h1>
<div style="text-align: center; max-width: 700px; margin: 0 auto 3rem auto;">
<p style="margin-bottom: 1rem; font-size: 1.2rem;">
SnapRAID CLI <strong>v14.0</strong> (Released March 2026).
</p>
<p style="margin-bottom: 1rem; font-size: 1.2rem;">
SnapRAID Daemon <strong>v1.0</strong> (Released March 2026).
</p>
<p style="color: var(--text-secondary);">
<strong style="color: var(--text-primary);">SnapRAID</strong> is a <a href="http://en.wikipedia.org/wiki/Free_Software">Free Software</a>
application released with the <a href="http://www.gnu.org/licenses/quick-guide-gplv3.html">GPLv3 license</a>.
</p>
</div>
<p>
Here you can download <span class="bold">SnapRAID</span>.
Take care that it's a <span class="bold">command line</span> program, without any GUI interface.
If you like to use a GUI, you can try <a href="https://github.com/Smurf-IV/Elucidate">Elucidate</a>.
</p>
<div class="grid">
<!-- SnapRAID CLI -->
<div class="card">
<h2>SnapRAID CLI (Command Line Interface)</h2>
<p>
The classic command line tool.
See the <a href="https://github.com/amadvance/snapraid/blob/master/HISTORY">ChangeLog</a> for the detailed list of changes,
and <a href="https://github.com/amadvance/snapraid/blob/master/CHECKSUMS">CheckSums</a> for the SHA256 checksums.
</p>
<table class="data-table">
<thead>
<tr>
<th>Platform</th>
<th>Version</th>
<th>Description</th>
<th>Download</th>
</tr>
</thead>
<tbody>
<tr>
<td>Windows</td>
<td>14.0</td>
<td>Portable executable for Windows</td>
<td><a href="https://github.com/amadvance/snapraid/releases/download/v14.0/snapraid-14.0-windows-x64.zip">snapraid-14.0-windows-x64.zip</a></td>
</tr>
<tr>
<td>DEB</td>
<td>14.0</td>
<td>Package for Ubuntu/Debian</td>
<td><a href="https://github.com/amadvance/snapraid/releases/download/v14.0/snapraid_14.0-1_amd64.deb">snapraid_14.0-1_amd64.deb</a></td>
</tr>
<tr>
<td>RPM</td>
<td>14.0</td>
<td>Package for RedHat/Fedora</td>
<td><a href="https://github.com/amadvance/snapraid/releases/download/v14.0/snapraid-14.0-1.x86_64.rpm">snapraid-14.0-1.x86_64.rpm</a></td>
</tr>
<tr>
<td>PKG</td>
<td>14.0</td>
<td>Package for Arch</td>
<td><a href="https://github.com/amadvance/snapraid/releases/download/v14.0/snapraid-14.0-1-x86_64.pkg.tar.zst">snapraid-14.0-1-x86_64.pkg.tar.zst</a></td>
</tr>
<tr>
<td>TXZ</td>
<td>14.0</td>
<td>Package for Slackware</td>
<td><a href="https://github.com/amadvance/snapraid/releases/download/v14.0/snapraid-14.0-x86_64-1_am.txz">snapraid-14.0-x86_64-1_am.txz</a></td>
</tr>
<tr>
<td>Source Code</td>
<td>14.0</td>
<td>C source code compatible with all Linux distributions and macOS</td>
<td><a href="https://github.com/amadvance/snapraid/releases/download/v14.0/snapraid-14.0.tar.gz">snapraid-14.0.tar.gz</a></td>
</tr>
</tbody>
</table>
<p style="font-size: 0.85rem; color: var(--text-secondary);">
Old versions are available on <a href="https://github.com/amadvance/snapraid/releases">GitHub</a>.
</p>
</div>
<table class="download">
<tr><th>File</th><th>Description</th></tr>
<tr><td>
<a href="https://github.com/amadvance/snapraid/releases/download/v13.0/snapraid-13.0.tar.gz">snapraid-13.0.tar.gz</a>
</td><td>
Sources for Linux, Mac OS X, BSD, Solaris, OpenIndiana and any other Unix
</td></tr>
<tr><td>
<a href="https://github.com/amadvance/snapraid/releases/download/v13.0/snapraid-13.0-windows-x64.zip">snapraid-13.0-windows-x64.zip</a>
</td><td>
Binaries for Windows x64
</td></tr>
<tr><td>
<a href="https://github.com/amadvance/snapraid/releases/download/v13.0/snapraid-13.0-windows-x86.zip">snapraid-13.0-windows-x86.zip</a>
</td><td>
Binaries for Windows x86 (legacy Windows versions)
</td></tr>
</table>
<!-- Daemon -->
<div class="card">
<h2>SnapRAID Daemon (Automation, Web UI, REST API)</h2>
<div class="warning-card">
<svg viewBox="0 0 24 24" width="24" height="24" fill="currentColor" style="min-width: 24px;"><path d="M1 21h22L12 2 1 21zm12-3h-2v-2h2v2zm0-4h-2v-4h2v4z"/></svg>
<span><strong>Warning:</strong>The SnapRAID Daemon for Linux requires SnapRAID CLI 14.0+ to be already installed and configured. In contrast, the Windows installer contains both the SnapRAID CLI and the SnapRAID Daemon. On Windows, if you are already using SnapRAID, ensure you install the daemon in the same directory.</span>
</div>
<div class="warning-card">
<svg viewBox="0 0 24 24" width="24" height="24" fill="currentColor" style="min-width: 24px;"><path d="M1 21h22L12 2 1 21zm12-3h-2v-2h2v2zm0-4h-2v-4h2v4z"/></svg>
<span><strong>Warning:</strong>SnapRAID Daemon is currently available only for Linux and Windows. If you are a Mac developer interested in volunteering your expertise to bring the daemon to macOS as an open-source collaborator, we would love to hear from you!</span>
</div>
<p>
See the <a href="https://github.com/amadvance/snapraid/blob/master/HISTORY">ChangeLog</a> for the detailed list of changes,
and <a href="https://github.com/amadvance/snapraid/blob/master/CHECKSUMS">CheckSums</a> for the SHA256 checksums.
</p>
<p>
Includes background service and Web UI.
See the <a href="https://github.com/amadvance/snapraid-daemon/blob/master/HISTORY">ChangeLog</a> for the detailed list of changes,
and <a href="https://github.com/amadvance/snapraid-daemon/blob/master/CHECKSUMS">CheckSums</a> for the SHA256 checksums.
</p>
<!--
<p>
There is also an <a href="http://beta.snapraid.it/SnapRAID_12_1_it.pdf">ITALIAN manual</a>. Thanks to Luciano Lampi.
</p>
-->
<table class="data-table">
<thead>
<tr>
<th>Platform</th>
<th>Version</th>
<th>Description</th>
<th>Download</th>
</tr>
</thead>
<tbody>
<tr>
<td>EXE</td>
<td>1.0</td>
<td>Windows Installer (If the SmartScreen "Blue Box" appears, select "More Info" and then "Run anyway")</td>
<td><a href="https://github.com/amadvance/snapraid-daemon/releases/download/v1.0/snapraid-daemon-1.0.exe">snapraid-daemon-1.0.exe</a></td>
</tr>
<tr>
<td>DEB</td>
<td>1.0</td>
<td>Package for Ubuntu/Debian</td>
<td><a href="https://github.com/amadvance/snapraid-daemon/releases/download/v1.0/snapraid-daemon_1.0-1_amd64.deb">snapraid-daemon_1.0-1_amd64.deb</a></td>
</tr>
<tr>
<td>RPM</td>
<td>1.0</td>
<td>Package for RedHat/Fedora</td>
<td><a href="https://github.com/amadvance/snapraid-daemon/releases/download/v1.0/snapraid-daemon-1.0-1.x86_64.rpm">snapraid-daemon-1.0-1.x86_64.rpm</a></td>
</tr>
<tr>
<td>PKG</td>
<td>1.0</td>
<td>Package for Arch</td>
<td><a href="https://github.com/amadvance/snapraid-daemon/releases/download/v1.0/snapraid-daemon-1.0-1-x86_64.pkg.tar.zst">snapraid-daemon-1.0-1-x86_64.pkg.tar.zst</a></td>
</tr>
<tr>
<td>TXZ</td>
<td>1.0</td>
<td>Package for Slackware</td>
<td><a href="https://github.com/amadvance/snapraid-daemon/releases/download/v1.0/snapraid-daemon-1.0-x86_64-1_am.txz">snapraid-daemon-1.0-x86_64-1_am.txz</a></td>
</tr>
<tr>
<td>Source Code</td>
<td>1.0</td>
<td>C source code compatible with all Linux distributions</td>
<td><a href="https://github.com/amadvance/snapraid-daemon/releases/download/v1.0/snapraid-daemon-1.0.tar.gz">snapraid-1.0.tar.gz</a></td>
</tr>
</tbody>
</table>
<p style="font-size: 0.85rem; color: var(--text-secondary);">
Old versions are available on <a href="https://github.com/amadvance/snapraid-daemon/releases">GitHub</a>.
</p>
</div>
<!--
<p>
There are also Ubuntu packages in <a href="https://launchpad.net/~tikhonov/+archive/snapraid">launchpad</a>.
</p>
-->
<p>
<span class="bold">SnapRAID</span> is a <a href="http://en.wikipedia.org/wiki/Free_Software">Free Software</a>
application released with the <a href="http://www.gnu.org/licenses/quick-guide-gplv3.html">GPLv3 license</a>.
</p>
<p>
If you want to show your appreciation,
you can <a href="http://sourceforge.net/p/snapraid/donate/"><span class="bold">donate</span></a>,
or you can <a href="https://github.com/amadvance/snapraid/"><span class="bold">star it on GitHub</span></a>.
Donations are spent on stuffs related to SnapRAID development like to buy new hardware for my PC and internet bills.
</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&currency_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>
<!-- Donation Card -->
<div class="card donation-card">
<h2 style="color: var(--text-warning);">
<svg viewBox="0 0 24 24" width="32" height="32" fill="currentColor"><path d="M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z"/></svg>
Support the Project
<svg viewBox="0 0 24 24" width="32" height="32" fill="currentColor"><path d="M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z"/></svg>
</h2>
<p>
If you want to show your appreciation,
you can <a href="https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=amadvance%40gmail%2ecom&lc=US&item_name=SnapRAID&no_note=0&currency_code=USD&bn=PP%2dDonationsBF%3abtn_donateCC_LG%2egif%3aNonHostedGuest"><strong>donate with Paypal</strong></a>,
or you can <a href="https://github.com/amadvance/snapraid/"><strong>star SnapRAID CLI <img src="https://img.shields.io/github/stars/amadvance/snapraid?style=flat"></strong></a> and <a href="https://github.com/amadvance/snapraid-daemon/"><strong>star SnapRAID Daemon <img src="https://img.shields.io/github/stars/amadvance/snapraid-daemon?style=flat"></strong></a> on GitHub.
</p>
<p>
Donations are used to support SnapRAID development, covering costs such as new hardware, internet services, and AI subscriptions
</p>
<a href="https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=amadvance%40gmail%2ecom&lc=US&item_name=SnapRAID&no_note=0&currency_code=USD&bn=PP%2dDonationsBF%3abtn_donateCC_LG%2egif%3aNonHostedGuest" class="btn btn-primary" style="background: var(--warning); color: black; box-shadow: none; margin-top: 1rem;">Donate via PayPal</a>
</div>
</div>
</div>
<!-- Footer -->
<footer>
<div class="container footer-content">
<div class="footer-col">
<div class="logo">
<img src="android-chrome-192x192.png" width="32" height="32"/>
SnapRAID
</div>
<p>Copyright &copy; 2026 Andrea Mazzoleni</p>
<p class="license">Distributed under GPL v3 License</p>
</div>
<div class="footer-col">
</div>
</div>
</footer>
</body>
</html>

BIN
email.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

1634
faq.html

File diff suppressed because it is too large Load diff

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.2 KiB

View file

@ -1,17 +1,17 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!DOCTYPE html>
<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>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<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">
<title>SnapRAID</title>
<link rel="stylesheet" href="style.css">
<link rel="apple-touch-icon" sizes="180x180" href="/beta/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/beta/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/beta/favicon-16x16.png">
<link rel="manifest" href="/beta/site.webmanifest">
<script src="script.js"></script>
<!-- Google Analytics 4 -->
<!-- Google tag (gtag.js) -->
@ -36,101 +36,304 @@
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">
<header>
<div class="container nav-container">
<a href="index" class="logo">
<img src="android-chrome-192x192.png" width="32" height="32"/>
SnapRAID
</a>
<nav>
<input type="checkbox" id="menu-toggle">
<label for="menu-toggle" class="menu-icon"><svg viewBox="0 0 24 24" width="24" height="24" fill="currentColor"><path d="M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z"/></svg></label>
<ul>
<li><a href="index" class="active">Home</a></li>
<li><a href="ui" >UI & Daemon</a></li>
<li><a href="howitworks" >How it Works</a></li>
<li><a href="design" >Design</a></li>
<li><a href="compare" >Compare</a></li>
<li><a href="manual" >Manual</a></li>
<li><a href="faq" >FAQ</a></li>
<li><a href="support" >Support</a></li>
<li><a href="download" class="nav-cta">Download</a></li>
<li>
<button class="theme-toggle" aria-label="Toggle theme">
<svg class="sun-icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg>
<svg class="moon-icon" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg>
</button>
</li>
</ul>
</nav>
</div>
</header>
<!-- Hero Section -->
<section class="hero-section">
<div class="container hero-content">
<h1>Intelligent Redundancy<br>for Your Disk Array</h1>
<p class="hero-subtext">
SnapRAID combines the safety of RAID with the convenience of backups.
Now with real-time health monitoring and automation via the new <strong>SnapRAID Daemon</strong>.
</p>
<div class="hero-actions">
<a href="download" class="btn btn-primary">
<svg viewBox="0 0 24 24" width="20" height="20" fill="currentColor"><path d="M19 9h-4V3H9v6H5l7 7 7-7zM5 18v2h14v-2H5z"/></svg>
Download
</a>
<a href="ui" class="btn btn-secondary">Explore the UI</a>
</div>
</div>
</section>
<!-- What is SnapRAID? Section -->
<section class="daemon-section">
<div class="container">
<div class="grid grid-2-cols daemon-layout">
<div class="daemon-text">
<h2>What is SnapRAID?</h2>
<p style="font-size: 1.1rem; color: var(--text-secondary);">
SnapRAID is a powerful backup and redundancy program designed for disk arrays. It stores parity information (a special type of mathematical backup) that allows you to fully recover your data even if you experience up to six simultaneous disk failures.
</p>
<p style="font-size: 1.1rem; color: var(--text-secondary);">
It is primarily intended for home media centers and large storage arrays containing files that don't change frequently (like movies, music, and photo archives). It offers the high-end protection of a professional server but with the simplicity and flexibility of a home computer.
</p>
</div>
<!-- Terminal Mockup -->
<div class="terminal-mockup">
<div class="terminal-header">
<div class="dot red"></div>
<div class="dot yellow"></div>
<div class="dot green"></div>
</div>
<div class="terminal-body" style="font-size: 0.95rem; line-height: 1.6;">
<div class="term-line">$ snapraid sync</div>
<div class="term-line">Loading state from /db/snapraid.content...</div>
<div class="term-line">Scanning...</div>
<div class="term-line">Initializing...</div>
<div class="term-line">Resizing...</div>
<div class="term-line">Syncing...</div>
</div>
</div>
</div>
</div>
</section>
<!-- Why Choose SnapRAID (New Section) -->
<section style="padding: 5rem 0; border-bottom: 1px solid var(--border-color); background: var(--bg-body);">
<div class="container">
<h2 class="section-title">Why Choose SnapRAID?</h2>
<p style="text-align: center; max-width: 800px; margin: 0 auto 4rem auto; font-size: 1.1rem; color: var(--text-secondary);">
SnapRAID provides a unique approach to data protection that prioritizes safety, flexibility, and energy efficiency.
It is designed to sit on top of your files as a safety net, ensuring your data is protected without requiring complex
changes to your hardware or operating system.
</p>
<div class="grid grid-2-cols" style="align-items: start;">
<!-- Column 1: Safety Net Philosophy -->
<div>
<h3 style="color: var(--text-accent); margin-bottom: 1.5rem;">The "Safety Net" Philosophy</h3>
<p>SnapRAID acts as a transparent layer of security that protects your data without ever
taking it hostage. It treats your array as a collection of individual assets, providing a
safety net that is both powerful and precise.</p>
<ul class="feature-list" style="margin-top: 2rem;">
<li style="display: flex; gap: 1rem; align-items: start; margin-bottom: 1.5rem;">
<div style="min-width: 24px; height: 24px; background: rgba(59, 130, 246, 0.1); border-radius: 50%; display: flex; align-items: center; justify-content: center;">
<svg style="width: 14px; height: 14px; fill: var(--primary);" viewBox="0 0 24 24"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"/></svg>
</div>
<div>
<strong style="color: var(--text-primary);">Disaster-Proof Recovery</strong>
<p style="margin: 0.25rem 0 0 0; font-size: 0.95rem;">The primary goal is total data reconstruction. Should a hard drive fail, SnapRAID uses its parity data to rebuild the entire contents of the lost disk onto a new one. Because it can handle up to six simultaneous failures, it provides a level of resilience that scales with your needs, ensuring that a hardware crash doesn't mean a data catastrophe.</p>
</div>
</li>
<li style="display: flex; gap: 1rem; align-items: start; margin-bottom: 1.5rem;">
<div style="min-width: 24px; height: 24px; background: rgba(59, 130, 246, 0.1); border-radius: 50%; display: flex; align-items: center; justify-content: center;">
<svg style="width: 14px; height: 14px; fill: var(--primary);" viewBox="0 0 24 24"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"/></svg>
</div>
<div>
<strong style="color: var(--text-primary);">Defense Against the Invisible</strong>
<p style="margin: 0.25rem 0 0 0; font-size: 0.95rem;">Physical disk failure isn't the only threat; "bit-rot" or silent errors can corrupt files without warning. SnapRAID proactively defends your archive by hashing every file. It doesn't just wait for a disk to die; it constantly verifies that your data is exactly as you left it, identifying and repairing invisible corruption before it can spread.</p>
</div>
</li>
</ul>
</div>
<!-- Column 2: Maximum Freedom -->
<div>
<h3 style="color: var(--text-accent); margin-bottom: 1.5rem;">Maximum Freedom, Minimum Risk</h3>
<p>SnapRAID is designed for the "real world" of home hardware. Most users don't buy ten identical 20TB drives at once.</p>
<ul class="feature-list" style="margin-top: 2rem;">
<li style="display: flex; gap: 1rem; align-items: start; margin-bottom: 1.5rem;">
<div style="min-width: 24px; height: 24px; background: rgba(59, 130, 246, 0.1); border-radius: 50%; display: flex; align-items: center; justify-content: center;">
<svg style="width: 14px; height: 14px; fill: var(--primary);" viewBox="0 0 24 24"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"/></svg>
</div>
<div>
<strong style="color: var(--text-primary);">Grow as you go</strong>
<p style="margin: 0.25rem 0 0 0; font-size: 0.95rem;">You can mix a 4TB drive with a 12TB drive and add a new one whenever you find a sale.</p>
</div>
</li>
<li style="display: flex; gap: 1rem; align-items: start; margin-bottom: 1.5rem;">
<div style="min-width: 24px; height: 24px; background: rgba(59, 130, 246, 0.1); border-radius: 50%; display: flex; align-items: center; justify-content: center;">
<svg style="width: 14px; height: 14px; fill: var(--primary);" viewBox="0 0 24 24"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"/></svg>
</div>
<div>
<strong style="color: var(--text-primary);">No Reformatting</strong>
<p style="margin: 0.25rem 0 0 0; font-size: 0.95rem;">You can start protecting disks that are already full of your movies and photos without moving them.</p>
</div>
</li>
<li style="display: flex; gap: 1rem; align-items: start;">
<div style="min-width: 24px; height: 24px; background: rgba(59, 130, 246, 0.1); border-radius: 50%; display: flex; align-items: center; justify-content: center;">
<svg style="width: 14px; height: 14px; fill: var(--primary);" viewBox="0 0 24 24"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"/></svg>
</div>
<div>
<strong style="color: var(--text-primary);">Zero Lock-in</strong>
<p style="margin: 0.25rem 0 0 0; font-size: 0.95rem;">Your data is never trapped. If you decide to stop using SnapRAID, your disks remain standard drives that can be read by any computer.</p>
</div>
</li>
</ul>
</div>
</div>
</div>
</section>
<!-- Daemon Spotlight Section -->
<section class="daemon-section">
<div class="container">
<div class="grid grid-2-cols daemon-layout">
<div class="daemon-text">
<h3 class="accent-text">INTRODUCING THE DAEMON</h3>
<h2>Real-Time Monitoring & Web API</h2>
<p>
The new SnapRAID Daemon bridges the gap between raw parity and proactive protection.
Move from a manual terminal workflow to an "always-on" background intelligence.
</p>
<ul class="feature-list">
<li>
<svg class="icon-check" viewBox="0 0 24 24"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"/></svg>
Background scrubbing and health checks
</li>
<li>
<svg class="icon-check" viewBox="0 0 24 24"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"/></svg>
Modern Web UI for dashboard and tasks
</li>
<li>
<svg class="icon-check" viewBox="0 0 24 24"><path d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"/></svg>
REST API for 3rd party integration
</li>
</ul>
<a href="ui" class="link-arrow">See Daemon Features &rarr;</a>
</div>
<!-- Visual Representation of Daemon Dashboard -->
<div style="border-radius: var(--radius); overflow: hidden; border: 1px solid var(--border-color); box-shadow: 0 0 30px rgba(59, 130, 246, 0.5);">
<img src="desk-dashboard.png" alt="SnapRAID Daemon Dashboard" style="width: 100%; height: auto; display: block;">
</div>
</div>
</div>
</section>
<p>
<span class="bold">SnapRAID</span> is a backup program designed for disk arrays, storing
parity information for data recovery in the event of up to six
disk failures.
</p>
<p>
Primarily intended for home media centers with large,
infrequently changing files, SnapRAID offers several features:
</p>
<ul>
<li>You can utilize disks already filled with files without the
need to reformat them, accessing them as usual.</li>
<li>All your data is hashed to ensure data integrity and prevent
silent corruption.</li>
<li>When the number of failed disks exceeds the parity count,
data loss is confined to the affected disks; data on
other disks remains accessible.</li>
<li>If you accidentally delete files on a disk, recovery is
possible.</li>
<li>Disks can have different sizes.</li>
<li>You can add disks at any time.</li>
<li>SnapRAID doesn't lock in your data; you can stop using it
anytime without reformatting or moving data.</li>
<li>To access a file, only a single disk needs to spin, saving
power and reducing noise.</li>
</ul>
<!-- Feature Spotlight Section -->
<section class="features-section">
<div class="container">
<h2 class="section-title">Feature Spotlight</h2>
<!-- Resilient Recovery -->
<div style="margin-bottom: 3rem;">
<h3 style="margin-bottom: 1.5rem; color: var(--text-accent); border-left: 3px solid var(--primary); padding-left: 1rem;">Resilient Recovery</h3>
<div class="grid grid-2-cols" style="margin-bottom: 2rem;">
<!-- Card 0: Surgical Recovery -->
<div class="card">
<h3>Full Recovery</h3>
<p class="card-subtitle">Total data reconstruction</p>
<p>If your hard disks die, SnapRAID can fully recover all the data from the failed drives, up to the number of parity disks you have assigned (protecting you from up to 6 simultaneous failures).</p>
</div>
<!-- Card 3: Silent Corruption Protection -->
<div class="card">
<h3>Silent Corruption Protection</h3>
<p class="card-subtitle">Total data integrity</p>
<p>All your data is hashed to ensure integrity and prevent "bit-rot." If a file suffers from silent corruption, SnapRAID detects it and repairs it using your parity information.</p>
</div>
</div>
<div class="grid grid-2-cols">
<!-- Card 1: Surgical Recovery -->
<div class="card">
<h3>Surgical Recovery</h3>
<p class="card-subtitle">Undelete and restore</p>
<p>If you accidentally delete files on a disk, recovery is possible. SnapRAID can reconstruct missing data and even undelete specific folders without affecting the rest of the array.</p>
</div>
<!-- Card 2: Fault Isolation -->
<div class="card">
<h3>Fault Isolation</h3>
<p class="card-subtitle">Confined data loss</p>
<p>When the number of failed disks exceeds the parity count, data loss is confined only to the affected disks. Data on all other healthy disks remains fully accessible and untouched.</p>
</div>
</div>
</div>
<p>
<span class="bold">SnapRAID</span> has also a
<a href="http://sourceforge.net/projects/snapraid/">SourceForge</a>
and a
<a href="https://github.com/amadvance/snapraid">GitHub</a> page.
</p>
<!-- Hardware Freedom -->
<div style="margin-bottom: 3rem;">
<h3 style="margin-bottom: 1.5rem; color: var(--text-accent); border-left: 3px solid var(--primary); padding-left: 1rem;">Hardware Freedom</h3>
<div class="grid grid-2-cols">
<!-- Card 1: Maximum Flexibility -->
<div class="card">
<h3>Maximum Flexibility</h3>
<p class="card-subtitle">Mix, match, and grow</p>
<p>Disks can have different sizes and different brands. You can add new disks to the array at any time as your storage needs grow, without the need for complex migrations.</p>
</div>
<!-- Card 2: Eco-Friendly Efficiency -->
<div class="card">
<h3>Eco-Friendly Efficiency</h3>
<p class="card-subtitle">Power-saving by design</p>
<p>To access a file, only a single disk needs to spin. This reduces noise, saves power, and extends the lifespan of your hardware compared to traditional RAID systems that spin every disk for every read.</p>
</div>
</div>
</div>
<p>
If you need help, go to the <a href="https://www.snapraid.it/support">Support</a> page.
</p>
<!-- Data Sovereignty -->
<div>
<h3 style="margin-bottom: 1.5rem; color: var(--text-accent); border-left: 3px solid var(--primary); padding-left: 1rem;">Data Sovereignty</h3>
<div class="grid grid-2-cols">
<!-- Card 1: Non-Locking Integration -->
<div class="card">
<h3>Non-Locking Integration</h3>
<p class="card-subtitle">Access your data, your way</p>
<p>You can utilize disks already filled with files without the need to reformat them. Access your files as usual, even without the program running. SnapRAID doesn't lock in your data; you can stop using it anytime without moving a single byte.</p>
</div>
<!-- Card 2: Open Source & Free -->
<div class="card" style="border-color: var(--text-accent);">
<h3>Open Source & Free</h3>
<p class="card-subtitle">Transparent, Community-Driven, and Cost-Free</p>
<p>SnapRAID is released under the GPLv3 license, ensuring the code remains open for inspection and improvement. There are no licensing fees, no subscriptions, and no hidden "Pro" tiers. You have full ownership of your data protection engine.</p>
</div>
</div>
</div>
<p>
Now go to <a href="download">Download</a>.
</p>
</div>
</section>
<p>
<span class="highlight">News!</span> Version <span class="bold">13.0 RELEASED!</span>
</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&currency_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>
<!-- Footer -->
<footer>
<div class="container footer-content">
<div class="footer-col">
<div class="logo">
<img src="android-chrome-192x192.png" width="32" height="32"/>
SnapRAID
</div>
<p>Copyright &copy; 2026 Andrea Mazzoleni</p>
<p class="license">Distributed under GPL v3 License</p>
</div>
<div class="footer-col">
</div>
</div>
</footer>
</body>
</html>

BIN
index.jpg

Binary file not shown.

Before

Width:  |  Height:  |  Size: 81 KiB

2677
log.html

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

Some files were not shown because too many files have changed in this diff Show more