From fedd06dda7f86a2b3600b1a360b6530032500dbb Mon Sep 17 00:00:00 2001 From: Andrea Mazzoleni Date: Mon, 13 Oct 2025 14:36:56 +0200 Subject: [PATCH] Auto update --- faq.html | 970 +++++++++++++++++++++++++------------------------------ 1 file changed, 440 insertions(+), 530 deletions(-) diff --git a/faq.html b/faq.html index 3ccfb28f..158fe5ea 100644 --- a/faq.html +++ b/faq.html @@ -60,18 +60,18 @@ Frequently Asked Questions for SnapRAID.

General

@@ -79,223 +79,210 @@ Frequently Asked Questions for SnapRAID.

Configuration

Use

Recover

Tech

Performance

Known Problems

General

-

What's SnapRAID?

+

What is SnapRAID?

-SnapRAID is an application able to make a partial backup of your disk array. -If some of the disks of your array fail, even if they are completely broken, you will be able to recover their content. -It's only a partial backup, because it doesn't allow to recover from a failure of the whole array, -but only if the number of failed disks are under a predefined limit. +SnapRAID is an application that creates a partial backup of your disk array. +If some disks in your array fail, even if they are completely broken, you can recover their contents. +It provides only a partial backup because it does not allow recovery from a failure of the entire array, +but only if the number of failed disks is below a predefined limit.

-

How is it different than RAID?

+

How is it different from RAID?

-RAIDs are mirroring solutions that propagate changes immediately to the parity data. -In this sense, RAIDs are not backups, because they don't allow to restore an old state of the array. +RAID solutions mirror data and propagate changes immediately to the parity data. +In this sense, RAID systems are not backups because they do not allow restoration of an earlier state of the array.

-SnapRAID is instead more similar at a backup solution, and you can restore the state of the last backup. -For example, with SnapRAID, if you delete by accident a file, you can easily restore it. +SnapRAID, however, is more akin to a backup solution, allowing you to restore the state of the last backup. +For example, with SnapRAID, if you accidentally delete a file, you can easily recover it.

-Others advantages over traditional RAID5/6 solutions are: +Other advantages over traditional RAID5/6 solutions include:

-Obviously RAID has other advantages, like having a better speed due data striping. -What is best for you, depends on your specific use case. +RAID has advantages, such as better speed due to data striping. +The best choice depends on your specific use case.

-

How is it different than ZFS/Btrfs snapshots and NTFS Shadow Copy?

+

How is it different from ZFS/Btrfs snapshots and NTFS Shadow Copy?

-SnapRAID creates a file-system snapshot conceptually similar at other snapshot solutions. -The difference is that the purpose of SnapRAID is to be able to recover a disk to the saved state -after a complete disk failure. +SnapRAID creates a file-system snapshot conceptually similar to other snapshot solutions. +However, its primary purpose is to recover a disk to its saved state after a complete disk failure.

-SnapRAID is more similar at the RAID-Z/RAID functionality of ZFS/Btrfs. -Compared to them, SnapRAID has the following advantages: +SnapRAID is more akin to the RAID-Z/RAID functionality of ZFS/Btrfs. +Compared to them, SnapRAID offers the following advantages:

-Obviously ZFS/Btrfs have other advantages, like being real-time solutions. -What is best for you, depends on your specific use case. +ZFS and Btrfs have advantages, such as being real-time solutions. +The best choice depends on your specific use case.

-

How is it different than other backup solutions?

+

How is it different from other backup solutions?

-With a normal backup solution you always need as much space as the full disk array for the backup. -With SnapRAID you need only one additional parity disk to be able to recover the most common case of a single disk failure. -Adding more parity disks, you can recover from more disk failures. +With a typical backup solution, you need as much space as the entire disk array for the backup. +With SnapRAID, you need only one additional parity disk to recover from the most common case of a single disk failure. +Adding more parity disks allows recovery from additional disk failures.

-Note that only a full backup allows to recover from a complete failure of the disk array and -it's surely the preferred solution if you can afford it. -SnapRAID is a good option if a full backup is not a possible solution. +Note that only a full backup allows recovery from a complete failure of the disk array, +making it the preferred solution if you can afford it. +SnapRAID is a good option when a full backup is not feasible.

-

What are the advantages of SnapRAID compared to similar solutions like unRAID/FlexRAID/Windows Storage Spaces?

+

What are the advantages of SnapRAID compared to similar solutions like unRAID, FlexRAID, and Windows Storage Spaces?

-You can see the Compare page to see it compared to other similar solutions. +Visit the Compare page to see a comparison with other similar solutions.

-A strong advantage of SnapRAID is the integrity and silent error management that is at the same level (if not better) -of the ZFS and Btrfs file-systems. Instead, unRAID and Storage Space have no integrity check at all! -FlexRAID is at least able to report silent errors, but not to fix them. +A key advantage of SnapRAID is its integrity and silent error management, which is at the same level as (or better than) +ZFS and Btrfs file systems. In contrast, unRAID and Windows Storage Spaces lack integrity checks.

How much does it cost?

-Nothing. It's a FreeSoftware application released with the GPLv3 license. +Nothing. SnapRAID is a free software application released under the GPLv3 license.

-

How to get support?

+

How can I get support?

-Go to the Forum. +Visit the Forum.

-

Has SnapRAID a GUI?

+

Does SnapRAID have a GUI?

-No. SnapRAID is a command line application. -But there is the Elucidate external GUI, -and a plugin for OpenMediaVault. +No, SnapRAID is a command-line application. +However, there is an external GUI called Elucidate, +and a plugin for OpenMediaVault.

-

Does SnapRAID provide encryption, virtual views/storage pooling, SMART monitoring and Power control?

+

Does SnapRAID provide encryption, virtual views/storage pooling, SMART monitoring, or power control?

-SnapRAID provides a basic virtual views/storage pooling solution, but it's also compatible -with any other pooling solutions. +SnapRAID provides a basic virtual views/storage pooling solution but is also compatible with other pooling solutions.

-For encryption, SMART monitoring, Power control and Data Recovery you can use other tools. -Here some suggestions: +For encryption, SMART monitoring, power control, and data recovery, you can use other tools. +Here are some suggestions:

@@ -312,7 +299,7 @@ Discontinued? 28/5/2014 - + @@ -326,13 +313,13 @@ Discontinued? 28/5/2014 - + - +
LinuxWindowsMac OS X
Encryption -dmcrypt/LUKS
+dm-crypt/LUKS
(tutorial)
VeraCrypt -
SMART monitorSMART monitoring smartmontools, GSmartControl
Power ControlPower control hdparm hdparm
Data recoveringData recovery ddrescue, safecopy, @@ -343,84 +330,81 @@ Discontinued? 28/5/2014
-

