Microkernel based hobby OS

doc

Changed files
+2131
docs
+2131
docs/RESCUE_EDITION_PLAN.md
··· 1 + # The Healer's Touch: AethelOS Rescue Edition 2 + 3 + **Subtitle:** *When Systems Fall, The Healer Arrives* 4 + **Status:** Planned 5 + **Priority:** Very High (Real-world use case) 6 + **Dependencies:** VFS layer, World-Tree storage, Eldarin shell 7 + **Estimated Timeline:** 8-12 weeks 8 + **Target Release:** v0.3.0 "The Healer" 9 + **Last Updated:** January 2025 10 + 11 + --- 12 + 13 + ## Table of Contents 14 + 15 + 1. [The Vision](#the-vision) 16 + 2. [Why This Changes Everything](#why-this-changes-everything) 17 + 3. [Target Audiences](#target-audiences) 18 + 4. [Core Features](#core-features) 19 + 5. [User Scenarios](#user-scenarios) 20 + 6. [Eldarin Rescue Commands](#eldarin-rescue-commands) 21 + 7. [Bootable USB Creation](#bootable-usb-creation) 22 + 8. [Implementation Roadmap](#implementation-roadmap) 23 + 9. [Technical Architecture](#technical-architecture) 24 + 10. [Competitive Analysis](#competitive-analysis) 25 + 11. [Marketing Strategy](#marketing-strategy) 26 + 12. [Success Metrics](#success-metrics) 27 + 28 + --- 29 + 30 + ## The Vision 31 + 32 + > *"When hard drives crash and bootloaders break, when files vanish and systems fail, the Healer arrives on a silver disc—not with arcane commands and cryptic syntax, but with beauty, intelligence, and grace."* 33 + 34 + ### The Problem 35 + 36 + **Every day, millions of people lose data:** 37 + - Crashed operating systems that won't boot 38 + - Accidentally deleted files 39 + - Corrupted filesystems 40 + - Broken bootloaders 41 + - Ransomware attacks 42 + - Hardware failures 43 + 44 + **Existing rescue tools are:** 45 + - ❌ Ugly (1990s command-line interfaces) 46 + - ❌ Arcane (complex, expert-only commands) 47 + - ❌ Fragmented (need different tools for each task) 48 + - ❌ Slow (brute-force file searching) 49 + - ❌ Unsafe (C code that crashes during critical operations) 50 + 51 + ### The AethelOS Solution 52 + 53 + **A bootable USB that:** 54 + - ✅ **Boots on any x86-64 PC** (no installation required) 55 + - ✅ **Reads any filesystem** (FAT32, ext4, NTFS, APFS*) 56 + - ✅ **Beautiful interface** (Eldarin shell, not cryptic commands) 57 + - ✅ **Intelligent search** (World-Tree queries, not grep) 58 + - ✅ **Automatic versioning** (undo accidental changes) 59 + - ✅ **Safe** (Rust - won't crash during recovery) 60 + - ✅ **Fast** (boots in seconds, operates in real-time) 61 + 62 + ### The Killer Insight 63 + 64 + **AethelOS isn't just an experimental OS anymore.** 65 + 66 + **It's the rescue disc everyone wishes existed.** 67 + 68 + People will: 69 + 1. **Use it for rescue operations** (immediate value) 70 + 2. **Fall in love with the interface** (beautiful, intuitive) 71 + 3. **Realize they want this as their daily OS** (adoption path!) 72 + 73 + **This is how you bootstrap an OS:** 74 + - Not: "Abandon your OS for mine" (too risky) 75 + - But: "Use this to save your current OS" (safe, valuable) 76 + - Then: "Why not use this all the time?" (natural progression) 77 + 78 + --- 79 + 80 + ## Why This Changes Everything 81 + 82 + ### 1. Real-World Use Case (Today) 83 + 84 + **Not:** "Cool experimental OS, maybe useful someday" 85 + **But:** "Essential tool I need RIGHT NOW" 86 + 87 + Every IT professional needs a rescue disc. AethelOS can be THE rescue disc. 88 + 89 + ### 2. Immediate Value Proposition 90 + 91 + **SystemRescue users:** ~500,000 downloads/year 92 + **GParted Live users:** ~1,000,000 downloads/year 93 + **Hiren's Boot CD users:** ~2,000,000+ downloads/year (outdated, but still used!) 94 + 95 + **Market size:** Millions of potential users who NEED this tool. 96 + 97 + ### 3. Gateway to Adoption 98 + 99 + ``` 100 + User journey: 101 + 1. "My Windows crashed, need rescue disc" 102 + 2. Downloads AethelOS Rescue USB 103 + 3. "Wow, this interface is beautiful!" 104 + 4. Saves their files with ease 105 + 5. "This is so much better than Windows/Linux..." 106 + 6. Tries AethelOS as daily OS 107 + 7. Converted! 108 + ``` 109 + 110 + **This is how Firefox beat IE:** Make a better browser, people switch. 111 + **This is how Chrome beat Firefox:** Make it faster, people switch. 112 + **This is how you beat Windows/Linux:** Make rescue operations beautiful, then show them the OS. 113 + 114 + ### 4. Differentiation 115 + 116 + **Every other OS:** 117 + - Tries to be better at what Windows/Linux already do 118 + - Hard to convince people to switch 119 + - Chicken-and-egg problem (no apps because no users) 120 + 121 + **AethelOS Rescue:** 122 + - Does something Windows/Linux CAN'T do well 123 + - People use it ALONGSIDE their current OS (no switching required!) 124 + - Builds user base BEFORE asking them to switch 125 + 126 + --- 127 + 128 + ## Target Audiences 129 + 130 + ### Primary Audiences (Launch) 131 + 132 + #### 1. IT Professionals & Sysadmins 133 + **Size:** ~20 million worldwide 134 + **Pain points:** 135 + - Need reliable rescue tools 136 + - Tired of ugly SystemRescue/GParted interfaces 137 + - Want better file search capabilities 138 + - Need cross-platform support 139 + 140 + **Why AethelOS:** 141 + - Professional-grade tools with beautiful UX 142 + - World-Tree queries find files faster 143 + - Works on Windows, Linux, and Mac systems 144 + - Rust safety = no crashes during critical operations 145 + 146 + **Willingness to pay:** High (companies budget for tools) 147 + 148 + --- 149 + 150 + #### 2. Data Recovery Services 151 + **Size:** $10B+ industry 152 + **Pain points:** 153 + - Need advanced file discovery tools 154 + - Timeline reconstruction is manual/difficult 155 + - Metadata-based search is limited 156 + - Multiple tools needed for different filesystems 157 + 158 + **Why AethelOS:** 159 + - World-Tree indexes metadata automatically 160 + - Temporal queries (find files by date/time) 161 + - Content-based search (find files even if renamed) 162 + - Unified interface for all filesystems 163 + 164 + **Willingness to pay:** Very high (charge clients $500-5000 per recovery) 165 + 166 + --- 167 + 168 + #### 3. Digital Forensics Experts 169 + **Size:** $5B+ industry 170 + **Pain points:** 171 + - Timeline reconstruction is tedious 172 + - Need non-destructive investigation tools 173 + - Cross-filesystem analysis is complex 174 + - Tool chains are fragmented 175 + 176 + **Why AethelOS:** 177 + - Automatic version history tracking 178 + - Read-only mounts by default 179 + - Cross-filesystem queries 180 + - Beautiful reporting interface 181 + 182 + **Willingness to pay:** Very high (government/enterprise budgets) 183 + 184 + --- 185 + 186 + #### 4. Power Users / Enthusiasts 187 + **Size:** ~50 million worldwide 188 + **Pain points:** 189 + - Existing rescue discs are ugly/hard to use 190 + - Want better file recovery tools 191 + - Interested in new technology 192 + - Appreciate good design 193 + 194 + **Why AethelOS:** 195 + - Actually fun to use 196 + - Feels like magic (intelligent queries) 197 + - Open source (can customize) 198 + - Cool factor (Rust, innovative design) 199 + 200 + **Willingness to pay:** Medium (enthusiast budgets) 201 + 202 + --- 203 + 204 + ### Secondary Audiences (Later) 205 + 206 + #### 5. Computer Repair Shops 207 + **Size:** ~100,000 shops in US alone 208 + **Pain points:** 209 + - Need reliable tools for customer repairs 210 + - Want fast, efficient workflows 211 + - Customers expect professionalism 212 + - Need to fix Windows, Linux, and Mac 213 + 214 + **Why AethelOS:** 215 + - Professional appearance (impress customers) 216 + - Fast operations (save time = more customers) 217 + - Universal (one tool for everything) 218 + - Reliable (Rust safety) 219 + 220 + --- 221 + 222 + #### 6. Educational Institutions 223 + **Size:** Universities, community colleges, coding bootcamps 224 + **Pain points:** 225 + - Teach system administration 226 + - Need good examples of OS design 227 + - Students need practical tools 228 + - Want modern, well-designed software 229 + 230 + **Why AethelOS:** 231 + - Great teaching tool (clean Rust code) 232 + - Students actually want to use it 233 + - Demonstrates modern OS concepts 234 + - Open source (free for education) 235 + 236 + --- 237 + 238 + ## Core Features 239 + 240 + ### 1. Universal Filesystem Support 241 + 242 + **Read support (v0.3.0):** 243 + - ✅ FAT32 (USB drives, SD cards, old Windows) 244 + - ✅ ext4 (Linux systems, most servers) 245 + - ✅ NTFS (Windows 7/8/10/11) 246 + - ✅ ext2/ext3 (older Linux systems) 247 + 248 + **Write support (v0.3.0):** 249 + - ✅ FAT32 (universal compatibility) 250 + - ✅ ext4 (Linux systems) 251 + - ⚠️ NTFS (read-only initially, write in v0.4.0) 252 + 253 + **Future support (v0.4.0+):** 254 + - ⏳ APFS (macOS) 255 + - ⏳ exFAT (large file USB drives) 256 + - ⏳ Btrfs (Linux advanced filesystems) 257 + - ⏳ ZFS (servers, NAS) 258 + 259 + --- 260 + 261 + ### 2. Intelligent File Discovery (World-Tree Queries) 262 + 263 + **Traditional tools:** 264 + ```bash 265 + # Slow, path-based, no intelligence 266 + $ find / -name "*.docx" -mtime -7 -size +100k 267 + ``` 268 + 269 + **AethelOS:** 270 + ```bash 271 + # Fast, metadata-indexed, intelligent 272 + > seek documents from last-week larger-than 100KB 273 + ``` 274 + 275 + **Query capabilities:** 276 + 277 + **By metadata:** 278 + ```bash 279 + > seek photos where camera="Canon EOS 5D" 280 + > seek documents where author="John Smith" 281 + > seek videos where duration > 10-minutes 282 + > seek files where created between "2024-01-01" and "2024-01-31" 283 + ``` 284 + 285 + **By content:** 286 + ```bash 287 + > seek files where contains "project proposal" 288 + > seek code where language="rust" and contains "unsafe" 289 + > seek documents where contains "budget 2024" 290 + ``` 291 + 292 + **By essence (file type):** 293 + ```bash 294 + > seek scrolls # Text documents 295 + > seek tomes # Executables 296 + > seek tapestries # Images 297 + > seek chronicles # Videos 298 + > seek runes # Configuration files 299 + ``` 300 + 301 + **Cross-filesystem:** 302 + ```bash 303 + > seek all-my-photos from-all-drives 304 + Scanning: C:\ (NTFS), /dev/sda2 (ext4), /Volumes/Data (APFS) 305 + Found: 15,847 photos across 3 filesystems 306 + ``` 307 + 308 + --- 309 + 310 + ### 3. Automatic Version History 311 + 312 + **Every file accessed gets versioned automatically:** 313 + 314 + ```bash 315 + > show-versions /etc/fstab 316 + v1: 2024-01-01 10:00 (512 bytes) - Original 317 + v2: 2024-01-15 14:30 (548 bytes) - Added new mount 318 + v3: 2024-01-20 09:15 (423 bytes) - Broken! ← current 319 + 320 + > restore /etc/fstab to v2 321 + ✓ Restored working version 322 + 323 + > diff v2 v3 324 + - UUID=xxx-xxx-xxx /mnt/data ext4 defaults 0 0 325 + + UUID=xxx-xxx-xxx /mnt/dta ext4 defaults 0 0 # Typo! 326 + ``` 327 + 328 + **Use cases:** 329 + - Undo accidental edits 330 + - Recover deleted files 331 + - See what changed when system broke 332 + - Timeline reconstruction for forensics 333 + 334 + --- 335 + 336 + ### 4. Beautiful Eldarin Shell 337 + 338 + **Not this:** 339 + ```bash 340 + # Cryptic, expert-only 341 + $ mount -t ext4 /dev/sda1 /mnt/recovery 342 + $ fsck.ext4 -y /dev/sda1 343 + $ find /mnt/recovery -name "*.docx" -mtime -7 344 + $ cp -r /mnt/recovery/home/user/Documents /media/backup/ 345 + ``` 346 + 347 + **But this:** 348 + ```bash 349 + # Intuitive, beautiful 350 + > mount /dev/sda1 linux ext4 351 + > heal /dev/sda1 352 + > seek documents from last-week at linux 353 + > backup linux:/home/user/Documents to /rescue-drive/ 354 + ``` 355 + 356 + **Features:** 357 + - ✅ Plain language commands 358 + - ✅ Helpful error messages 359 + - ✅ Tab completion 360 + - ✅ Command history (up/down arrows) 361 + - ✅ Progress indicators with visual progress bars 362 + - ✅ Color-coded output 363 + - ✅ Built-in help (`help mount`, `help seek`) 364 + 365 + --- 366 + 367 + ### 5. Safe Operations (Rust) 368 + 369 + **C-based rescue tools:** 370 + - ❌ Segfaults during critical operations 371 + - ❌ Memory corruption can cause data loss 372 + - ❌ Buffer overflows are common 373 + - ❌ No memory safety guarantees 374 + 375 + **AethelOS (Rust):** 376 + - ✅ No segfaults (memory safety guaranteed) 377 + - ✅ No undefined behavior 378 + - ✅ Panic = controlled failure (not random corruption) 379 + - ✅ Thread-safe operations 380 + - ✅ Zero-cost abstractions 381 + 382 + **This matters during data recovery:** 383 + ``` 384 + Bad: Tool crashes → partial copy → corrupted data → data loss 385 + Good: Safe operation → complete copy → verified data → success 386 + ``` 387 + 388 + --- 389 + 390 + ### 6. Fast Boot & Operation 391 + 392 + **Design goals:** 393 + - Boot in <10 seconds (minimal kernel) 394 + - Filesystem mount in <2 seconds 395 + - Queries return results in <1 second (indexed) 396 + - File operations at native speed 397 + 398 + **Optimizations:** 399 + - Minimal kernel (no unnecessary drivers) 400 + - VFS layer is zero-cost abstraction 401 + - World-Tree uses efficient indexing 402 + - Rust compiles to fast native code 403 + 404 + --- 405 + 406 + ### 7. Multi-Boot Coexistence 407 + 408 + **Install alongside existing OS:** 409 + 410 + ``` 411 + Disk layout: 412 + /dev/sda1 - Windows (NTFS) → Keep existing Windows 413 + /dev/sda2 - Linux (ext4) → Keep existing Linux 414 + /dev/sda3 - AethelOS Rescue (1GB) → Add small rescue partition 415 + ``` 416 + 417 + **Or run from USB:** 418 + ``` 419 + USB stick: 420 + - Boot AethelOS from USB 421 + - No installation required 422 + - Works on any PC 423 + - Doesn't touch existing system 424 + ``` 425 + 426 + --- 427 + 428 + ## User Scenarios 429 + 430 + ### Scenario 1: Crashed Windows System 431 + 432 + **User:** Sarah, graphic designer 433 + **Problem:** Windows 10 won't boot after update 434 + **Needs:** Recover project files before reinstalling 435 + 436 + **With traditional tools:** 437 + ```bash 438 + # Boot SystemRescue USB 439 + # Wait 2 minutes for boot 440 + # Type cryptic commands: 441 + $ lsblk # Figure out which partition is Windows 442 + $ mkdir /mnt/windows 443 + $ mount -t ntfs /dev/sda2 /mnt/windows 444 + $ cd /mnt/windows/Users/Sarah/Documents 445 + $ ls -la # Manually browse directories 446 + $ find . -name "*.psd" -mtime -30 # Find Photoshop files 447 + $ cp -r Projects /media/backup/ # Copy to external drive 448 + # 30+ minutes, multiple errors, frustration 449 + ``` 450 + 451 + **With AethelOS:** 452 + ```bash 453 + # Boot AethelOS USB (5 seconds) 454 + > scan-disks 455 + Found Windows partition at /dev/sda2 (NTFS) 456 + 457 + > mount /dev/sda2 windows ntfs 458 + ✓ Mounted as /windows 459 + 460 + > seek files where creator="Sarah" 461 + and modified > 30-days-ago 462 + and essence != "Cache" 463 + Analyzing... Found 1,247 files (15.2 GB) 464 + 465 + > preview results 466 + Projects/ClientA/banner.psd (50 MB) 467 + Projects/ClientB/logo.ai (12 MB) 468 + Documents/Invoices/*.xlsx (147 files) 469 + ... 470 + 471 + > backup results to /rescue-drive/sarah-backup/ 472 + [████████████████████████░░] 95% (14.5 GB / 15.2 GB) 473 + ✓ Backup complete! 474 + 475 + > create-manifest /rescue-drive/manifest.txt 476 + ✓ Created detailed file list 477 + 478 + # Total time: 5 minutes, zero errors, happy user 479 + ``` 480 + 481 + **Result:** Sarah recovers all files quickly, understands what happened, recommends AethelOS to colleagues. 482 + 483 + --- 484 + 485 + ### Scenario 2: Broken Linux Bootloader 486 + 487 + **User:** Mike, software developer 488 + **Problem:** GRUB broken after dual-boot Windows update 489 + **Needs:** Fix bootloader, preserve both OS installations 490 + 491 + **With traditional tools:** 492 + ```bash 493 + # Boot rescue disc 494 + # Mount root partition 495 + $ mount /dev/sda3 /mnt 496 + # Mount boot partition 497 + $ mount /dev/sda1 /mnt/boot 498 + # Chroot into system 499 + $ chroot /mnt 500 + # Reinstall GRUB 501 + $ grub-install /dev/sda 502 + $ update-grub 503 + # Cross fingers, reboot 504 + # Often fails, requires forum searching 505 + ``` 506 + 507 + **With AethelOS:** 508 + ```bash 509 + > scan-disks 510 + Found: 511 + /dev/sda1 - EFI (FAT32) 512 + /dev/sda2 - Windows (NTFS) 513 + /dev/sda3 - Linux (ext4) 514 + 515 + > mount all auto 516 + ✓ Mounted 3 partitions 517 + 518 + > diagnose boot-issues 519 + ⚠ GRUB configuration corrupted 520 + ⚠ EFI boot entries missing 521 + Possible causes: 522 + - Windows update overwrote bootloader 523 + - Power loss during update 524 + 525 + > show-versions /boot/grub/grub.cfg 526 + v1: 2024-01-01 (working) 527 + v2: 2024-01-20 (corrupted) ← current 528 + 529 + > restore /boot/grub/grub.cfg to v1 530 + ✓ Restored working configuration 531 + 532 + > fix-boot auto 533 + Analyzing boot environment... 534 + ✓ Detected Windows Boot Manager 535 + ✓ Detected GRUB 536 + Creating boot menu... 537 + ✓ Added Windows 10 538 + ✓ Added Ubuntu 22.04 539 + ✓ Added AethelOS Rescue 540 + Updated EFI boot order 541 + ✓ Boot repaired! 542 + 543 + > verify-boot 544 + ✓ GRUB configuration valid 545 + ✓ EFI entries correct 546 + ✓ Both operating systems bootable 547 + 548 + Ready to reboot. 549 + ``` 550 + 551 + **Result:** Mike's system boots correctly, both Windows and Linux work. He's impressed and installs AethelOS as third OS. 552 + 553 + --- 554 + 555 + ### Scenario 3: Accidental File Deletion 556 + 557 + **User:** Emma, small business owner 558 + **Problem:** Deleted entire client folder, needs it back NOW 559 + **Needs:** Recover deleted files ASAP 560 + 561 + **With traditional tools:** 562 + ```bash 563 + # Install PhotoRec 564 + $ sudo apt-get install testdisk 565 + $ photorec /dev/sda 566 + # Scans entire disk (takes hours) 567 + # Recovers 50,000+ files with random names 568 + # Must manually sort through garbage 569 + # f0001234.jpg, f0001235.doc, f0001236.tmp, ... 570 + # No folder structure, no filenames 571 + # Days of work to find the right files 572 + ``` 573 + 574 + **With AethelOS:** 575 + ```bash 576 + > mount /dev/sda1 work ext4 577 + 578 + # World-Tree tracks deletions! 579 + > seek files where path contains "ClientX" 580 + and deleted-within "1 hour" 581 + 582 + Found deleted folder: /home/emma/Clients/ClientX/ 583 + Deleted: 23 minutes ago 584 + Contains: 147 files (2.3 GB) 585 + 586 + Contents preview: 587 + Proposal_Final.docx 588 + Budget_2024.xlsx 589 + Meeting_Notes/*.txt 590 + Designs/*.ai 591 + 592 + > restore /home/emma/Clients/ClientX/ recursive 593 + Restoring 147 files... 594 + [████████████████████████████] 100% 595 + ✓ Folder restored with original structure! 596 + 597 + > verify restoration 598 + ✓ All files present 599 + ✓ Folder structure intact 600 + ✓ File dates preserved 601 + ✓ No corruption detected 602 + 603 + # Total time: 2 minutes 604 + ``` 605 + 606 + **Result:** Emma recovers everything instantly, tells everyone about the "magic recovery tool." 607 + 608 + --- 609 + 610 + ### Scenario 4: Forensic Investigation 611 + 612 + **User:** Detective Rodriguez, cybercrime unit 613 + **Problem:** Investigate compromised corporate server 614 + **Needs:** Timeline of file modifications, find evidence 615 + 616 + **With traditional tools:** 617 + ```bash 618 + # Mount image read-only 619 + $ mount -o ro /evidence/server.img /mnt/evidence 620 + # Manual timeline reconstruction 621 + $ find /mnt/evidence -type f -newermt "2024-01-15" ! -newermt "2024-01-16" 622 + # Thousands of results, no context 623 + # Export to spreadsheet, manual analysis 624 + # Days of work 625 + ``` 626 + 627 + **With AethelOS:** 628 + ```bash 629 + > mount /evidence/server.img evidence ext4 read-only 630 + ✓ Mounted in read-only mode (forensically sound) 631 + 632 + > show-timeline evidence:/ from "2024-01-15" to "2024-01-16" 633 + 634 + Timeline of modifications during suspected attack window: 635 + 636 + 2024-01-15 14:32:15 - /var/www/upload/shell.php (NEW, 2.4 KB) 637 + 2024-01-15 14:32:47 - /etc/passwd (MODIFIED, +1 line) 638 + 2024-01-15 14:33:12 - /home/attacker/.ssh/authorized_keys (NEW) 639 + 2024-01-15 14:35:00 - /var/log/apache2/access.log (MODIFIED) 640 + 2024-01-15 14:40:23 - /root/.bash_history (MODIFIED) 641 + ... 642 + 643 + > seek files where essence="Executable" 644 + and created during "attack-window" 645 + and creator="Unknown" 646 + 647 + Found 3 suspicious executables: 648 + /tmp/.hidden/rootkit (5.2 MB) 649 + /var/www/upload/backdoor.elf (128 KB) 650 + /usr/local/bin/logger (modified from original) 651 + 652 + > analyze-file /tmp/.hidden/rootkit 653 + File: /tmp/.hidden/rootkit 654 + Type: ELF 64-bit executable 655 + Hash: a3f5... (MATCHES known malware DB) 656 + Strings: Contains "reverse_shell", "keylogger" 657 + Network: Opens connection to 192.168.1.100:4444 658 + ⚠ CONFIRMED MALWARE 659 + 660 + > export-evidence to /case-files/case-2024-001/ 661 + Exporting: 662 + ✓ Timeline (JSON, CSV, PDF) 663 + ✓ Suspicious files (with hashes) 664 + ✓ Modified system files (with diffs) 665 + ✓ Network activity logs 666 + ✓ Chain of custody log 667 + ✓ Evidence package created 668 + 669 + # Generates courtroom-ready report 670 + ``` 671 + 672 + **Result:** Investigation completed in hours instead of days. Evidence is clear and well-documented. 673 + 674 + --- 675 + 676 + ### Scenario 5: Cross-Platform Data Migration 677 + 678 + **User:** Alex, switching from Windows to Linux 679 + **Problem:** Needs to migrate files from Windows partition to new Linux install 680 + **Needs:** Smart selection (skip junk), preserve metadata 681 + 682 + **With traditional tools:** 683 + ```bash 684 + # Mount both partitions 685 + $ mount /dev/sda1 /mnt/windows 686 + $ mount /dev/sda2 /mnt/linux 687 + # Manually copy directories 688 + $ cp -r /mnt/windows/Users/Alex/Documents /mnt/linux/home/alex/ 689 + # Copies everything including cache, temp files, etc. 690 + # Wastes space and time 691 + ``` 692 + 693 + **With AethelOS:** 694 + ```bash 695 + > mount /dev/sda1 windows ntfs 696 + > mount /dev/sda2 linux ext4 697 + 698 + > seek files from windows 699 + where path contains "Users/Alex" 700 + and essence != "Cache" 701 + and essence != "Temp" 702 + and essence != "System" 703 + and size > 0 704 + 705 + Analyzing Windows partition... 706 + Found 12,847 files (45 GB of real data) 707 + Skipping 180 GB of Windows system files and junk 708 + 709 + Categories: 710 + Documents: 3,241 files (2.1 GB) 711 + Photos: 5,123 files (38 GB) 712 + Music: 2,847 files (3.5 GB) 713 + Videos: 523 files (1.2 GB) 714 + Other: 1,113 files (0.2 GB) 715 + 716 + > smart-migrate windows:/Users/Alex to linux:/home/alex 717 + Migration plan: 718 + Documents → /home/alex/Documents 719 + Photos → /home/alex/Pictures 720 + Music → /home/alex/Music 721 + Videos → /home/alex/Videos 722 + 723 + Proceed? (yes/no) > yes 724 + 725 + [████████████████████████░░] 95% (42.8 GB / 45 GB) 726 + ✓ Migration complete! 727 + 728 + > verify-migration 729 + ✓ All files copied successfully 730 + ✓ File integrity verified (checksums match) 731 + ✓ Metadata preserved where possible 732 + ✓ Folder structure created correctly 733 + 734 + Summary: 735 + Copied: 12,847 files (45 GB) 736 + Skipped: 53,128 junk files (180 GB) 737 + Time saved: 2 hours 738 + Space saved: 180 GB 739 + ``` 740 + 741 + **Result:** Alex has a clean Linux installation with only the files that matter. Impressed by intelligence. 742 + 743 + --- 744 + 745 + ## Eldarin Rescue Commands 746 + 747 + ### Filesystem Operations 748 + 749 + #### `scan-disks` - Detect all storage devices 750 + ```bash 751 + > scan-disks 752 + 753 + Detected storage devices: 754 + 755 + /dev/sda (1TB Samsung SSD) 756 + ├─ sda1: EFI System (FAT32, 512 MB) 757 + ├─ sda2: Windows (NTFS, 250 GB) 758 + ├─ sda3: Linux (ext4, 100 GB) 759 + └─ sda4: Data (NTFS, 649 GB) 760 + 761 + /dev/sdb (2TB External Drive) 762 + └─ sdb1: Backup (ext4, 2TB) 763 + 764 + /dev/sdc (16GB USB Drive) 765 + └─ sdc1: AethelOS Rescue (FAT32, 16GB) ← booted from this 766 + ``` 767 + 768 + --- 769 + 770 + #### `mount` - Mount a filesystem 771 + ```bash 772 + # Auto-detect filesystem type 773 + > mount /dev/sda2 windows auto 774 + Detected: NTFS 775 + ✓ Mounted as /windows 776 + 777 + # Specify filesystem type 778 + > mount /dev/sda3 linux ext4 779 + 780 + # Read-only mode (forensics) 781 + > mount /dev/sda2 evidence ntfs read-only 782 + 783 + # Mount all detected partitions 784 + > mount all auto 785 + ✓ Mounted 5 partitions 786 + ``` 787 + 788 + --- 789 + 790 + #### `unmount` - Safely unmount filesystem 791 + ```bash 792 + > unmount windows 793 + Flushing pending writes... 794 + ✓ Safe to remove 795 + 796 + > unmount all 797 + ✓ All filesystems unmounted safely 798 + ``` 799 + 800 + --- 801 + 802 + #### `heal` - Check and repair filesystem 803 + ```bash 804 + > heal /dev/sda3 805 + 806 + ◈ Checking ext4 filesystem... 807 + ✓ Superblock valid 808 + ✓ Inode table intact 809 + ⚠ Found 3 orphaned inodes 810 + ⚠ Found 1 bad block 811 + 812 + ◈ Repairing... 813 + ✓ Cleared orphaned inodes 814 + ✓ Marked bad block unusable 815 + ✓ Filesystem repaired 816 + 817 + > heal /dev/sda2 auto-fix 818 + Checking NTFS... 819 + ⚠ Found 15 file system errors 820 + Auto-fixing enabled 821 + ✓ All errors corrected 822 + ``` 823 + 824 + --- 825 + 826 + ### File Discovery & Search 827 + 828 + #### `seek` - Intelligent file search 829 + ```bash 830 + # Basic search 831 + > seek documents 832 + 833 + # By time 834 + > seek files modified today 835 + > seek files created last-week 836 + > seek files from between "2024-01-01" and "2024-01-31" 837 + 838 + # By metadata 839 + > seek photos where camera="Canon EOS" 840 + > seek documents where author="John Smith" 841 + > seek videos where duration > 1-hour 842 + 843 + # By content 844 + > seek files where contains "confidential" 845 + > seek code where language="rust" 846 + 847 + # By essence (file type) 848 + > seek scrolls # Documents 849 + > seek tapestries # Images 850 + > seek chronicles # Videos 851 + > seek tomes # Executables 852 + 853 + # Complex queries 854 + > seek photos from last-month 855 + where camera contains "Canon" 856 + and size > 5MB 857 + and not-in "/Windows/System32" 858 + 859 + # Cross-filesystem 860 + > seek all-my-photos from-all-drives 861 + > seek documents from windows, linux 862 + ``` 863 + 864 + --- 865 + 866 + #### `show-versions` - View file history 867 + ```bash 868 + > show-versions /etc/fstab 869 + 870 + Version history for /etc/fstab: 871 + v1: 2024-01-01 10:00 (512 bytes) - Original 872 + v2: 2024-01-15 14:30 (548 bytes) - Added mount point 873 + v3: 2024-01-20 09:15 (423 bytes) - Broken ← current 874 + 875 + > show-versions /home/user/document.docx all 876 + 877 + Complete version history: 878 + v1: 2024-01-10 09:00 - First draft 879 + v2: 2024-01-10 14:30 - Added introduction 880 + v3: 2024-01-11 10:15 - Revised section 2 881 + ... 882 + v23: 2024-01-20 16:45 - Final version ← current 883 + ``` 884 + 885 + --- 886 + 887 + #### `restore` - Restore previous version 888 + ```bash 889 + # Restore to specific version 890 + > restore /etc/fstab to v2 891 + ✓ Restored to version 2 (2024-01-15) 892 + 893 + # Restore deleted file 894 + > restore /home/user/deleted.txt 895 + Found in version history (deleted 30 minutes ago) 896 + ✓ File restored 897 + 898 + # Restore entire folder 899 + > restore /home/user/Projects/ recursive to yesterday 900 + Restoring 147 files to state from 2024-01-24 18:00... 901 + ✓ Folder restored 902 + ``` 903 + 904 + --- 905 + 906 + #### `diff` - Compare file versions 907 + ```bash 908 + > diff /etc/fstab v1 v3 909 + 910 + --- Version 1 (2024-01-01) 911 + +++ Version 3 (2024-01-20) 912 + 913 + - UUID=xxx-xxx /mnt/data ext4 defaults 0 0 914 + + UUID=xxx-xxx /mnt/dta ext4 defaults 0 0 # Typo! 915 + + UUID=yyy-yyy /mnt/backup ntfs defaults 0 0 916 + ``` 917 + 918 + --- 919 + 920 + ### Data Recovery & Backup 921 + 922 + #### `recover` - Advanced data recovery 923 + ```bash 924 + # Recover recently deleted files 925 + > recover from windows deleted-within 24-hours 926 + 927 + Scanning for deleted files... 928 + Found 47 deleted files: 929 + Documents/Report.docx (deleted 2 hours ago) 930 + Downloads/installer.exe (deleted 5 hours ago) 931 + ... 932 + 933 + Select files to recover: (all / select / filter) 934 + > all 935 + 936 + ✓ Recovered 47 files to /recovered/ 937 + 938 + # Deep scan for lost partitions 939 + > recover deep-scan /dev/sda 940 + 941 + Scanning entire disk... 942 + Found: 943 + - Lost ext4 partition (50 GB, deleted 3 days ago) 944 + - Orphaned files (2,847 files, 15 GB) 945 + 946 + Recover? (yes/no) > yes 947 + ``` 948 + 949 + --- 950 + 951 + #### `backup` - Smart backup 952 + ```bash 953 + # Simple backup 954 + > backup windows:/Users/Alex to /rescue-drive/backup/ 955 + 956 + # Smart backup (skip junk) 957 + > smart-backup windows to /rescue-drive/ 958 + Analyzing... 959 + Found 12,847 important files (45 GB) 960 + Will skip 53,128 junk files (180 GB) 961 + Proceed? > yes 962 + 963 + # Incremental backup 964 + > backup windows:/Users/Alex to /rescue-drive/backup/ incremental 965 + Only backing up changed files since last backup... 966 + Changed: 23 files (150 MB) 967 + New: 5 files (20 MB) 968 + ✓ Incremental backup complete (170 MB) 969 + 970 + # Verify backup 971 + > verify-backup /rescue-drive/backup/ 972 + Checking file integrity... 973 + ✓ All files verified (checksums match) 974 + ✓ No corruption detected 975 + ``` 976 + 977 + --- 978 + 979 + #### `clone` - Disk cloning 980 + ```bash 981 + # Clone entire disk 982 + > clone /dev/sda to /dev/sdb 983 + ⚠ This will erase /dev/sdb. Continue? > yes 984 + Cloning 1TB disk... 985 + [████████████████████░░░░] 85% (850 GB / 1 TB) 986 + Estimated time: 15 minutes 987 + 988 + # Smart clone (skip empty space) 989 + > clone /dev/sda to /dev/sdb smart 990 + Only cloning used space (450 GB / 1 TB) 991 + [████████████████████████] 100% 992 + ✓ Clone complete (2x faster!) 993 + 994 + # Verify clone 995 + > verify-clone /dev/sda /dev/sdb 996 + ✓ Disks are identical 997 + ``` 998 + 999 + --- 1000 + 1001 + ### Boot Repair 1002 + 1003 + #### `diagnose` - Diagnose boot issues 1004 + ```bash 1005 + > diagnose boot-issues 1006 + 1007 + Analyzing boot configuration... 1008 + 1009 + Issues found: 1010 + ⚠ GRUB configuration corrupted 1011 + ⚠ EFI boot entries missing 1012 + ⚠ Windows boot manager damaged 1013 + 1014 + Possible causes: 1015 + - Windows update overwrote bootloader 1016 + - Power loss during system update 1017 + - Disk corruption 1018 + 1019 + Recommendations: 1020 + 1. Restore GRUB configuration from backup 1021 + 2. Rebuild EFI boot entries 1022 + 3. Repair Windows boot files 1023 + ``` 1024 + 1025 + --- 1026 + 1027 + #### `fix-boot` - Repair bootloader 1028 + ```bash 1029 + # Automatic repair 1030 + > fix-boot auto 1031 + 1032 + Detecting operating systems... 1033 + ✓ Found Windows 10 at /dev/sda2 1034 + ✓ Found Ubuntu 22.04 at /dev/sda3 1035 + ✓ Found AethelOS Rescue at /dev/sdc1 1036 + 1037 + Repairing bootloader... 1038 + ✓ Reinstalled GRUB 1039 + ✓ Generated configuration 1040 + ✓ Updated EFI entries 1041 + ✓ Set correct boot order 1042 + 1043 + Boot menu will show: 1044 + 1. Ubuntu 22.04 1045 + 2. Windows 10 1046 + 3. AethelOS Rescue (USB) 1047 + 1048 + # Manual repair 1049 + > fix-boot grub /dev/sda 1050 + > fix-boot windows /dev/sda2 1051 + > fix-boot efi 1052 + ``` 1053 + 1054 + --- 1055 + 1056 + #### `verify-boot` - Verify boot configuration 1057 + ```bash 1058 + > verify-boot 1059 + 1060 + Checking boot configuration... 1061 + ✓ GRUB installed correctly 1062 + ✓ Configuration syntax valid 1063 + ✓ All kernels found 1064 + ✓ All operating systems bootable 1065 + ✓ EFI entries correct 1066 + ✓ Boot order optimal 1067 + 1068 + System is ready to boot. 1069 + ``` 1070 + 1071 + --- 1072 + 1073 + ### System Analysis 1074 + 1075 + #### `show-timeline` - File modification timeline 1076 + ```bash 1077 + > show-timeline windows:/ from "2024-01-20" to "2024-01-21" 1078 + 1079 + 2024-01-20 14:32:15 - C:\upload\shell.php (NEW) 1080 + 2024-01-20 14:32:47 - C:\Windows\System32\config\SAM (MODIFIED) 1081 + 2024-01-20 14:35:00 - C:\Windows\Logs\security.log (MODIFIED) 1082 + ... 1083 + 1084 + # Filter by path 1085 + > show-timeline /etc from yesterday 1086 + 1087 + # Filter by type 1088 + > show-timeline / only executables from last-week 1089 + 1090 + # Export timeline 1091 + > show-timeline / from "attack-window" export csv 1092 + ✓ Exported to timeline.csv 1093 + ``` 1094 + 1095 + --- 1096 + 1097 + #### `analyze-file` - Deep file analysis 1098 + ```bash 1099 + > analyze-file /suspicious/file.exe 1100 + 1101 + File: /suspicious/file.exe 1102 + Type: PE32+ executable (Windows 64-bit) 1103 + Size: 2.4 MB 1104 + Hash: a3f52b9... (MD5), 7d8e... (SHA-256) 1105 + 1106 + Signatures: 1107 + ⚠ Not signed 1108 + ⚠ No certificate 1109 + 1110 + Strings found: 1111 + "reverse_shell" 1112 + "keylogger" 1113 + "192.168.1.100:4444" 1114 + 1115 + Network activity: 1116 + Attempts connection to 192.168.1.100:4444 1117 + 1118 + Database check: 1119 + ⚠ HASH MATCHES KNOWN MALWARE 1120 + 1121 + Classification: MALWARE - High confidence 1122 + ``` 1123 + 1124 + --- 1125 + 1126 + #### `disk-health` - Check disk health 1127 + ```bash 1128 + > disk-health /dev/sda 1129 + 1130 + Disk: Samsung SSD 1TB (/dev/sda) 1131 + Model: Samsung 870 EVO 1132 + Firmware: SVT02B6Q 1133 + 1134 + S.M.A.R.T. Status: 1135 + Overall: ✓ HEALTHY 1136 + 1137 + Reallocated Sectors: 0 (✓ good) 1138 + Pending Sectors: 0 (✓ good) 1139 + Uncorrectable Errors: 0 (✓ good) 1140 + Temperature: 35°C (✓ normal) 1141 + Power-On Hours: 1,247 1142 + 1143 + Wear Level: 5% (✓ excellent) 1144 + Estimated Life: 18.5 years 1145 + 1146 + Recommendation: Disk is healthy, no action needed. 1147 + ``` 1148 + 1149 + --- 1150 + 1151 + ### Forensics & Investigation 1152 + 1153 + #### `export-evidence` - Create forensic evidence package 1154 + ```bash 1155 + > export-evidence /case-files/case-2024-001/ 1156 + 1157 + Creating evidence package... 1158 + 1159 + Including: 1160 + ✓ File timeline (JSON, CSV, PDF) 1161 + ✓ Suspicious files (with hashes) 1162 + ✓ System modifications (with diffs) 1163 + ✓ Network logs 1164 + ✓ Hash database matches 1165 + ✓ Chain of custody log 1166 + 1167 + Package created: case-2024-001.zip 1168 + Hash: 7d8e9f... (SHA-256) 1169 + 1170 + This package is cryptographically signed and 1171 + suitable for court presentation. 1172 + ``` 1173 + 1174 + --- 1175 + 1176 + #### `create-manifest` - Generate file inventory 1177 + ```bash 1178 + > create-manifest /rescue-drive/manifest.txt 1179 + 1180 + Creating manifest... 1181 + Scanning 12,847 files... 1182 + Computing hashes... 1183 + 1184 + ✓ Manifest created 1185 + 1186 + Contents: 1187 + Total files: 12,847 1188 + Total size: 45.2 GB 1189 + Hash algorithm: SHA-256 1190 + Created: 2024-01-25 14:30:00 1191 + ``` 1192 + 1193 + --- 1194 + 1195 + ### Utility Commands 1196 + 1197 + #### `preview` - Preview search results 1198 + ```bash 1199 + > seek documents from windows 1200 + > preview results 1201 + 1202 + Results (showing 10 of 3,241): 1203 + 1. C:\Users\Alex\Documents\Report.docx (2.4 MB) 1204 + 2. C:\Users\Alex\Documents\Budget_2024.xlsx (543 KB) 1205 + 3. C:\Users\Alex\Desktop\Notes.txt (15 KB) 1206 + ... 1207 + 1208 + Show more? (y/n) > y 1209 + ``` 1210 + 1211 + --- 1212 + 1213 + #### `help` - Context-sensitive help 1214 + ```bash 1215 + > help mount 1216 + 1217 + MOUNT - Mount a filesystem 1218 + 1219 + Usage: 1220 + mount <device> <name> [filesystem] [options] 1221 + 1222 + Examples: 1223 + mount /dev/sda2 windows auto 1224 + mount /dev/sda3 linux ext4 1225 + mount /dev/sdb1 backup ntfs read-only 1226 + 1227 + Options: 1228 + auto - Auto-detect filesystem type 1229 + read-only - Mount in read-only mode (safe) 1230 + force - Force mount even if errors 1231 + 1232 + See also: unmount, scan-disks, heal 1233 + ``` 1234 + 1235 + --- 1236 + 1237 + ## Bootable USB Creation 1238 + 1239 + ### Requirements 1240 + 1241 + **Hardware:** 1242 + - USB drive (8GB minimum, 16GB recommended) 1243 + - x86-64 PC with UEFI support 1244 + 1245 + **Software:** 1246 + - AethelOS ISO image (download from aethelos.org/rescue) 1247 + - USB writing tool: 1248 + - Windows: Rufus, Balena Etcher 1249 + - Linux: `dd`, GNOME Disks 1250 + - macOS: Balena Etcher, `dd` 1251 + 1252 + --- 1253 + 1254 + ### Creation Process (Windows) 1255 + 1256 + **Using Rufus (Recommended):** 1257 + 1258 + 1. Download Rufus: https://rufus.ie 1259 + 2. Download AethelOS Rescue ISO 1260 + 3. Insert USB drive 1261 + 4. Open Rufus: 1262 + - Device: Select your USB drive 1263 + - Boot selection: "Disk or ISO image" 1264 + - Click "SELECT" and choose AethelOS ISO 1265 + - Partition scheme: "GPT" 1266 + - Target system: "UEFI" 1267 + - File system: "FAT32" 1268 + - Click "START" 1269 + 5. Wait for completion (~5 minutes) 1270 + 6. Safe to eject! 1271 + 1272 + --- 1273 + 1274 + ### Creation Process (Linux) 1275 + 1276 + **Using dd:** 1277 + 1278 + ```bash 1279 + # Find USB device 1280 + $ lsblk 1281 + # Look for your USB drive (e.g., /dev/sdb) 1282 + 1283 + # Write ISO to USB (⚠ CAREFUL - this erases USB!) 1284 + $ sudo dd if=aethelos-rescue.iso of=/dev/sdb bs=4M status=progress 1285 + $ sync 1286 + 1287 + # Done! 1288 + ``` 1289 + 1290 + **Using GNOME Disks:** 1291 + 1. Open "Disks" application 1292 + 2. Select USB drive 1293 + 3. Click menu → "Restore Disk Image" 1294 + 4. Select AethelOS ISO 1295 + 5. Click "Start Restoring" 1296 + 1297 + --- 1298 + 1299 + ### Creation Process (macOS) 1300 + 1301 + **Using dd:** 1302 + 1303 + ```bash 1304 + # Find USB device 1305 + $ diskutil list 1306 + # Look for your USB drive (e.g., /dev/disk2) 1307 + 1308 + # Unmount (but don't eject) 1309 + $ diskutil unmountDisk /dev/disk2 1310 + 1311 + # Write ISO to USB 1312 + $ sudo dd if=aethelos-rescue.iso of=/dev/rdisk2 bs=4m 1313 + # Note: rdisk2 (not disk2) is faster 1314 + 1315 + # Eject 1316 + $ diskutil eject /dev/disk2 1317 + ``` 1318 + 1319 + --- 1320 + 1321 + ### Booting from USB 1322 + 1323 + **1. Insert USB drive** 1324 + 1325 + **2. Enter BIOS/UEFI:** 1326 + - Restart PC 1327 + - Press key during boot: 1328 + - Common keys: F2, F12, Del, Esc 1329 + - Dell: F12 1330 + - HP: F9 or Esc 1331 + - Lenovo: F12 or F1 1332 + - ASUS: F2 or Del 1333 + 1334 + **3. Change boot order:** 1335 + - Go to "Boot" menu 1336 + - Move "USB Device" or "Removable Media" to first position 1337 + - Save and exit (usually F10) 1338 + 1339 + **4. Boot into AethelOS:** 1340 + - PC will restart 1341 + - AethelOS logo appears 1342 + - Boot menu (if multiple OS detected) 1343 + - Select "AethelOS Rescue" 1344 + - System boots to Eldarin shell 1345 + 1346 + **Total time:** 5-10 seconds 1347 + 1348 + --- 1349 + 1350 + ### Persistent Storage (Optional) 1351 + 1352 + **Create persistent partition:** 1353 + 1354 + ``` 1355 + USB Layout: 1356 + ├─ Partition 1 (8GB): AethelOS Rescue (bootable) 1357 + └─ Partition 2 (8GB): Persistent Data (stores recovered files) 1358 + ``` 1359 + 1360 + **Setup:** 1361 + ```bash 1362 + # After booting AethelOS from USB 1363 + > partition-usb /dev/sdc persistent 1364 + 1365 + This will: 1366 + - Shrink boot partition to 8GB 1367 + - Create 8GB data partition 1368 + - Format as ext4 1369 + - Mount automatically 1370 + 1371 + Proceed? (yes/no) > yes 1372 + 1373 + ✓ Persistent partition created at /persistent 1374 + You can now save files that persist across reboots! 1375 + ``` 1376 + 1377 + --- 1378 + 1379 + ## Implementation Roadmap 1380 + 1381 + ### Phase 1: Foundation (Weeks 1-2) 1382 + **Dependencies:** VFS layer complete, FAT32 support 1383 + 1384 + **Goals:** 1385 + - ✅ Bootable USB creation 1386 + - ✅ Basic rescue commands 1387 + - ✅ Filesystem mounting 1388 + - ✅ Simple file operations 1389 + 1390 + **Deliverables:** 1391 + ``` 1392 + heartwood/src/rescue/ 1393 + ├── mod.rs # Rescue mode initialization 1394 + ├── commands/ # Rescue-specific commands 1395 + │ ├── mount.rs 1396 + │ ├── scan_disks.rs 1397 + │ ├── heal.rs 1398 + │ └── backup.rs 1399 + └── usb/ # USB boot support 1400 + └── persistence.rs 1401 + ``` 1402 + 1403 + **Eldarin commands:** 1404 + - `scan-disks` - Detect storage devices 1405 + - `mount` / `unmount` - Filesystem operations 1406 + - `heal` - Basic filesystem check 1407 + - `backup` - Simple file copy 1408 + 1409 + **Success criteria:** 1410 + - Can boot from USB 1411 + - Can mount FAT32 and ext4 1412 + - Can copy files between partitions 1413 + - Basic commands work reliably 1414 + 1415 + --- 1416 + 1417 + ### Phase 2: World-Tree Integration (Weeks 3-4) 1418 + **Dependencies:** World-Tree object store on VFS 1419 + 1420 + **Goals:** 1421 + - ✅ Intelligent file search 1422 + - ✅ Automatic versioning 1423 + - ✅ Cross-filesystem queries 1424 + 1425 + **Deliverables:** 1426 + ``` 1427 + groves/world-tree_grove/src/rescue/ 1428 + ├── indexing.rs # Index existing filesystems 1429 + ├── queries.rs # Rescue-specific queries 1430 + └── versioning.rs # Track file modifications 1431 + ``` 1432 + 1433 + **Eldarin commands:** 1434 + - `seek` - Intelligent file search 1435 + - `show-versions` - View file history 1436 + - `restore` - Restore previous versions 1437 + - `diff` - Compare file versions 1438 + 1439 + **Success criteria:** 1440 + - Can index NTFS/ext4 filesystems 1441 + - Queries return results in <1 second 1442 + - Version history works correctly 1443 + - Can restore deleted files 1444 + 1445 + --- 1446 + 1447 + ### Phase 3: Advanced Recovery (Weeks 5-6) 1448 + **Dependencies:** Phases 1-2 complete 1449 + 1450 + **Goals:** 1451 + - ✅ Deep file recovery 1452 + - ✅ Boot repair utilities 1453 + - ✅ Disk cloning 1454 + 1455 + **Deliverables:** 1456 + ``` 1457 + heartwood/src/rescue/ 1458 + ├── recovery/ 1459 + │ ├── deleted_files.rs # Recover deleted files 1460 + │ ├── deep_scan.rs # Lost partition recovery 1461 + │ └── corruption.rs # Handle corrupted data 1462 + ├── boot/ 1463 + │ ├── grub.rs # GRUB repair 1464 + │ ├── efi.rs # EFI repair 1465 + │ └── windows.rs # Windows boot repair 1466 + └── clone.rs # Disk cloning 1467 + ``` 1468 + 1469 + **Eldarin commands:** 1470 + - `recover` - Advanced recovery 1471 + - `diagnose boot-issues` 1472 + - `fix-boot` - Boot repair 1473 + - `verify-boot` 1474 + - `clone` - Disk cloning 1475 + 1476 + **Success criteria:** 1477 + - Can recover recently deleted files 1478 + - Can repair common boot issues 1479 + - Can clone disks efficiently 1480 + 1481 + --- 1482 + 1483 + ### Phase 4: Forensics Tools (Weeks 7-8) 1484 + **Dependencies:** Phases 1-3 complete 1485 + 1486 + **Goals:** 1487 + - ✅ Timeline reconstruction 1488 + - ✅ File analysis 1489 + - ✅ Evidence export 1490 + 1491 + **Deliverables:** 1492 + ``` 1493 + heartwood/src/rescue/forensics/ 1494 + ├── timeline.rs # Modification timeline 1495 + ├── analysis.rs # File analysis 1496 + ├── malware_db.rs # Malware signature database 1497 + └── evidence.rs # Export evidence packages 1498 + ``` 1499 + 1500 + **Eldarin commands:** 1501 + - `show-timeline` - Visual timeline 1502 + - `analyze-file` - Deep file analysis 1503 + - `export-evidence` - Forensic packages 1504 + - `disk-health` - S.M.A.R.T. monitoring 1505 + 1506 + **Success criteria:** 1507 + - Timeline shows all modifications 1508 + - File analysis detects malware 1509 + - Evidence packages are court-ready 1510 + 1511 + --- 1512 + 1513 + ### Phase 5: Polish & Documentation (Weeks 9-10) 1514 + **Dependencies:** Phases 1-4 complete 1515 + 1516 + **Goals:** 1517 + - ✅ Performance optimization 1518 + - ✅ Comprehensive documentation 1519 + - ✅ Video tutorials 1520 + - ✅ Example scenarios 1521 + 1522 + **Deliverables:** 1523 + ``` 1524 + docs/rescue/ 1525 + ├── GETTING_STARTED.md 1526 + ├── COMMAND_REFERENCE.md 1527 + ├── SCENARIOS.md 1528 + ├── VIDEO_TUTORIALS/ 1529 + │ ├── 01_creating_usb.mp4 1530 + │ ├── 02_basic_recovery.mp4 1531 + │ ├── 03_boot_repair.mp4 1532 + │ └── 04_advanced_features.mp4 1533 + └── FAQ.md 1534 + ``` 1535 + 1536 + **Marketing materials:** 1537 + - Website: aethelos.org/rescue 1538 + - Screenshots and demos 1539 + - Comparison charts 1540 + - Testimonials (from beta testers) 1541 + 1542 + **Success criteria:** 1543 + - Documentation is clear and comprehensive 1544 + - New users can follow tutorials easily 1545 + - Performance meets targets (boot <10s, queries <1s) 1546 + 1547 + --- 1548 + 1549 + ### Phase 6: Beta Testing (Weeks 11-12) 1550 + **Dependencies:** Phase 5 complete 1551 + 1552 + **Goals:** 1553 + - ✅ Real-world testing 1554 + - ✅ Bug fixes 1555 + - ✅ Performance tuning 1556 + - ✅ User feedback 1557 + 1558 + **Beta testers:** 1559 + - IT professionals (10-20 people) 1560 + - Data recovery specialists (5-10 people) 1561 + - Digital forensics experts (3-5 people) 1562 + - Power users (20-30 people) 1563 + 1564 + **Feedback channels:** 1565 + - Discord server 1566 + - GitHub issues 1567 + - Email support 1568 + - User surveys 1569 + 1570 + **Success criteria:** 1571 + - <5 critical bugs 1572 + - >90% user satisfaction 1573 + - Performance targets met 1574 + - Ready for public release 1575 + 1576 + --- 1577 + 1578 + ## Technical Architecture 1579 + 1580 + ### Boot Process 1581 + 1582 + ``` 1583 + 1. BIOS/UEFI loads bootloader (GRUB) 1584 + 1585 + 2. GRUB loads AethelOS kernel (heartwood.bin) 1586 + 1587 + 3. Kernel initializes: 1588 + - Memory allocator (Mana Pool) 1589 + - Interrupt handling (Attunement) 1590 + - VGA text mode 1591 + 1592 + 4. Detect rescue mode boot: 1593 + if boot_from_usb { 1594 + enter_rescue_mode(); 1595 + } 1596 + 1597 + 5. Initialize rescue systems: 1598 + - Scan for storage devices 1599 + - Auto-detect filesystems 1600 + - Initialize World-Tree indexing 1601 + 1602 + 6. Start Eldarin shell in rescue mode 1603 + - Load rescue commands 1604 + - Display welcome message 1605 + - Wait for user input 1606 + ``` 1607 + 1608 + --- 1609 + 1610 + ### Rescue Mode Detection 1611 + 1612 + ```rust 1613 + // heartwood/src/main.rs 1614 + 1615 + fn detect_rescue_mode() -> bool { 1616 + // Check kernel command line 1617 + if kernel_cmdline_contains("rescue") { 1618 + return true; 1619 + } 1620 + 1621 + // Check if booted from removable media 1622 + if boot_device_is_removable() { 1623 + return true; 1624 + } 1625 + 1626 + // Check for rescue partition marker 1627 + if exists("/boot/aethelos/rescue-mode") { 1628 + return true; 1629 + } 1630 + 1631 + false 1632 + } 1633 + 1634 + fn main() -> ! { 1635 + // Standard initialization 1636 + heartwood_init(); 1637 + 1638 + if detect_rescue_mode() { 1639 + rescue::enter_rescue_mode(); 1640 + } else { 1641 + // Normal AethelOS boot 1642 + start_normal_mode(); 1643 + } 1644 + } 1645 + ``` 1646 + 1647 + --- 1648 + 1649 + ### Rescue Mode Initialization 1650 + 1651 + ```rust 1652 + // heartwood/src/rescue/mod.rs 1653 + 1654 + pub fn enter_rescue_mode() -> ! { 1655 + println!("\n◈━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━◈"); 1656 + println!("◈ ◈"); 1657 + println!("◈ AethelOS Rescue Edition v0.3.0 ◈"); 1658 + println!("◈ \"When Systems Fall, The Healer Arrives\" ◈"); 1659 + println!("◈ ◈"); 1660 + println!("◈━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━◈\n"); 1661 + 1662 + println!("◈ Initializing rescue systems..."); 1663 + 1664 + // Scan for storage devices 1665 + let devices = scan_storage_devices(); 1666 + println!(" ✓ Found {} storage devices", devices.len()); 1667 + 1668 + // Initialize VFS 1669 + vfs::init(); 1670 + println!(" ✓ VFS layer ready"); 1671 + 1672 + // Initialize World-Tree indexing 1673 + world_tree::init_rescue_mode(); 1674 + println!(" ✓ World-Tree indexing ready"); 1675 + 1676 + println!("\n◈ Rescue mode active. Type 'help' for commands.\n"); 1677 + 1678 + // Start Eldarin shell in rescue mode 1679 + eldarin::start_rescue_shell(); 1680 + } 1681 + ``` 1682 + 1683 + --- 1684 + 1685 + ### World-Tree Indexing for Rescue 1686 + 1687 + ```rust 1688 + // groves/world-tree_grove/src/rescue/indexing.rs 1689 + 1690 + pub struct RescueIndexer { 1691 + vfs: &'static VfsManager, 1692 + index: MetadataIndex, 1693 + } 1694 + 1695 + impl RescueIndexer { 1696 + /// Index an existing filesystem (non-destructive) 1697 + pub fn index_filesystem(&mut self, mount: &str) -> Result<(), IndexError> { 1698 + let fs = self.vfs.get(mount).ok_or(IndexError::NotMounted)?; 1699 + 1700 + println!(" Indexing {}...", mount); 1701 + 1702 + // Walk filesystem tree 1703 + let mut files_indexed = 0; 1704 + self.walk_directory(fs, "/", |path, stat| { 1705 + // Extract metadata 1706 + let metadata = extract_metadata(path, stat)?; 1707 + 1708 + // Add to index 1709 + self.index.insert(path, metadata)?; 1710 + 1711 + files_indexed += 1; 1712 + if files_indexed % 1000 == 0 { 1713 + print!("\r Indexed {} files...", files_indexed); 1714 + } 1715 + 1716 + Ok(()) 1717 + })?; 1718 + 1719 + println!("\r ✓ Indexed {} files", files_indexed); 1720 + Ok(()) 1721 + } 1722 + 1723 + /// Extract metadata from file 1724 + fn extract_metadata(&self, path: &str, stat: &FileStat) -> Metadata { 1725 + Metadata { 1726 + essence: detect_essence(path, stat), 1727 + size: stat.size, 1728 + created: stat.created, 1729 + modified: stat.modified, 1730 + // More metadata extraction... 1731 + } 1732 + } 1733 + } 1734 + ``` 1735 + 1736 + --- 1737 + 1738 + ### Version Tracking During Rescue 1739 + 1740 + ```rust 1741 + // groves/world-tree_grove/src/rescue/versioning.rs 1742 + 1743 + pub struct VersionTracker { 1744 + snapshots: HashMap<PathBuf, Vec<Version>>, 1745 + } 1746 + 1747 + impl VersionTracker { 1748 + /// Track a file when it's first accessed 1749 + pub fn track_file(&mut self, path: &Path, fs: &dyn FileSystem) -> Result<()> { 1750 + let data = fs.read(path)?; 1751 + let hash = sha256(&data); 1752 + 1753 + let version = Version { 1754 + timestamp: now(), 1755 + hash, 1756 + size: data.len() as u64, 1757 + }; 1758 + 1759 + self.snapshots.entry(path.to_path_buf()) 1760 + .or_insert_with(Vec::new) 1761 + .push(version); 1762 + 1763 + // Store blob in World-Tree 1764 + world_tree::store_blob(&hash, &data)?; 1765 + 1766 + Ok(()) 1767 + } 1768 + 1769 + /// Get version history for a file 1770 + pub fn get_versions(&self, path: &Path) -> Vec<&Version> { 1771 + self.snapshots.get(path) 1772 + .map(|v| v.iter().collect()) 1773 + .unwrap_or_default() 1774 + } 1775 + 1776 + /// Restore file to previous version 1777 + pub fn restore(&self, path: &Path, version_idx: usize, fs: &mut dyn FileSystem) -> Result<()> { 1778 + let versions = self.snapshots.get(path) 1779 + .ok_or(VersionError::NotTracked)?; 1780 + 1781 + let version = versions.get(version_idx) 1782 + .ok_or(VersionError::InvalidVersion)?; 1783 + 1784 + // Retrieve blob from World-Tree 1785 + let data = world_tree::read_blob(&version.hash)?; 1786 + 1787 + // Write back to filesystem 1788 + fs.write(path, &data)?; 1789 + 1790 + println!("✓ Restored {} to version {}", path.display(), version_idx + 1); 1791 + Ok(()) 1792 + } 1793 + } 1794 + ``` 1795 + 1796 + --- 1797 + 1798 + ## Competitive Analysis 1799 + 1800 + ### vs. SystemRescue 1801 + 1802 + | Feature | SystemRescue | AethelOS Rescue | 1803 + |---------|--------------|-----------------| 1804 + | **Interface** | Bash (1980s) | Eldarin (2020s) | 1805 + | **Boot time** | ~60 seconds | <10 seconds | 1806 + | **File search** | `find` (slow, path-based) | World-Tree queries (fast, intelligent) | 1807 + | **Versioning** | None | Automatic | 1808 + | **Filesystem support** | Many (via kernel drivers) | FAT32, ext4, NTFS (v0.3); expandable | 1809 + | **Multi-FS queries** | Manual mounting + scripting | Native cross-filesystem search | 1810 + | **Safety** | C (prone to crashes) | Rust (memory-safe) | 1811 + | **Learning curve** | Steep (expert-only) | Gentle (plain language) | 1812 + | **Documentation** | Technical wiki | Interactive help + video tutorials | 1813 + | **License** | GPL | MIT/Apache 2.0 | 1814 + 1815 + **Verdict:** SystemRescue is powerful but dated. AethelOS is modern and accessible. 1816 + 1817 + --- 1818 + 1819 + ### vs. GParted Live 1820 + 1821 + | Feature | GParted Live | AethelOS Rescue | 1822 + |---------|--------------|-----------------| 1823 + | **Primary focus** | Partition editing | File recovery + rescue | 1824 + | **Interface** | GUI + command line | Beautiful CLI (Eldarin) | 1825 + | **File recovery** | Not primary function | Core feature | 1826 + | **Boot repair** | Limited | Comprehensive | 1827 + | **Intelligent search** | None | World-Tree queries | 1828 + | **Versioning** | None | Automatic | 1829 + 1830 + **Verdict:** GParted is great for partitioning. AethelOS focuses on rescue/recovery. 1831 + 1832 + --- 1833 + 1834 + ### vs. Hiren's Boot CD 1835 + 1836 + | Feature | Hiren's Boot CD | AethelOS Rescue | 1837 + |---------|----------------|-----------------| 1838 + | **Last update** | 2012 (abandoned) | Active development | 1839 + | **Windows focus** | Yes | Cross-platform | 1840 + | **Modern FS support** | Limited | Full (FAT32, ext4, NTFS, more) | 1841 + | **License** | Proprietary/questionable | Open source (MIT/Apache) | 1842 + | **Safety** | Old Windows tools (unsafe) | Rust (modern, safe) | 1843 + 1844 + **Verdict:** Hiren's is outdated. AethelOS is the modern replacement. 1845 + 1846 + --- 1847 + 1848 + ### vs. Clonezilla 1849 + 1850 + | Feature | Clonezilla | AethelOS Rescue | 1851 + |---------|------------|-----------------| 1852 + | **Primary focus** | Disk cloning | General rescue + cloning | 1853 + | **Interface** | ncurses (1990s) | Eldarin (modern CLI) | 1854 + | **Intelligent cloning** | Sector-by-sector or partition-aware | Smart cloning (skip junk) | 1855 + | **File-level operations** | Limited | Full support | 1856 + | **Search capabilities** | None | World-Tree queries | 1857 + 1858 + **Verdict:** Clonezilla for pure cloning. AethelOS for everything else + smart cloning. 1859 + 1860 + --- 1861 + 1862 + ## Marketing Strategy 1863 + 1864 + ### Positioning 1865 + 1866 + **Primary message:** 1867 + > "The rescue disc you've always wanted. Beautiful, intelligent, safe." 1868 + 1869 + **Secondary messages:** 1870 + - "Your data deserves better than grep" 1871 + - "When systems fail, the Healer arrives" 1872 + - "Rescue operations that don't suck" 1873 + 1874 + --- 1875 + 1876 + ### Target Channels 1877 + 1878 + #### 1. Technical Communities 1879 + 1880 + **Reddit:** 1881 + - /r/sysadmin 1882 + - /r/linux 1883 + - /r/datarecovery 1884 + - /r/techsupport 1885 + - /r/homelab 1886 + 1887 + **Posts:** 1888 + - Launch announcement 1889 + - Before/after comparisons (vs SystemRescue) 1890 + - User success stories 1891 + - Technical deep-dives 1892 + 1893 + --- 1894 + 1895 + #### 2. YouTube / Video 1896 + 1897 + **Content ideas:** 1898 + - "Recovering a Crashed Windows PC in 5 Minutes" 1899 + - "World-Tree Queries: Find ANY File in Seconds" 1900 + - "Fixing a Broken Linux Bootloader - The Easy Way" 1901 + - "AethelOS vs SystemRescue: Side-by-Side Comparison" 1902 + 1903 + **Creators to approach:** 1904 + - Level1Techs 1905 + - Linus Tech Tips (Linux content) 1906 + - NetworkChuck 1907 + - Brodie Robertson 1908 + 1909 + --- 1910 + 1911 + #### 3. Blogs / Articles 1912 + 1913 + **Platforms:** 1914 + - Hacker News (Show HN: AethelOS Rescue Edition) 1915 + - Ars Technica 1916 + - Phoronix 1917 + - The Register 1918 + - Linux Magazine 1919 + 1920 + **Angles:** 1921 + - "New Rust-based rescue OS challenges SystemRescue" 1922 + - "World-Tree: Git-like versioning for your entire disk" 1923 + - "Beautiful CLI that makes rescue operations actually enjoyable" 1924 + 1925 + --- 1926 + 1927 + #### 4. Professional Networks 1928 + 1929 + **LinkedIn:** 1930 + - IT professional groups 1931 + - Sysadmin communities 1932 + - Data recovery specialists 1933 + 1934 + **Conferences:** 1935 + - LISA (USENIX Large Installation System Administration) 1936 + - ShmooCon (security/forensics) 1937 + - DEF CON (villages/workshops) 1938 + 1939 + --- 1940 + 1941 + ### Launch Plan 1942 + 1943 + #### Pre-Launch (Week -4 to -1) 1944 + 1945 + **Build anticipation:** 1946 + - Teaser posts on social media 1947 + - Developer blog posts 1948 + - Early access beta program 1949 + - Demo videos 1950 + 1951 + **Target: 1,000+ email signups for launch notification** 1952 + 1953 + --- 1954 + 1955 + #### Launch Day (Week 0) 1956 + 1957 + **Major announcements:** 1958 + - Hacker News (Show HN) 1959 + - Reddit (multiple subreddits) 1960 + - Twitter/X thread 1961 + - YouTube release video 1962 + - Blog post 1963 + 1964 + **Press outreach:** 1965 + - Email to tech journalists 1966 + - Press release to Ars Technica, Phoronix, etc. 1967 + 1968 + **Target: 10,000+ downloads in first week** 1969 + 1970 + --- 1971 + 1972 + #### Post-Launch (Week 1-4) 1973 + 1974 + **Content series:** 1975 + - Week 1: User testimonials 1976 + - Week 2: Advanced features showcase 1977 + - Week 3: Comparison videos (vs competitors) 1978 + - Week 4: Use case tutorials 1979 + 1980 + **Community building:** 1981 + - Discord server 1982 + - GitHub discussions 1983 + - User showcase (success stories) 1984 + 1985 + **Target: 50,000+ downloads in first month** 1986 + 1987 + --- 1988 + 1989 + ### Monetization (Optional) 1990 + 1991 + **Free:** 1992 + - AethelOS Rescue Edition (core features) 1993 + - Community support (Discord, forums) 1994 + - Documentation and tutorials 1995 + 1996 + **Paid (Enterprise Edition):** 1997 + - Priority email support 1998 + - Advanced forensics tools 1999 + - Bulk USB creation tools 2000 + - Custom branding options 2001 + - Training materials 2002 + 2003 + **Pricing:** 2004 + - Individual: Free 2005 + - Small business (1-10 users): $99/year 2006 + - Enterprise (unlimited): $999/year 2007 + - Perpetual license: $1,999 2008 + 2009 + **Revenue projection:** 2010 + - Year 1: 100 paid customers × $500 avg = $50,000 2011 + - Year 2: 500 paid customers × $500 avg = $250,000 2012 + - Year 3: 2,000 paid customers × $500 avg = $1,000,000 2013 + 2014 + --- 2015 + 2016 + ## Success Metrics 2017 + 2018 + ### Technical Metrics 2019 + 2020 + **Performance:** 2021 + - ✅ Boot time: <10 seconds (target: 5 seconds) 2022 + - ✅ Filesystem mount: <2 seconds 2023 + - ✅ Query response: <1 second for typical queries 2024 + - ✅ File copy: Within 2x of native OS speed 2025 + - ✅ Indexing: >1,000 files/second 2026 + 2027 + **Reliability:** 2028 + - ✅ Zero crashes during rescue operations 2029 + - ✅ 100% data integrity (checksums verify) 2030 + - ✅ Graceful error handling 2031 + - ✅ No data loss in any scenario 2032 + 2033 + **Compatibility:** 2034 + - ✅ Boots on 95%+ of x86-64 PCs 2035 + - ✅ Reads FAT32/ext4/NTFS correctly 2036 + - ✅ Works with UEFI and legacy BIOS 2037 + - ✅ Compatible with all major USB brands 2038 + 2039 + --- 2040 + 2041 + ### User Metrics 2042 + 2043 + **Adoption:** 2044 + - Week 1: 10,000 downloads 2045 + - Month 1: 50,000 downloads 2046 + - Month 3: 150,000 downloads 2047 + - Month 6: 500,000 downloads 2048 + - Year 1: 1,000,000+ downloads 2049 + 2050 + **Engagement:** 2051 + - Discord: 1,000+ members by Month 3 2052 + - GitHub stars: 5,000+ by Month 6 2053 + - YouTube views: 100,000+ total by Month 6 2054 + 2055 + **Satisfaction:** 2056 + - >90% user satisfaction (surveys) 2057 + - >80% would recommend to colleagues 2058 + - <5 critical bugs reported (Year 1) 2059 + 2060 + --- 2061 + 2062 + ### Business Metrics (If Monetizing) 2063 + 2064 + **Revenue:** 2065 + - Year 1: $50,000 (100 enterprise customers) 2066 + - Year 2: $250,000 (500 customers) 2067 + - Year 3: $1,000,000 (2,000 customers) 2068 + 2069 + **Market share:** 2070 + - 10% of SystemRescue users switch (Year 1) 2071 + - 25% of new rescue disc users choose AethelOS (Year 2) 2072 + - #1 rescue disc for new users (Year 3) 2073 + 2074 + --- 2075 + 2076 + ## Conclusion 2077 + 2078 + **AethelOS Rescue Edition is not just a feature—it's the killer app.** 2079 + 2080 + It solves real problems today, builds a user base naturally, and creates a path to full OS adoption. 2081 + 2082 + **The vision:** 2083 + 1. **Rescue disc everyone uses** (Year 1) 2084 + 2. **Gateway to AethelOS adoption** (Year 2-3) 2085 + 3. **Ecosystem builds around it** (Year 3+) 2086 + 2087 + This is how you bootstrap an operating system: 2088 + - Not by asking people to abandon their OS 2089 + - But by becoming essential to their current workflow 2090 + - Then naturally growing into their daily driver 2091 + 2092 + **Status:** Ready to implement 2093 + **Timeline:** 12 weeks to v0.3.0 release 2094 + **Next step:** Begin Phase 1 (Foundation) 2095 + 2096 + --- 2097 + 2098 + *"The Healer arrives not with force, but with grace. It does not demand you change your ways, but offers help when you need it most. And in that moment of crisis, you see its beauty—and you wonder why you ever settled for less."* 2099 + 2100 + **Let's build the rescue disc the world deserves.** 🚀 2101 + 2102 + --- 2103 + 2104 + ## Appendices 2105 + 2106 + ### Appendix A: Example Use Cases (Extended) 2107 + 2108 + See [SCENARIOS.md](rescue/SCENARIOS.md) for 20+ detailed scenarios 2109 + 2110 + ### Appendix B: Command Reference 2111 + 2112 + See [COMMAND_REFERENCE.md](rescue/COMMAND_REFERENCE.md) for complete command documentation 2113 + 2114 + ### Appendix C: Filesystem Support Matrix 2115 + 2116 + See [FILESYSTEM_SUPPORT.md](rescue/FILESYSTEM_SUPPORT.md) for detailed compatibility info 2117 + 2118 + ### Appendix D: Bootloader Repair Guide 2119 + 2120 + See [BOOTLOADER_REPAIR.md](rescue/BOOTLOADER_REPAIR.md) for step-by-step repair procedures 2121 + 2122 + --- 2123 + 2124 + ## References 2125 + 2126 + - **VFS Plan:** [VFS_PLAN.md](VFS_PLAN.md) 2127 + - **World-Tree Plan:** [WORLD_TREE_PLAN.md](WORLD_TREE_PLAN.md) 2128 + - **SystemRescue:** https://www.system-rescue.org/ 2129 + - **Clonezilla:** https://clonezilla.org/ 2130 + - **TestDisk/PhotoRec:** https://www.cgsecurity.org/ 2131 + - **GRUB Documentation:** https://www.gnu.org/software/grub/manual/