STO-210 · Storage & Filesystems · Advanced
ext4 & XFS Internals — full syllabus
The on-disk layout and operational behaviour of the two filesystems most production Linux runs on.
Who this course is for
Engineers who own production filesystem decisions — choosing between ext4 and XFS, tuning them, and performing the recovery when something corrupts at 3 a.m.
Prerequisites
- STO-201-level VFS knowledge or strong filesystem administration experience
- Linux administration with loop devices and image files
- Comfort reading C structs (on-disk layouts are read from source and headers)
Course outline
Day 1 — ext4 on disk and in memory
- Block groups, group descriptors and the superblock layout
- Extents vs block maps; the extent tree
- Directory indexing (htree) and inline data
- The journal (jbd2): ordered, writeback and journal modes and what each guarantees
- Inspection: dumpe2fs, debugfs, tune2fs and the ext4 sysfs knobs
Day 2 — XFS on disk and the fsync question
- Allocation groups and XFS's parallel layout
- B+trees everywhere: free space, inodes, extents and directories
- Delayed allocation and speculative preallocation
- The XFS log and log-force behaviour
- Crash consistency end to end: what fsync, fdatasync, O_SYNC and O_DIRECT really promise on both filesystems
- Inspection: xfs_info, xfs_db and xfs_io
Day 3 — Performance, repair and forensics
- Workload matching: small-file, large-file, metadata-heavy and parallel writers on both filesystems
- Fragmentation: causes, measurement and the defrag tools
- e2fsck vs xfs_repair: different philosophies, different failure modes
- Corruption forensics: reading a damaged filesystem with debugfs and xfs_db
- Backup and snapshot strategies consistent with each filesystem's guarantees
Hands-on labs
- Lab: dissect an ext4 image with dumpe2fs/debugfs and an XFS image with xfs_db — locate a file's extents and journal state by hand
- Lab: benchmark both filesystems with fio across small-file, large-file and fsync-heavy workloads and explain the divergence from the on-disk design
- Lab: compare ext4 journal modes under a crash-consistency workload and demonstrate what each mode loses on power failure
- Lab: corrupt-and-repair — damage a superblock, a journal and an inode table on expendable images, then recover with e2fsck/xfs_repair and verify the data
Capstone project
Run a full filesystem selection and recovery exercise: for a stated production workload you benchmark both candidates, write a one-page selection memo justified by your fio data and the crash-consistency guarantees, then recover a corrupted image of the winner to a verifiable state — checksums before corruption matching checksums after repair, or a precise statement of what was unrecoverable and why.
What you leave with
- On-disk literacy for both filesystems: debugfs and xfs_db without fear
- Journal/log modes and fsync semantics precise enough to design durability policies
- Benchmarks that map workload characteristics to allocation design
- A practised corrupt-and-repair drill for e2fsck and xfs_repair
Upcoming dates
| Dates | Where | Seats | Early bird | Regular | |
|---|---|---|---|---|---|
| 15 Nov – 17 Nov 20263 full days | RiyadhIn person · KAFD Conference Centre | 9 of 14 | SAR 8,100until 16 Oct | ||
| 22 Nov – 24 Nov 20263 full days | Kuwait CityIn person · Al Hamra Tower | 4 of 14 | KWD 670until 23 Oct | ||
| 29 Nov – 1 Dec 20263 full days | MuscatIn person · Knowledge Oasis Muscat | 9 of 14 | OMR 830until 30 Oct | ||
| 29 Nov – 6 Dec 20266 half-days | Gulf bandLive online · 09:00–13:00 GMT+3 | 5 of 20 | US$1,580until 30 Oct | ||
| 30 Nov – 2 Dec 20263 full days | OttawaIn person · Kanata North Tech Park | 4 of 14 | CAD 2,930until 31 Oct | ||
| 7 Dec – 9 Dec 20263 full days | TorontoIn person · MaRS Discovery District | 9 of 14 | CAD 2,930until 7 Nov | ||
| 7 Dec – 14 Dec 20266 half-days | Europe bandLive online · 09:00–13:00 CET | 10 of 20 | US$1,580until 7 Nov | ||
| 14 Dec – 16 Dec 20263 full days | LondonIn person · Shoreditch Works | 4 of 14 | GBP 1,680until 14 Nov | ||
| 14 Dec – 16 Dec 20263 full days | BerlinIn person · Factory Görlitzer Park | 9 of 14 | EUR 1,990until 14 Nov | ||
| 14 Dec – 21 Dec 20266 half-days | Americas bandLive online · 13:00–17:00 ET | 15 of 20 | US$1,580until 14 Nov |
Book a seat, or bring this course to your team
Seats can be reserved online; private delivery runs on-site or live online, adapted to your stack.
Questions about fit or prerequisites? Email hello@kernelsystems.academy. To save this syllabus, print this page to PDF from your browser.