Exercise 1: Rebuilding the Plan for a Bit-Rot-Protection Requirement — Possible Solution ==================================================================== Chapters that would change: fs1-3/fs1-4 (Btrfs/ZFS) and fs1-9 (the layering decision). What would be dropped: Per this chapter's own warn-box, "if bit-rot protection ever became an actual requirement... Btrfs or ZFS (fs1-3/fs1-4) would be the correct answer instead" of the ext4-on-LVM-on-mdadm stack actually built in this capstone. Concretely, this means dropping the separate mdadm layer (fs1-8) and the separate LVM layer (fs1-5) entirely -- per fs1-9's own integrated-approach description, "Btrfs's own built-in RAID profiles and ZFS's own RAID-Z... eliminate the separate RAID layer entirely -- the filesystem is the volume manager is the redundancy layer, all one system." There would be no /dev/md0 device created with mdadm at all, and no separate pvcreate/vgcreate/lvcreate step either, since Btrfs subvolumes or ZFS datasets (fs1-3/fs1-4) take over the role LVM's logical volumes played in this capstone's own stack. What would replace it: In place of Step 1 (mdadm --create) and Step 2 (pvcreate/vgcreate/ lvcreate/mkfs.ext4), a ZFS-based rebuild would use a single zpool creation command establishing both the redundancy and the storage pool at once, per fs1-4's own example: something like "zpool create tank mirror /dev/sdb /dev/sdc mirror /dev/sdd /dev/sde" to build the RAID-10-equivalent striped-mirror layout directly at the pool level, followed by "zfs create tank/data" in place of the separate LVM/mkfs steps. What would stay the same: Step 3 (a point-in-time snapshot before a risky step) and Step 4's own underlying idea (simulate a disk failure, replace it, verify recovery) both still apply conceptually, just using zfs snapshot and zpool replace instead of lvcreate -s and the mdadm --fail/--remove/--add sequence -- and this time, per fs1-3/fs1-4, the rebuild ("resilver" in ZFS's own terminology) and every subsequent read would be checksummed and self-healing, closing exactly the content-verification gap this capstone's own warn-box named as a real, deliberate limitation of the stack it actually built. WHY THIS WORKS AS AN ANSWER ------------------------------ This identifies specifically which two layers (mdadm and LVM) get eliminated and why, using fs1-9's own integrated-model explanation, and names the concrete replacement commands from fs1-4 rather than vaguely saying "use ZFS instead."