Which filesystem

  • Hello,


    I just wanted to ask for a bit of help on here:
    I am currently testing various NAS opensource softwares around the place, in this case OMV, and I am still keep understanding what file system should I use.
    My home NAS build, will just be a setup for personal data (photos, music, documents, etc) expecting it to be on 2 drives as RAID1 and then another pool of data for movies/tv shows, in another pool of 4 disks I would say.Now the problem I am facing, is that I have read all over the internet that ZFS has correction of errors when written the data, as it is constantly reading what it writes, to check that it was written correctly, as far as I understood. Also this has a con, which is a lot of memory use.I was trying to find an alternative, in this case OMV, which uses other filesystems as ETX4 or XFS, but I have been researching for data according to this 2 filesystems, and found that they do not use that amount of memory, but that they are not designed to prevent data to be corrupted.
    So the issue in here is: Is there any way or manual script that can be executed for this 2 PMV filesystems to check if that was corrupted somewhere over the disk? I mean, I know about SMART for checking the disks. But in case something else fails, like maybe the RAM, or whatever, when would I start knowing that my data is being corrupted?
    I am currently asking this, because what I do not really want is to through to my NAS 10TB of personal data, and after a 1, 2 or 10 years, start seeing that half of my data is corrupted.
    Also, even if I have a backup, I do not really want to start copying corrupted data, as the backup will turn into a non sense.


    Hope I was clear, and hope someone will be able to through a bit of light on this topic :D


    Kind regards

  • ZFS uses scrub technique, which is set in OMV once a month. This means that OMV(ZFS) goes through the disks and finds and repairs if possible those blocks that are damaged ,eq:

  • search forum about snapraid:


    1.jpg



    But my suggest is that use ZFS and read more about how ZFs works

  • ZFS uses scrub technique, which is set in OMV once a month. This means that OMV(ZFS) goes through the disks and finds and repairs if possible those blocks that are damaged ,eq:

    Hello,


    Yes, I currently know about the scrub utility in Freenas, but by coming to openmediavault, what I want is to avoid using ZFS here, so I think scrub option for xfs or ext4, might not work. That is why I was asking for a solution about detecting corrupted data when using ext4 or xfs.



    search forum about snapraid:
    1.jpg



    But my suggest is that use ZFS and read more about how ZFs works

    Wow, I guess that is somehow, unraid works, doesn't it?


    That is quite interesting for the media pool I want to make, but in case I just want to make a RAID0, or go ahead with no redundant hard drive?


    I mean, maybe setting up a RAID0 with EXT4 or xfs. I know I might lose all my data if I lose 1 drive, but that is for what I have the backup for. The real issue I am facing on here, refers to data corruction, with other filesystems apart from ZFS, and how in case my data is being corrupted, may I know which one is corrupted, and why it was corrupted, and so on.


    Kind regards

  • take al look of reasons why disks fails and data get corrupt.
    if ram randomly fails, no filesystem on the world is able to correct that.
    But a smaller footprint of ram reduce the chance the filesystem is involved in Memory errors. logic. at the first view.
    To check if ram fail, there is ECC... a nas without ECC Rams maybe a more risky constellation.
    Mechanical Disks get often to hot. The CPU too. if the Disk Temperatur gets over 70 degree C...the risk of some data loss is 100%. even 50 degree C are to much. But Disks use checksum error correction inside. And smart take a look on that. If Smart complain, this has reasons! To eliminate Errors they invented Raid ... hardware raid... sofware raid.. with 1 controller, 2 controllers... raidlevels.. and so on. Doing mirroring 2 Disks on the same Controller/bus is simply a wrong aproach. And in highend Servers yo will never find such bad design bug! Good mirroring needs 2 independent controllers!
    A good strategy against Dataloss are backups, md5 checksums on files, a well planed Data path, raid, a stable filesystem and a good Hardware plan. dont pick one of them, all are important.
    i personaly prefer ext4 (a journaling system) with tools to check FS consitency start on boot and per cron.
    Others prefer XFS... i think its a good one... but im not expirienced in xfs. ZFS may work too.. but its known as memory consuming. All Filesystems and all Hardware work as expected without errors if you use them as intended,
    If this Basic isn't ususal, then put your raid in the trashcan and try to build a new one.
    These Aspects are chained togeher and the weakest Chainring will break if it works outside its specifications.
    I predict that it has the least to do with the filesystem. I think it rather a matter of taste which Filesystem you use.
    best use one that you are familiar with and that you can deal and trust with

    Equipment: a few Computers, lot's of waste heat, little time and a Pile of work.


    When solving problems, dig at the root instead of hacking at the leaves.

    Edited 2 times, last by Rd65 ().

  • At the end, it is your job to fix always possible upcomming FS errors and search for weaknes in your NAS. Not the Guys which told you fairy tales about something they never used by own.

    Equipment: a few Computers, lot's of waste heat, little time and a Pile of work.


    When solving problems, dig at the root instead of hacking at the leaves.

  • Yep, that is what I was looking for. But in case I select ext4, what tools do you use to check the consistency of the data? Up to what I know there is no scrub, right?



    EXT4 with snapraid has worked for me for several years now.

    hmmm, I see.... so you use ext4 and then snapraid, which seems to give some data protection, but in case I want to use RAID0 to strip data accross disks, and not make an unraid solution with snapraid, is there any way to add extra security like the checksum and scrub that snapraid gives?


    Kind regards

  • My holy grail is a backup utility with automatic bitrot detection and correction during backups. That is, the backup utility does a full snapshot, checksumming all new/changed files AND a partial scrub of unchanged files against the checksums. Perhaps 5% daily. If an error is detected it can be corrected by copying over either the original file to the corrupt backup or the backup file to the corrupt original.


    This requires the backups to be online. But that is how I do it anyway.


    Should be no more complex to use than rsync. Just specify source and destination and go. With sane defaults.


    Could do hardlinking as well, both between snapshots as rsync does, but also between files in a snapshot, the original files and even between different sets of snapshots. Easy once you checksum. Just store filesizes with the checksum and you are good to hardlink anything with anything.


    Using ZFS you need two redundant filesystems, one for the original files and one for the backups, to get automated error detection and correction. That seems like a waste.


    I have parts of it done. May work on it more during the holidays.

    Be smart - be lazy. Clone your rootfs.
    OMV 5: 9 x Odroid HC2 + 1 x Odroid HC1 + 1 x Raspberry Pi 4

  • hmmm, I see.... so you use ext4 and then snapraid, which seems to give some data protection, but in case I want to use RAID0 to strip data accross disks, and not make an unraid solution with snapraid, is there any way to add extra security like the checksum and scrub that snapraid gives?
    Kind regards

    ext4 is the file system. Snapraid is a parity system that is also not unraid. See comparison here: https://www.snapraid.it/compare


    I would stay away from raid0.

  • Hello,


    The only reason I was considering RAID0 was for the speed it will give me for my media disks. I have external backups for all that data, so in case I lose 1 drive, there is not much hassle to recover it.
    But what I was asking now is, in case I do not want to use snapraid, for example for personal data, and use xfs or ext4. Does those filesystems, have scrub option, or any other anticorruption method?


    Please let me know.


    Kind regards

  • You can create checksums and later create new checksums and see if something changed. But this is not built into the filesystem. You need some utility or script to do it.


    See for instance:


    https://github.com/ambv/bitrot
    https://forums.unraid.net/topi…it-rot-amp-some-hd-probs/
    https://bbs.archlinux.org/viewtopic.php?id=243724



    Lots and lots more to find if you look.


    Also rar-archives can be created with data protection records so errors may be fixed.

    Be smart - be lazy. Clone your rootfs.
    OMV 5: 9 x Odroid HC2 + 1 x Odroid HC1 + 1 x Raspberry Pi 4

  • pffff, thats quite a pain, though I appreciate the help :D I will take a look at it



    Good to know you have backups. Because if you're using RAID0 and you lose 1 drive, you lose everything.

    Yes, thats the point of it. But I now the protection I am looking for is to maintain healthy all my files. I do not want them to get corrupt at any point.


    Will research some info about all the filesystems we have been talking that have and doesn't have file corruption detection and will let you know.


    Kind regards

  • Hello guys,


    So I have been looking around about some information, like how does ZFS works, UNRAID, snapraid, and so on. And I got to the following conclusion:


    I want to build some sort of UNRAID solution with OMV, which means, I will need for sure mergefs/UnionFS to loadbalance my data through my disks. ZFS was discarded for lacking of this technique, meaning that it makes its own pool, and then it starts stripind the data in all disks, if you chose some sort of RAID.
    Regarding SnapRaid, I am still considering the point of using or not using it. Why? The case, is that probably I won't need it, as I won't be having a parity disk.
    So at the very end; I will have the following:


    2 x 4TB in RAID1
    4 x 8TB in "RAID0" - it is not completely RAID0 as at the very end the data will be load balanced with mergefs


    Up to this point, I need security for my data, so:


    Redundancy: It is already covered as per usual offsite backups, thats why of not using parity disk at the moment.
    File integrity: Here is where it comes, wether to decide to use or not Snapraid, I know Snapraid principle is to "backup" data in a parity disk, and protect it, by running scrubs of it. As I won't need parity, and just scrub option, using Snapraid, is maybe like killing a bird with a granade.
    So, apart from https://github.com/ambv/bitrot that recommended already @Adoby , do you know any other tool to cover data integrity just for an ext4 mergefs filesystem?
    In case of using bitrot solution, do you have any clue, that in case any corruption is detected, I will know which file was corrupted? So that I can restore it directly from the backup.
    Defragmentation: Do you know if OMV does have this option? Or if it is really needed?
    Other protection: Would you think about any other data protection I might need, or you might thing about, that I could be missing?


    Please let me know,


    Kind regards

  • Hello,


    I finally tried with snapraid for the checsumming stuff, and got this when tried to run it:


    Self test...
    No 'parity' specification in '/etc/snapraid.conf'


    Am I not able to run just 4 disks without a parity drive? I just want snapraid for checksumming, nothing else.


    Please let me know.


    Kind regards

  • I don't know if it is possible to use snapraid checksums without a parity drive.


    But I assume that it isn't. What would be the point?


    Say snapraid informs you that a file no longer match the expected checksum. What would you do then?

    Be smart - be lazy. Clone your rootfs.
    OMV 5: 9 x Odroid HC2 + 1 x Odroid HC1 + 1 x Raspberry Pi 4

  • Hello,


    Then in that case, I will check what type of file is, if is it important or not, and in case it is, I will just restore that file from my backup that is offsite.
    Up to what I read, you were doing the same with your backups, don't you?



    Kind regards

  • No. I am currently not well protected against bitrot. I don't have any real bitrot detection or protection system in place. Yet. Except possibly what is provided by default in normal drives. And extra backups in rar archives with added error protection records.


    I have tested some bitrot systems and I am working on one of my own.


    So far I have not experienced any serious problems with bitrot. It is a rare problem, it seems. But then I am not looking for it systematically.


    I want to avoid the effort of manual bitrot correction, manual restores from backups, and I want to avoid the cost of unnecessary redundancy for bitrot correction and backups.


    So restoring corrupt files from backups I consider a good solution, but I want to avoid having to do it manually.


    If I decided on snapraid I would use it with parity drives. I use mergerfs already.


    I am somewhat worried about bitrot. But I haven't found what I consider a good and reasonable solution yet.

    Be smart - be lazy. Clone your rootfs.
    OMV 5: 9 x Odroid HC2 + 1 x Odroid HC1 + 1 x Raspberry Pi 4

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!