Is SnapRAID suitable to backup the home/My Documents directory?

+

Is SnapRAID suitable for backing up the home/My Documents directory?

-No. If you have a limited amount of data that can be easily saved in an external USB HD, -or in online backup services, it doesn't make sense to use SnapRAID. -SnapRAID should be used when you have to backup a very large amount of data, -many Tera bytes, and a full backup copy of a such amount of data is not possible -in any other way. +No. If you have a limited amount of data that can be easily saved to an external USB drive +or an online backup service, using SnapRAID is unnecessary. +SnapRAID is best suited for backing up a very large amount of data, +such as many terabytes, where a full backup copy is not feasible.

-

Is SnapRAID suitable to backup the boot OS disk?

+

Is SnapRAID suitable for backing up the boot OS disk?

-No. For the disk used for booting your machine and containing the OS files, -it's better to use another solution, like RAID1 or a mirror copy. -SnapRAID needs an OS to run, and then it cannot recover the OS if the OS is missing. +No. For the disk used to boot your machine and containing the OS files, +it’s better to use another solution, such as RAID1 or a mirror copy. +SnapRAID requires an operating system to run and cannot recover the OS if it is missing.

- -

Can SnapRAID hash files wihout parity computation?

+

Can SnapRAID hash files without parity computation?

-No. It's not possible to use SnapRAID to only hash files. The hashing used by SnapRAID is meant to be used -in combination of parity computation, and it's not the best implementation for a hash only solution. +No, SnapRAID cannot be used solely to hash files. Its hashing is designed to work in combination with parity computation +and is not optimized for hashing alone.

-You can find a list of file verification tools at: -Wikipedia: Comparison_of_file_verification_software. +For a list of file verification tools, see: +Wikipedia: Comparison of file verification software.

Setup

-For a setup example in Ubuntu 14.04 you can check the SnapRAID Zack's tutorial. +

+For a setup example in Ubuntu 14.04, see Zack's SnapRAID tutorial. +

Do I need one or more parity disks?

-As a rule of thumb you can stay with one parity disk (RAID5) with up to four data disks, -and then using one parity disk for each group of seven data disks, like in the table: +As a rule of thumb, use one parity disk (RAID5) for up to four data disks, +and then add one parity disk for each group of seven data disks, as shown in the table:

- + - + - + - + - + - +
ParitiesData disks
1/Single Parity/RAID52 - 42–4
2/Double Parity/RAID65 - 145–14
3/Triple Parity15 - 2115–21
4/Quad Parity22 - 2822–28
5/Penta Parity29 - 3529–35
6/Hexa Parity36 - 4236–42

-This table takes into account that more parity levels also help to recover from unsynced array, -and that likely you are running all the disks in the same box and environment, meaning that -their failures could be correlated. +This table accounts for the fact that more parity levels help recover from an unsynced array +and that disk failures may be correlated if all disks are in the same environment.

-

-Take care that multiple failures happen. At now the worst case reported in the SnapRAID history, -is a four disks failure, successfully recovered using four parities. +Multiple failures can occur. The worst case reported in SnapRAID’s history +is a four-disk failure, successfully recovered using four parities.

-

-Some interesting articles about number of parity levels and failure rate of disks are: +For more information on parity levels and disk failure rates, see: Why RAID 5 stops working in 2009, Why RAID 6 stops working in 2019, Does RAID 6 stop working in 2019?, @@ -428,51 +412,49 @@ Some interesting articles about number of parity levels and failure rate of disk How long do disk drives last?.

-

Which file-system is recommended for SnapRAID ?

+

Which file system is recommended for SnapRAID?

-For the data disks, follow these suggestions: +For data disks, consider these suggestions:

- + - + + - + - + - +
DataResult
AnyOK. In general you can use whatever file-sytem you like. Just see the following notes for some exceptions.OK. You can generally use any file system you prefer, with some exceptions noted below.
BtrfsOK. Ensure to build SnapRAID with the libblkid library to get UUID support. -You will be warned at every run if this doesn't happen. -Note that multiple Btrfs snapshots are not supported. -OK. Ensure SnapRAID is built with the libblkid library for UUID support. +You will be warned at each run if this is not the case. +Note that multiple Btrfs snapshots are not supported.
ZFSPartial. You won't get UUID support, but this doesn't prevent the use of the core SnapRAID functionalities. -Note that multiple ZFS snapshots are not supported. -Partial. UUID support is unavailable, but core SnapRAID functionalities remain usable. +Note that multiple ZFS snapshots are not supported.
FATUnsure. There are reports -of duplicate inodes cases. NTFS is anyway a lot faster. Use it instead.Uncertain. There are reports +of duplicate inode cases. NTFS is significantly faster and recommended instead.
ReFSNo. ReFS uses 128 bit inodes, -and SnapRAID doesn't support them yet. -No. ReFS uses 128-bit inodes, +which SnapRAID does not yet support.

-For the parity disks, follow these suggestions: +For parity disks, consider these suggestions:

- + @@ -480,24 +462,22 @@ For the parity disks, follow these suggestions: - + - + - + - + @@ -506,135 +486,129 @@ You can anyway use it if you limit the use of the parity disk to contain only th
ParityResult
ext4OK if the disks are NOT bigger than 16 TB. The parity is stored in a single big file, and ext4 has a upper limit of 16 TB for file size.OK if disks are not larger than 16 TB. The parity is stored in a single large file, and ext4 has a 16 TB file size limit.
XFS
BtrfsOK. But ensure to build SnapRAID with the libblkid library to get UUID support. -You will be warned at every run if this doesn't happen.OK. Ensure SnapRAID is built with the libblkid library for UUID support. +You will be warned at each run if this is not the case.
JFSNo. It doesn't support the fallocate() command needed to allocated the parity files. -
-It also doesn't seem to implement at the best the posix_fadvise() command.
No. It does not support the fallocate() command needed to allocate parity files. +It also does not optimally implement the posix_fadvise() command.
NTFSOK in Windows. No in Linux, as it doesn't support fallocate() command needed to allocated the parity files. -You can anyway use it if you limit the use of the parity disk to contain only the parity file. -OK in Windows. Not supported in Linux, as it does not support the fallocate() command needed to allocate parity files. +You can use it if the parity disk contains only the parity file.
FATNo. You cannot store files bigger than 4 GB. It's also not journaled. Use NTFS instead.No. Files larger than 4 GB cannot be stored. It is also not journaled. Use NTFS instead.
HFS+

