diff --git a/content/blog/linux/open-zfs/why-do-all-my-buddies-keep-shilling-zfs.md b/content/blog/linux/open-zfs/why-do-all-my-buddies-keep-shilling-zfs.md index f3fc395..3748d27 100644 --- a/content/blog/linux/open-zfs/why-do-all-my-buddies-keep-shilling-zfs.md +++ b/content/blog/linux/open-zfs/why-do-all-my-buddies-keep-shilling-zfs.md @@ -97,8 +97,22 @@ The truly remarkable aspect is the remote machine's ability to verify data integ This, in turn, enables transferring your machine's backup to an untrusted third party. ### Integrity Check & Repair +ZFS is a file system known for prioritising data integrity protection. +It protects against various sources of data corruption, such as power problems, disk errors and more. +ZFS uses checksums and a Merkle tree structure to validate data at multiple levels in the file system hierarchy. +When data is accessed, its checksum is compared to the expected value, and if they don't match, ZFS can recover the data from redundant copies, if available. +Consistency of data held in memory, such as cached data in the ARC, is not checked by default because ZFS expects ECC.[2] ### Pooling and Raid Management +As mentioned above, in addition to being a FS, ZFS is also a volume manager. +ZFS implements volume management using pools. +ZFS pools are storage configurations that group physical drives (such as hard disks or SSDs) into a single unit for efficient data management. +They use a technology called RAID-Z to provide data redundancy and protection against drive failures. +Raid-Z is ZFS's own raid format based on the concepts of Raid 5.[2] +One of the key benefits of ZFS pooling is that the partitioning and formatting of the storage is completely handled by ZFS once the pool and raid configuration have been defined. +This allows the user to add new drives to the pool while it is running and being used. + +In addition to the mentioned features, ZFS also supports various others, such as Unix-permission based native SMB shares for Datasets. ## Things to keep in Mind - Counterarguments Since ZFS relies on RAM for caching files and metadata and during parity checking, bit flips would be disastrous. @@ -114,13 +128,13 @@ This article has grown much larger than I originally anticipated, but I'm happy --- [1] - OpenZFS Gentoo Wiki [2] - OpenZFS Wiki -[3] - OpenZFS Github -[4] - Common Development and Distribution License Wikipedia -[5] - Solaris ZFS of Solaris™ 10 Operating System function Fujitsu -[6] - ZFS Caching 45 Drives -[7] - ZFS Copy-on-write & Snapshots open-e -[8] - ZFS Deduplication TrueNAS -[9] - ZFS basics: enable or disable compression UnixTutorial -[10] - ZFS auf Linux/ Dataset DE Wikibooks -[11] - OpenZFS Native Encryption klara inc. -[12] - ZFS send/recv full snapshot - Unix Stackexchange \ No newline at end of file +[3] - OpenZFS Github +[4] - Common Development and Distribution License Wikipedia +[5] - Solaris ZFS of Solaris™ 10 Operating System function Fujitsu +[6] - ZFS Caching 45 Drives +[7] - ZFS Copy-on-write & Snapshots open-e +[8] - ZFS Deduplication TrueNAS +[9] - ZFS basics: enable or disable compression UnixTutorial +[10] - ZFS auf Linux/ Dataset DE Wikibooks +[11] - OpenZFS Native Encryption klara inc. +[12] - ZFS send/recv full snapshot - Unix Stackexchange \ No newline at end of file