-In Linux, to get more space for the parity, it's recommended to format the parity file-system with the -m 0 -T largefile4 options. -Like: +In Linux, to maximize space for the parity file system, format it with the -m 0 -T largefile4 options, like:

mkfs.ext4 -m 0 -T largefile4 DEVICE

-On a 8 TB disk you can save about 400 GB. This is also expected to be as fast as the default, if not faster. +On an 8 TB disk, this can save about 400 GB. It is also expected to be as fast as, or faster than, the default.

Which hardware configuration is recommended?

-For best performance it's recommended to have all the disks connected with SATA and not with USB. +For optimal performance, connect all disks via SATA, not USB.

-Check Raj's Prototype Builds -for some examples of hardware setups. +See Raj's Prototype Builds +for examples of hardware setups.

-For choosing harddisk, you can check Backblaze's What Hard Drive Should I Buy?, +For choosing hard drives, refer to Backblaze's What Hard Drive Should I Buy? and Backblaze's Enterprise Drives: Fact or Fiction?.

Is a multi-core CPU recommended?

-No. SnapRAID is usually not CPU bound. The limiting factor is the read performance from disks. -So, also a single core CPU should be enough. +No. SnapRAID is typically not CPU-bound; the limiting factor is disk read performance. +A single-core CPU is usually sufficient.

-For example, in my system I get a combined read speed of 400 MiB/s, -but SnapRAID is able to hash at 12000 MiB/s in a single core. +For example, in my system, I achieve a combined read speed of 400 MiB/s, +but SnapRAID can hash at 12,000 MiB/s on a single core.

-

Is a 64 bit operating system recommended?

+

Is a 64-bit operating system recommended?

-Yes. SnapRAID works better in a 64 bit operating system. It can access more than 4 GiB of memory, +Yes. SnapRAID performs better on a 64-bit operating system, as it can access more than 4 GiB of memory and use faster hashing and parity algorithms. -Anyway, if you have less than 30 TB of data, it performs very well also using a 32 bit -operating system. +However, for less than 30 TB of data, it performs well on a 32-bit operating system too.

-

How much memory SnapRAID requires to run?

+

How much memory does SnapRAID require to run?

-Approximatively, SnapRAID requires 1 GiB of memory for 16 TB of data. +Approximately, SnapRAID requires 1 GiB of memory for every 16 TB of data.

-If you have less memory than required, the recommended option is to install more memory in the machine. +If you have insufficient memory, the recommended solution is to install more memory.

-Otherwise you have to increase the blocksize option in the configuration file. -The memory occupation is inversely proportional at the select block_size. -For example, using "blocksize 512", instead of the default 256, halves the memory occupation. -But take care that using a bigger block size will also increase the amount of wasted space -in the parity files. +Alternatively, increase the blocksize option in the configuration file. +Memory usage is inversely proportional to the selected block size. +For example, using "blocksize 512" instead of the default 256 halves memory usage. +However, a larger block size increases wasted space in parity files.

-Note that running with memory swapped to disk is not recommended because it will be a huge slowdown. +Running with memory swapped to disk is not recommended, as it significantly slows performance.

-

Do I have to check the SMART attributes of my disks?

+

Should I check the SMART attributes of my disks?

-Yes! 20% of the disks die before 4 years of life, as +Yes. Approximately 20% of disks fail within four years, as reported by Backblaze's How long do disk drives last?. -Monitoring SMART attributes you can anticipate the failures and avoid to lose data! +Monitoring SMART attributes can help anticipate failures and prevent data loss.

-If you see one of the SMART attributes +If any of the SMART attributes Reallocated_Sector_Ct (5), Reported_Uncorrect (187), Command_Timeout (188), Current_Pending_Sector (197), -and Offline_Uncorrectable (198) -different than zero, replace the disk as recommended by +or Offline_Uncorrectable (198) +are non-zero, replace the disk, as recommended by Backblaze's Hard Drive SMART Stats.

-Check also Google's Failure trends in a large disk drive population -where is found that: +See also Google's Failure trends in a large disk drive population, +which found:

-
after the first reallocation, drives are
+
After the first reallocation, drives are
 over 14 times more likely to fail within
 60 days than drives without reallocation
 counts.
-
after the first probational event, drives
+
After the first probational event, drives
 are 16 times more likely to fail within
 60 days than drives with zero probational
 counts.
-
after the first offline reallocation, drives have over
+
After the first offline reallocation, drives have over
 21 times higher chances of failure within 60 days than
 drives without offline reallocations.

-that also recommens to replace the disk after the first error in the SMART attributes Reallocated_Sector_Ct (5), -Current_Pending_Sector (197) and Offline_Uncorrectable (198). +These findings recommend replacing a disk after the first error in the SMART attributes Reallocated_Sector_Ct (5), +Current_Pending_Sector (197), or Offline_Uncorrectable (198).

-

Is it possible to use SnapRAID in a dual boot configuration, like Windows and Linux?

+

Is it possible to use SnapRAID in a dual-boot configuration, such as Windows and Linux?

-Yes. It's possible to use SnapRAID in a dual boot configuration. Doesn't matter the OS combination used. +Yes, SnapRAID can be used in a dual-boot configuration, regardless of the OS combination.

-In such case it's recommended to run SnapRAID only from one OS. -In theory, it should also work if run in both OS. -But it's a scenario not really tested, and there is always the risk to mess-up things, -like using different SnapRAID version, configuration, content files, and so on. +It is recommended to run SnapRAID from only one OS. +While it may work if run from both OSes, this scenario is not thoroughly tested and risks issues +due to different SnapRAID versions, configurations, or content files.

Configuration

-

What's the SnapRAID 'content' file?

+

What is the SnapRAID 'content' file?

-It's the file used by SnapRAID to save the list of all files present in your array with -all the checksum, timestamp and any other information needed. +The content file stores the list of all files in your array, including their checksums, timestamps, and other necessary information.

-These file will be of about few GiB depending of how big is your array. -Approximatively for 10 TB of data, you'll need 500 MiB of content file. +This file will be approximately a few GiB in size, depending on the array’s size. +For 10 TB of data, the content file will be about 500 MiB.

What are the SnapRAID 'parity' and 'N-parity' files?

-They are the files used by SnapRAID to store the parity data used in recovering. +These files store the parity data used for recovery.

-These files will grow in size as the biggest amount of data stored in a single disk -of the array. +Their size grows to match the largest amount of data stored on any single disk in the array.

-

How to configure SAMBA to share the Pool directory

+

How do I configure SAMBA to share the pool directory?

-To configure SAMBA to share the pool directory, for example /pool, you should add to -your /etc/samba/smb.conf the following options: +To configure SAMBA to share the pool directory (e.g., /pool), add the following options to +your /etc/samba/smb.conf:

 # In the global section of smb.conf
@@ -649,143 +623,135 @@ guest ok = yes
 wide links = yes
 
-

How to use more disks than drive letters in Windows?

+

How can I use more disks than available drive letters in Windows?

-You can use Volume Mount points. You can mount a disk in a directory without -using a drive letter. Just like in Linux. +Use Volume Mount Points to mount a disk in a directory without +using a drive letter, similar to Linux.

Use

-

What are the most important things to do to prevent damages?

+

What are the most important steps to prevent data loss?

-If you want to minimize the probability to lose data, do this: +To minimize the risk of data loss, follow these steps:

    -
  • Before running the first "sync", check your RAM memory with a program -like memtest86. -Bad RAM is the most frequent cause of data loss when using SnapRAID!
  • -
  • Frequently run the "sync" command. From once a day to once a week.
  • -
  • Run the "scrub" command once a week.
  • -
  • Use smartmontools or similar utility -to monitor the SMART attributes. -At the first Reallocated_Sector_Ct, Current_Pending_Sector or Offline_Uncorrectable, replace the disk, -even if it still works.
  • +
  • Before running the first "sync", test your RAM with a program +like MemTest86. +Faulty RAM is the most common cause of data loss with SnapRAID.
  • +
  • Run the "sync" command frequently, from once a day to once a week.
  • +
  • Run the "scrub" command weekly.
  • +
  • Use smartmontools or a similar utility +to monitor SMART attributes. +Replace a disk at the first sign of Reallocated_Sector_Ct, Current_Pending_Sector, or Offline_Uncorrectable, +even if it still functions.
-

How can I add an additional data disk to an existing array?

+

How can I add a data disk to an existing array?

-To add a new data disk at the array, add the new "disk" option in the configuration file, -and then run a "sync" command. +To add a new data disk to the array, add the new "disk" option in the configuration file, +then run a "sync" command:

 snapraid sync
 

-If the disk is empty, the "sync" command will be immediate. +If the disk is empty, the "sync" command will complete immediately.

How can I remove a data disk from an existing array?

-To remove a data disk from the array do: +To remove a data disk from the array, follow these steps:

    -
  • Change in the configuration file the related "disk" option to point to an empty directory
  • -
  • Remove from the configuration file any "content" option pointing to such disk
  • +
  • Change the related "disk" option in the configuration file to point to an empty directory.
  • +
  • Remove any "content" option pointing to that disk from the configuration file.
  • Run a "sync" command with the "-E, --force-empty" option:
     snapraid sync -E
     
    -The "-E" option tells at SnapRAID to proceed even when detecting an empty disk.
  • -
  • When the "sync" command terminates, remove the "disk" option from the configuration file.
  • +The "-E" option allows SnapRAID to proceed even when detecting an empty disk. +
  • After the "sync" command completes, remove the "disk" option from the configuration file.

-Your array is now without any reference to the removed disk. +The array will then have no reference to the removed disk.

-

How can I add, or remove, a parity disk to an existing array?

+

How can I add or remove a parity disk in an existing array?

-To add a new parity level, add the proper "N-parity" option in the configuration file, and then run the "sync" command, -using the "-F, --force-full" option: +To add a new parity level, add the appropriate "N-parity" option in the configuration file, then run the "sync" command +with the "-F, --force-full" option:

 snapraid -F sync
 

-The "-F" option tells at SnapRAID to recompute the full parity. +The "-F" option instructs SnapRAID to recompute the full parity.

-During the process you will be always protected because the existing parity is not modified -(note that this happens only from version 11.0). +During this process, your existing parity remains unmodified, ensuring continued protection +(note that this applies only from version 11.0).

-If you wish to remove a parity, you can simply remove the highest -"N-parity" option from the configuration and then delete the parity file. +To remove a parity level, remove the highest "N-parity" option from the configuration file and delete the parity file.

-Take care that after removing a parity file, you cannot reuse it anymore, -because it gets outdated after the next "sync" command. +Note that after removing a parity file, it cannot be reused, as it becomes outdated after the next "sync" command.

How can I verify a single data disk?

-The "scrub" command verifies all the content of the array, -and it's not possible to limit the verification to a single data disk. -To verify only a data disk, you can run a "check" audit -command limited to the disk you want to verify. +The "scrub" command verifies the entire array and cannot be limited to a single data disk. +To verify only one data disk, use the "check" audit command with the disk specified:

 snapraid check -a -d DISK_NAME
 

-This command will verify all the check-sums of the files in the disk specified. -The other data and parity disks won't be read and they won't be verified. +This command verifies the checksums of all files on the specified disk. +Other data and parity disks are not read or verified.

How can I replace a data disk?

-If you lost the disk, see the recovering section in the manual. -Otherwise, copy all the files in the new disk, -maintaining the same directory structure and names. +If the disk is lost, refer to the recovery section in the manual. +Otherwise, copy all files to the new disk, maintaining the same directory structure and names.

-In Linux use the command: +In Linux, use the command:

 cp -av /from_dir/. /to_dir
 

-WARNING! If you want to use the 'rsync' or 'mc' commands, ensure that they are recent ones. +WARNING: If using 'rsync' or 'mc' commands, ensure they are recent versions. 'rsync' must be at least version 3.1.0 (2013), and 'mc' at least version 4.8.19 (2017). -Older versions are not able to copy the sub-second timestamps. +Older versions may not copy sub-second timestamps.

-In Windows use the command: +In Windows, use the command:

 robocopy F:\from_dir T:\to_dir /e /copyall
 

-Then change the SnapRAID configuration to point the disk at the new mount point and run a "diff" -command to ensure that everything is placed correctly. +Update the SnapRAID configuration to point to the new mount point, then run a "diff" command to ensure everything is correct:

 snapraid diff
 

-If "diff" reports some "added" or "removed" files likely you have copied files -with a different directory structure. -In such case you have to fix it, until "diff" reports only "equal", "restored" or "copied" files. +If "diff" reports "added" or "removed" files, you may have copied files with a different directory structure. +Correct this until "diff" reports only "equal", "restored", or "copied" files.

-Now you can check that the files were really copied correctly, you can run a "check" audit command -limited to the replaced disk to check the check-sum of all the files. +To verify that files were copied correctly, run a "check" audit command on the replaced disk to verify checksums:

 snapraid check -a -d DISK_NAME
 

-Finally you can run "sync" to update the SnapRAID state. This command will be almost immediate. +Finally, run "sync" to update the SnapRAID state. This command will complete almost immediately:

 snapraid sync
@@ -793,41 +759,35 @@ snapraid sync
 
 

How can I replace a parity disk?

-If the disk is still accessible, first ensure to have a synced array running a sync command: +If the disk is still accessible, ensure the array is synced by running:

 snapraid sync
 

-Then you can copy the big parity file to the new disk, -and configure the new parity location in the configuration file. +Copy the parity file to the new disk and update the parity location in the configuration file.

-Then run sync again to make snapraid to recognize the new disk. This command will be almost immediate. +Run "sync" again to make SnapRAID recognize the new disk. This command will complete almost immediately:

 snapraid sync
 

-In Linux a good copy command is ddrescue. -You can use: +In Linux, a good copy command is ddrescue. For example:

 ddrescue /OLD_DISK/parity /NEW_DISK/parity /tmp/copy.log
 

-This will copy the parity file from the old to new location, and in case of errors, -it will continue copying what can be copied. -To retry to copy the problematic sections, you can just retry the same copy -command. +This copies the parity file from the old to the new location, continuing despite errors. +To retry problematic sections, repeat the same command.

-Having a partial parity file, is still beneficial, as it will still allow to recover -data as long it uses the valid part. +A partial parity file is still useful, as it allows recovery using the valid parts.

-If you have a partially damaged or totally lost parity file, you can run the "fix" command to recreate it, -but ensure to use the -d option to fix only the interested parity and not the other disks. +If the parity file is partially damaged or lost, use the "fix" command with the -d option to recreate it, targeting only the affected parity:

 snapraid fix -d PARITY_NAME
@@ -835,112 +795,101 @@ snapraid fix -d PARITY_NAME
 
 

How can I safely move files from one disk to another?

-In case you need to move files from one data disk of the array to another disk -also in the array, the 100% safe way to proceed is: +To safely move files between data disks in the array, follow these steps:

-
  • Copy the files to the new location.
  • -
  • Run a 'diff' command to verify that the just copied files are correctly identified as 'copy'.
  • +
  • Run a 'diff' command to verify that the copied files are identified as 'copy'.
  • Run a 'sync' command.
  • Delete the files from the original location.
  • -
  • Run again a 'sync' command.
  • +
  • Run another 'sync' command.
-

-This process gives the guarantee that even if disks die during the sync process, -you will be able to recover everything. It also verifies that the hashes of all the -moved files are matching the original ones. +This process ensures that, even if disks fail during the sync process, +you can recover all data. It also verifies that the hashes of moved files match the originals.

-

Can I defragment the data and parity disks?

+

Can I defragment data and parity disks?

-Yes, you can defragment data and parity disks. Defragmentation doesn't affect SnapRAID. +Yes, defragmentation does not affect SnapRAID.

-

How can I make SnapRAID nicer with other processes?

+

How can I make SnapRAID less resource-intensive for other processes?

-In Linux, you can use the ionice command with Idle priority. Like: +In Linux, use the ionice command with idle priority, like: +

 ionice -c 3 snapraid sync
 
-

-

How can I upgrade to a newer version of SnapRAID ?

+

How can I upgrade to a newer version of SnapRAID?

-To upgrade SnapRAID to a new version, just replace the old SnapRAID executable with the new one. -The new SnapRAID will use your existing configuration, content and parity files. +To upgrade, replace the old SnapRAID executable with the new one. +The new version will use your existing configuration, content, and parity files.

-By time to time the format of the content file changes, but a newer SnapRAID -is always able to read all old formats. So, it's always possible to upgrade. -If necessary, the content file format is updated the next time it's written. +Occasionally, the content file format changes, but newer SnapRAID versions can read all older formats. +The content file is updated to the new format the next time it is written, if necessary.

-Instead, it's in general not possible to downgrade to an old SnapRAID. -You can anyway try, and if the old SnapRAID is not able to read the new content file, -you will be advised by a proper message. +Downgrading to an older SnapRAID version is generally not possible. +If the old version cannot read the new content file, you will receive an appropriate message.

Recover

-

How can I undelete a just deleted file?

+

How can I undelete a recently deleted file?

-Simply run the "fix" command using a filter for the specified file. Like: +Run the "fix" command with a filter for the specified file, like:

 snapraid fix -f my_just_deleted_file
 

-To undelete a directory use: +To undelete a directory, use:

 snapraid fix -f my_just_deleted_dir/
 

-To undelete all the missing files use: +To undelete all missing files, use:

 snapraid fix -m
 
-

What happen if I add files and a disk breaks before I have updated the parity with "sync"?

+

What happens if I add files and a disk fails before updating parity with "sync"?

-All the files added in the broken disk after the last "sync" command are lost. -All the other data is safe and it can be recovered. +Files added to the failed disk after the last "sync" command are lost. +All other data is safe and can be recovered.

-

What happen if I delete files and a disk breaks before I have updated the parity with "sync"?

+

What happens if I delete files and a disk fails before updating parity with "sync"?

-In the worst case, any file deleted or modified in not broken disks may prevent to recover the same amount of data in the broken disk. -For example, if you deleted 10GB of data, you may not be able to recover 10GB of data from the broken disk. -The exact amount of data lost depends on how much the deleted and broken data overlaps in the parity. +In the worst case, files deleted or modified on non-failed disks may prevent recovery of an equivalent amount of data on the failed disk. +For example, deleting 10 GB of data may prevent recovery of 10 GB from the failed disk. +The exact data loss depends on how much the deleted and failed data overlap in the parity.

-To reduce this problem you can use two parity disks. This improves a lot the chances to recover the data. +Using two parity disks significantly improves recovery chances.

-A way to be always safe, is to don't delete files, but move them to another directory in the same disk, -but outside the directory tree checked by SnapRAID. Then you can run the "sync" command and only after -its completion really delete the files. -In case you get a disk failure during the "sync", you have to just run the "fix" command specifying where -the deleted files are stored: +To ensure safety, avoid deleting files directly. Instead, move them to another directory on the same disk, +outside the SnapRAID-checked directory tree. Run the "sync" command, then delete the files. +If a disk fails during the "sync", run the "fix" command, specifying the location of the deleted files:

 snapraid fix -i dir_of_deleted_files
 
-

What happen if a disk breaks during a "sync" ?

+

What happens if a disk fails during a "sync"?

-You are still able to recover data. In the worst case, you will be able to recover as much data as if the -disk would have broken before the "sync". -But if the "sync" process already run for some time, SnapRAID is able to use the partially synced data -to recover more. -To improve the recovering you can also use the "autosave" configuration option to save the intermediate -content file during the sync process. +You can still recover data. In the worst case, you can recover as much data as if the disk failed before the "sync". +If the "sync" process has progressed, SnapRAID uses the partially synced data to recover more. +Using the "autosave" configuration option saves intermediate content files during the sync process, improving recovery.

-

What are and how to fix "Data errors" in "sync"?

+

What are "data errors" in "sync", and how do I fix them?

 Syncing...
 309505: Data error for file d4/data/index.db at position 40960
@@ -948,30 +897,26 @@ WARNING! Unexpected data error in a data disk! The block is now marked as bad!
 Try with 'snapraid -e fix' to recover!
 

-Data errors happen when SnapRAID detects that the content of a file changed but the write time of the file didn't. -This is a condition that normally should never happen and it may be the result of a silent error in the disk, -or the signal that something got wrong at the file-system level, like when you poweroff the machine without a -proper shutdown. -

-

If a data error is found, the "sync" process continues, and erroneous blocks are marked as bad -and fixed at the next "fix" command. -To just fix the silent errors and not the whole array, you can use the "-e fix" command -that usually takes only few seconds. +Data errors occur when SnapRAID detects that a file’s content has changed without an updated write timestamp. +This should not happen and may indicate a silent disk error or a file system issue, such as an improper shutdown.

-If you have errors in more than on file, it's also possible that something is not working at hardware level. -The first thing to try is to check your PC memory with an automated tool like memtest86. -Another thing to check is the disk cabling and the CPU heat. +If a data error is found, the "sync" process continues, marking erroneous blocks as bad. +These can be fixed with the "-e fix" command, which typically takes only a few seconds: +

+
+snapraid -e fix
+
+

+If errors occur in multiple files, check for hardware issues. +Test your PC’s memory with a tool like MemTest86. +Also, check disk cabling and CPU temperature.

-Another possibility is that you are using programs that change files without modifying the time-stamp of the file itself. -
-In Linux this is almost guaranteed by the operating system. The only exception is for memory mapped files -not yet closed. -
-In Windows it's a bit trickier. Even using normal writes, you have the guarantee of an updated time-stamp -only after closing it. -See the MSDN WriteFile(): +Another possibility is that a program modified files without updating their timestamps. +In Linux, this is rare, except for memory-mapped files not yet closed. +In Windows, timestamps are guaranteed to update only after closing a file. +See MSDN WriteFile():

 When writing to a file, the last write time is not fully updated until
@@ -980,38 +925,36 @@ accurate last write time, close the file handle immediately after writing
 to the file.
 

-When using memory mapped file, the program must ensure to update the time-stamp manually, -because Windows doesn't do it automatically. -See the MSDN CreateFileMapping(): +For memory-mapped files in Windows, the program must manually update the timestamp, +as Windows does not do so automatically. +See MSDN CreateFileMapping():

-When modifying a file through a mapped view, the last modification time-stamp
+When modifying a file through a mapped view, the last modification timestamp
 may not be updated automatically. If required, the caller should use SetFileTime
-to set the time-stamp.
+to set the timestamp.
 

-To avoid all these Windows problems, simply ensure to run "sync" when no program is using the files into the array. +To avoid these issues in Windows, run "sync" when no programs are accessing files in the array.

-

How can I store in a file all the messages from a check and fix command

+

How can I store all messages from a check or fix command in a file?

-To generate a log file you can use the "-l" option. +Use the "-l" option to generate a log file:

 snapraid check -l mylog.log
 
-

-These log files could be really big, many GB. If they are too big to be opened for your editor, -you can use HxD. +These log files can be large, potentially several GB. If too large for your editor, +use HxD.

-

How can I recover the snapraid.conf file

+

How can I recover the snapraid.conf file?

-There is the dedicated -C, --gen-conf command that writes a template configuration file +Use the "-C, --gen-conf" command to generate a template configuration file compatible with your content file. -Note that this configuration requires some manual adjustments to set the disk mount points, -but in the comments you'll find the required information to do so. +Manual adjustments are needed to set disk mount points, but comments in the file provide guidance:

 snapraid -C snapraid.content > snapraid.conf.new
@@ -1019,25 +962,29 @@ snapraid -C snapraid.content > snapraid.conf.new
 
 

Tech

-

If the SnapRAID "check" command says it's all OK. Is it really OK?

-Yes. SnapRAID checks all your files with a 128 bit check-sum. -If it says that they are correct, they really are. - -

What integrity checksum is used?

-SnapRAID uses Murmur3 and SpookyHash 128 bit hashes. -Murmur3 is the default in 32 bit platforms, SpookyHash in the default for 64 bit ones. - -

Why integrity checksum are important?

-Integrity check-sum are important to detect silent errors, -when the HD is returning garbage without reporting any error. - +

If the SnapRAID "check" command reports everything is OK, is it really OK?

-An introduction to this problem is in this article: -Data corruption is worse than you know +Yes. SnapRAID verifies all files with a 128-bit checksum. +If it reports they are correct, they are. +

+ +

What integrity checksum does SnapRAID use?

+

+SnapRAID uses Murmur3 and SpookyHash 128-bit hashes. +Murmur3 is the default on 32-bit platforms, and SpookyHash is the default on 64-bit platforms. +

+ +

Why are integrity checksums important?

+

+Integrity checksums detect silent errors when a hard drive returns corrupt data without reporting an error.

-A good analysis of this risk is in the paper: -An Analysis of Data Corruption in the Storage Stack +For an introduction to this issue, see: +Data corruption is worse than you know. +

+

+For a detailed analysis, see: +An Analysis of Data Corruption in the Storage Stack:

 A significant number (8% on average) of corruptions
@@ -1046,147 +993,129 @@ possibility of data loss. In this case, protection against
 double disk failures is necessary to prevent data loss.
 
-

How can SnapRAID recover also if a disk break during a 'sync'?

+

How can SnapRAID recover if a disk fails during a 'sync'?

-Before the sync process start, SnapRAID saves a special content file that contains -a description of both the states before and after the sync. -This allows SnapRAID to try two different recovery strategies. +Before starting a sync, SnapRAID saves a special content file describing both the pre- and post-sync states. +This allows SnapRAID to attempt two recovery strategies.

-For each block to recover, it first assumes that the parity was correctly computed, -just like if "sync" was completed successfully. -If this recovering fails, it then assumes that parity was not yet updated, -ignoring any new file added in the array. +For each block to recover, it first assumes the parity was correctly computed, as if the "sync" completed successfully. +If this fails, it assumes the parity was not yet updated, ignoring any new files added to the array.

-Also in this case, using a double parity helps to recover when there are overlapping changes in the array. +Using double parity improves recovery when there are overlapping changes in the array.

-

Does SnapRAID allow to access data disks during a 'sync'?

+

Can I access data disks during a 'sync'?

-Yes. You can safely read from data disks while a 'sync' is running. +Yes, you can safely read from data disks during a 'sync'.

-You can also write, and if this interferes with the SnapRAID 'sync', -the process will continue anyway, just skipping that written part. +You can also write, and if this interferes with the 'sync', +the process continues, skipping the written part.

-This obviously could affect a potential recovery, but it's just like if you wrote -just after the 'sync' completed. +This may affect potential recovery, but it is equivalent to writing just after the 'sync' completes.

-

Does SnapRAID retry reads or writes if a disk is not working?

+

Does SnapRAID retry reads or writes if a disk fails?

-No. SnapRAID never retries disk operations. It reports the error and then it tries -to continue anyway. After a limit of 100 errors, it then stops the execution. +No, SnapRAID does not retry disk operations. It reports errors and attempts to continue. +After 100 errors, it stops execution.

-In these conditions, it's better to allow the user to try to save manually as much as data possible -before the disk dies definitively. -Trying an automatic long sequence of retries, will likely kill the disk. -If you want to retry, you have to just repeat the command. +In such cases, it’s better to allow manual data recovery before the disk fails completely. +Automatic retries could further damage the disk. +To retry, repeat the command manually.

-You can control the 100 errors limit using the "-L, --error-limit" option. +You can adjust the 100-error limit using the "-L, --error-limit" option.

-In the case of "fix" and "check" commands you can restart from the interrupted point using the "-s, --start" -option specifying the block number that generated the error. +For "fix" and "check" commands, you can resume from the point of interruption using the "-s, --start" option, specifying the block number that caused the error.

-In the case of "sync" command, the latest state is anyway saved before termination. -So, just restarting it will continue where stopped. +For the "sync" command, the latest state is saved before termination, so restarting it will continue from where it stopped.

-

What's the snapraid.content.lock file?

+

What is the snapraid.content.lock file?

-It's a file used by SnapRAID to check if another SnapRAID instance is already running. -It's created where the first content file is placed. +This file is used by SnapRAID to check if another instance is running. +It is created where the first content file is stored.

-

What's the notice about zero sub-second timestamp?

+

What does the notice about zero sub-second timestamps mean?

-In the 'status' command you may now get a notice like: +In the 'status' command, you may see:

 You have XXXXX files with zero sub-second timestamp.
-Run the 'touch' command to set it to a not zero value.
+Run the 'touch' command to set it to a non-zero value.
 

-It means that a number of your files have a timestamp approximated at the second value, -when instead your filesystem can store a more precise timestamp, with a sub-second precision. +This indicates that some files have timestamps rounded to the nearest second, +even though your file system supports sub-second precision.

-This is not a problem by itself, but it could limit the SnapRAID effectiviness to detect -moved or copied files between different disks. +While not a problem, this may limit SnapRAID’s ability to detect moved or copied files between disks.

-You have the option to set that subsecond timestamp to a random value using the new 'touch' command. -Note that the second part of the timestamp is not modified. +You can set sub-second timestamps to a random value using the 'touch' command, which does not modify the second part of the timestamp.

Performance

-

Which is the optimal hardware configuration to get the best performance?

+

What is the optimal hardware configuration for the best performance?

-The most important factor is to connect all the disks using (E)SATA connections, -to avoid slowdown caused by the controller. Avoid any kind of USB disks. +The most critical factor is using (E)SATA connections for all disks to avoid controller slowdowns. +Avoid USB disks.

-The second important factor is use disks with similar performance, because the read/write -speed is limited by the slowest disk of the array. -After a sync operation, it's printed a short stats with the wait times for each disk, -that could help to identify a bottleneck caused by a slow disk. +The second factor is using disks with similar performance, as the array’s read/write speed is limited by the slowest disk. +After a sync, SnapRAID displays statistics with wait times for each disk, helping identify bottlenecks.

-As last, a fast CPU could improve the speed when having a lot of disks. -You can detect if the CPU is a limiting factor, checking the CPU usage during sync operations. +Finally, a fast CPU can improve performance with many disks. +Check CPU usage during sync operations to determine if it’s a limiting factor.

-

Which is the optimal blocksize to get the best performance?

+

What is the optimal block size for the best performance?

-The default blocksize should be already the best one. +The default block size is typically optimal.

-Note that increasing it doesn't necessarily improve the performance. -In some cases, it could decrease it. +Increasing it may not improve performance and could reduce it in some cases.

-

Which is the optimal Linux read-ahead size to get the best performance?

+

What is the optimal Linux read-ahead size for the best performance?

-The default Linux read-ahead size of 128 KiB already ensures the best performance -for the default SnapRAID block size of 256 KiB. -If you use a bigger block size, you should configure the read-ahead size to be at least equal -to half of the SnapRAID block size. +The default Linux read-ahead size of 128 KiB is optimal for SnapRAID’s default block size of 256 KiB. +If using a larger block size, set the read-ahead size to at least half the SnapRAID block size.

-For example, if you want to use a SnapRAID block size of 512 KiB, -it's recommended to configure a read-ahead size of 256 KiB for sdX using: +For example, with a SnapRAID block size of 512 KiB, configure a read-ahead size of 256 KiB for sdX using:

 echo 256 > /sys/block/sdX/queue/read_ahead_kb
 

-Note that if you want to use a SnapRAID block size smaller than 256 KiB, it's recommended to don't configure a specific -read-ahead size, and just use the default value. +For a SnapRAID block size smaller than 256 KiB, use the default read-ahead size.

-

How fast are the hash and parity computation?

+

How fast are the hash and parity computations?

-Murmur3 hash is very fast on 32 bits, SpookyHash is even faster on 64 bits. -The speed of parity computation is always good up to double parity, -even in architectures without SSE support. -Beyond double parity having a CPU with SSSE3 support is recommended. -For low end CPUs without SSE, there is a special, but incompatible, triple parity -support working well also without SSE. -See 'z-parity' in the manual for more info. +Murmur3 hash is very fast on 32-bit systems, and SpookyHash is even faster on 64-bit systems. +Parity computation is efficient up to double parity, even without SSE support. +Beyond double parity, a CPU with SSSE3 support is recommended. +For low-end CPUs without SSE, a special, incompatible triple-parity option is available. +See 'z-parity' in the manual for details.

-The following are the result on a Core i5-4670K @ 3.4 GHz. -You can check your values with the -T option. +The following results are from a Core i5-4670K @ 3.4 GHz. +Check your values with the -T option:

-root@redstar:/root# snapraid  -T
+root@redstar:/root# snapraid -T
 snapraid v7.0 by Andrea Mazzoleni, http://www.snapraid.it
 Compiler gcc 4.8.1
 CPU GenuineIntel, family 6, model 60, flags mmx sse2 ssse3 sse42 avx2
@@ -1231,112 +1160,94 @@ RAID functions used for recovering with 'fix':
 
 

Known Problems

-

Why does my machine reboots or crashes while SnapRAID is running?

+

Why does my machine reboot or crash while SnapRAID is running?

-SnapRAID pushes the system to extreme conditions, and if the machine has a latent problem, -it could result in an unexpected system crash or reboot. +SnapRAID pushes the system to extreme conditions, which may expose latent hardware or driver issues, +resulting in a system crash or reboot.

-Even if the problem happens only when SnapRAID is running, it's without any doubt a hardware -or driver issue because SnapRAID is just a standard user application that cannot reboot or -crash the system. +Although the issue occurs only when SnapRAID is running, it is undoubtedly a hardware or driver problem, +as SnapRAID is a standard user application that cannot crash or reboot the system.

-Possible thing to checks are: +Check the following:

    -
  • Check your system memory with memtest86.
  • -
  • Check your HD cabling.
  • -
  • Ensure that your power supply can sustatin all the HDs spinning at the same time.
  • -
  • Check that the temperature of your system is not too high.
  • -
  • Update any system driver related to storage.
  • -
  • Check in systemlog or EventViewer if there is any hint of the possible issue.
  • +
  • Test system memory with MemTest86.
  • +
  • Verify hard drive cabling.
  • +
  • Ensure the power supply can support all hard drives spinning simultaneously.
  • +
  • Check that the system temperature is not too high.
  • +
  • Update storage-related system drivers.
  • +
  • Review system logs or Event Viewer for clues about the issue.

-

Why in Linux does SnapRAID abort without any error message?

+

Why does SnapRAID abort without an error message in Linux?

-Likely you have too few free memory, and the Linux OOM (out-of-memory) killer -terminates SnapRAID because it's using too much memory. -You can use the Linux 'free' command to check how much free memory you have. +This is likely due to insufficient free memory, causing the Linux out-of-memory (OOM) killer +to terminate SnapRAID for using too much memory. +Check available memory with:

 free -m
 

-If it's too small, you have to install more memory in the machine. +If memory is low, install more memory in the machine.

-

Why in 'sync' do I get the error 'Failed to grow parity file 'xxx' to size xxx due lack of space.'?

+

Why do I get the error 'Failed to grow parity file 'xxx' to size xxx due to lack of space' during 'sync'?

-This means that SnapRAID needs to grow the parity file to a size that cannot be contained in the -parity disk. +This error indicates that SnapRAID needs to expand the parity file to a size that exceeds the available space on the parity disk.

-The first thing to check is to ensure that no other data is stored in the parity disk. -Leave if only for the parity file. -Otherwise you have to move the files mentioned in the output to another data disk -to reduce the size of the needed parity. +Ensure no other data is stored on the parity disk, reserving it exclusively for the parity file. +Alternatively, move files mentioned in the output to another data disk to reduce the required parity size.

-If you are using Linux, an alternate approach is to reformat the parity disk using -specific options to increase the available space, like: +In Linux, you can reformat the parity disk to increase available space using:

 mkfs.ext4 -m 0 -T largefile4 DEVICE
 

-The '-T largefile4' and '-m 0' options should give more space available for the parity file. +The '-T largefile4' and '-m 0' options provide more space for the parity file.

Why do I get the error 'Internal inode xxx inconsistency...'?

-This means that SnapRAID found two different files using the same inode. -This is theoretically something that should never happen, -but in some specific conditions is instead possible. +This error occurs when SnapRAID detects two different files using the same inode, +a condition that should theoretically never happen but can occur in specific cases.

-First ensure that the mentioned files were not modified while SnapRAID was running. -If files are renamed, deleted or recreated while SnapRAID is running, it's possible -that inodes are reused, causing this condition. +Ensure the mentioned files were not modified while SnapRAID was running. +Renaming, deleting, or recreating files during SnapRAID operation can cause inode reuse, triggering this error.

-If you are using a FAT file-system in Windows, try to convert it to NTFS. -Theoretically inodes (FileIndex) are -unique even in FAT, -but this condition was already seen in the field. +If using a FAT file system in Windows, convert to NTFS. +Although inodes (FileIndex) are theoretically unique in FAT, +this issue has been observed in practice.

-

Why with .xls files do I get the error 'Data change at file...'?

- +

Why do I get the error 'Data change at file...' with .xls files?

-Unfortunately the Excel application does dirty tricks when handling .xls files, -that may cause the followings data error: +Excel modifies .xls files upon opening, even without saving, to store the name of the last user who accessed the file. +This allows it to warn if another user tries to open the file simultaneously. +Excel restores the original timestamp, but SnapRAID detects the modification, reporting a data error:

-
 Data change at file '/xxx/xxx.xls' at position '0'
 WARNING! Unexpected data modification of a file without parity!
 
-

-This happens because Excel modifies the files after opening them, even if you don't press 'Save'. -It stores the name of the last user that opened it to be able to report if another user tries -to open the same file at the same time. -To avoid to have the file triggered as modified, it restores the time-stamp to its original value. -But the file was modified, and SnapRAID reports it. -

- -

-To workaround the problem you can see -How to prevent Excel from modifying the file on exit?, -or you can switch to the .xlsx format. +To work around this, see +How to prevent Excel from modifying the file on exit?, +or switch to the .xlsx format.

Why are VeraCrypt containers never saved?

-VeraCrypt (a fork of TrueCrypt) by default has enabled the option Preserve modification time-stamp of file containers -that makes impossible at SnapRAID, and at other backup programs, to detect that a file container is changed. -Ensure to disable this option in VeraCrypt. +VeraCrypt (a fork of TrueCrypt) has a default option, Preserve modification timestamp of file containers, +that prevents SnapRAID and other backup programs from detecting changes to file containers. +Disable this option in VeraCrypt.

@@ -1368,4 +1279,3 @@ Ensure to disable this option in VeraCrypt. -