Storage Consolidation & Backup Strategy¶
Generated: 2026-02-01 | Primary: OWC ThunderBlade X12 (21 TB TB5 NVMe)
Current State¶
| Volume | Size | Used | Free | Status |
|---|---|---|---|---|
| ThunderBlade X12 | 21 TB | 7.0 TB | 14 TB | Pegasus migration ~85% |
| Promise Pegasus R6 | 9.1 TB | 8.1 TB | 1.0 TB | 3 rsyncs remaining |
| Mac HD | 1.8 TB | ~487 GB | 1.0 TB | Partially cleaned |
| 13 External HDDs | Unknown | Unknown | — | Not yet inventoried |
ThunderBlade Current Usage¶
| Folder | Size | Status |
|---|---|---|
| Personal/ | 3.5 TB | Photos, Family Videos, Dad-Archive (in progress) |
| _Archive/ | 2.0 TB | Old backups, legacy items |
| Media/ | 1.0 TB | Movies (complete) |
| Business/ | 297 GB | DXC, CSC (complete) |
| Technical/ | 213 GB | DB/SQL, training, scripts |
| AI-To-Categorize/ | 37 GB | Downloads + Mac HD cleanup |
| _Exports/ | 2.8 GB | Google Takeout, Notion |
| Email-Archives/ | 1.3 GB | PST + extracted |
| Active/ | 8 KB | Empty — for current work |
7.0 TB of 21 TB used (33%)
Goals¶
- ~~Migrate Pegasus → ThunderBlade~~ 85% complete
- Verify all Pegasus transfers
- Clean up Google Drive & Dropbox
- Import 13 external hard drives onto ThunderBlade
- Establish clean taxonomy for unified archive
- Set up Corbie AI Personal for tagging and semantic search
- Repurpose Pegasus R6 as local backup (Tier 1)
- Decommission Pegasus + external drives
Phase Progress¶
| Phase | Description | Status |
|---|---|---|
| Phase 1 | ThunderBlade folder structure | :white_check_mark: Complete |
| Phase 2 | Pegasus migration | :hourglass: 85% — 3 rsyncs finishing |
| Phase 3 | Mac HD cleanup | :hourglass: Partial |
| Phase A | Finish Pegasus migration (autonomous) | :hourglass: Monitor running |
| Phase B | Verify Pegasus transfers | Pending |
| Phase C | Google Drive & Dropbox cleanup | Pending |
| Phase D | Inventory 13 external drives | Pending |
| Phase E | Unified taxonomy | Pending |
| Phase F | Corbie AI Personal integration | Pending |
| Phase G | Backup strategy | :warning: GAPS FOUND |
:warning: Backblaze Gaps (URGENT)¶
Current Configuration Problems
Source: /Library/Backblaze.bzpkg/bzdata/bzinfo.xml
| Issue | Impact | Fix |
|---|---|---|
| ThunderBlade NOT in backup set | 7 TB has NO off-site backup | Add ThunderBlade volume in Backblaze prefs |
| Drobo.dmg EXCLUDED by file type | Father's irreplaceable archive NOT backed up | Remove .dmg from global excludes |
| Cox upload = 35 Mbps | 7 TB initial backup = ~19 days | See internet options below |
| Cox 1.25 TB/month data cap | 7 TB = 5.6x cap = overage fees | Add unlimited data ($50/mo) |
Current config: Account bfrichot@gmail.com (Personal, $99/yr) · Only volume: Mac HD (/) — ThunderBlade NOT included · 10 threads · 100% throttle · Global excludes: .dmg .iso .vhd .vmdk
Internet & Upload Reality¶
Cox Plans¶
| Cox Plan | Download | Upload | Monthly | Data Cap |
|---|---|---|---|---|
| Fast (300 Mbps) | 300 Mbps | 10 Mbps | $50/mo | 1.25 TB |
| Go Super Fast (1 Gig) ← current | 940 Mbps | 35 Mbps | $100/mo | 1.25 TB |
| 2 Gig Extra | 2,000 Mbps | 100 Mbps | $115/mo | 1.25 TB |
| Cox Fiber (if available) | 1,000 Mbps | 1,000 Mbps | ~$100/mo | No cap |
| Unlimited data add-on | — | — | +$50/mo | Unlimited |
Initial Backup Time (7 TB to Backblaze)¶
| Upload Speed | Time to Backup 7 TB | Notes |
|---|---|---|
| 35 Mbps (current Cox 1 Gig) | ~19 days | Cable upload is the bottleneck |
| 100 Mbps (Cox 2 Gig) | ~6.5 days | 3x faster, only +$15/mo |
| 1,000 Mbps (Cox Fiber) | ~16 hours | Symmetrical — check availability |
Recommendation: Check Cox Fiber availability. If unavailable, upgrade to 2 Gig Extra ($115/mo) during initial backup for 3x speed. After initial backup completes, daily incrementals are small and 35 Mbps is sufficient.
Recovery Tiers¶
Tier 0 — ThunderBlade X12¶
- Recovery: 6,600 MB/s (instant)
- Capacity: 21 TB
- Cost: $0 (owned)
- Primary storage. All data lives here.
Tier 1 — Pegasus R6 (Local)¶
- Recovery: ~276 MB/s
- Capacity: 9.1 TB (RAID-5)
- Cost: $0 + electricity
- Fast local recovery for irreplaceable data.
Tier 2 — Backblaze Personal¶
- Recovery: 940 Mbps (download) or USB drive shipped free
- Capacity: Unlimited
- Cost: $99/yr
- Off-site disaster recovery. USB shipment for full restore.
Tier 3 — Google Drive¶
- Recovery: 940 Mbps (download)
- Capacity: Plan-limited
- Cost: Current plan
- Active business docs only.
Backblaze restore options: Web download (zip up to 500 GB per request) · USB drive shipped free (best for full 7 TB restore) · Restore app
Recovery Time Objectives¶
| Data Category | Size | RTO | Backup Tier | Recovery Method |
|---|---|---|---|---|
| Irreplaceable (Dad-Archive, Family Videos, Photos) | ~4.4 TB | < 4 hours | Tier 1 + 2 | Pegasus rsync restore |
| Business-critical (Active, Business, Email) | ~300 GB | < 1 hour | Tier 1 + 2 | Pegasus rsync restore |
| Important (Technical, Media excl. Movies) | ~1.2 TB | < 24 hours | Tier 1 + 2 | Pegasus or Backblaze |
| Replaceable (Movies, _Archive, Old-Software) | ~3 TB | Days/weeks | Tier 2 only | Backblaze USB shipment |
| Active docs | < 5 GB | Instant | Tier 3 | Google Drive sync |
Pegasus R6 as Tier 1 Backup (9.1 TB)¶
| Content | Size | Priority | Reason |
|---|---|---|---|
| Personal/Dad-Archive/ | 308 GB | P0 — MUST | Father's archive (irreplaceable) |
| Personal/Family-Videos/ | 522 GB | P0 — MUST | Irreplaceable family moments |
| Personal/Photos/ | 3.5 TB | P0 — MUST | 25 years of photos |
| Business/ | 297 GB | P1 — HIGH | Career history, tax/legal |
| Email-Archives/ | 1.3 GB | P1 — HIGH | Communication history |
| Active/ | varies | P1 — HIGH | Current work |
| Technical/ | 213 GB | P2 — MED | Training, scripts, code |
| _Exports/ | 2.8 GB | P2 — MED | Google Takeout, Notion |
| Subtotal P0-P2 | ~4.8 TB | Fits easily in 9 TB | |
| Media/Music/, GoPro/ | varies | P3 — LOW | Can re-rip or redownload |
Excluded from Pegasus (Backblaze only): Movies (961G), _Archive (2 TB), AI-To-Categorize
Backup Schedule¶
Pegasus (Tier 1)¶
- Nightly: rsync --delete of P0+P1 folders
- Weekly: rsync of P2+P3 folders
- Method: LaunchAgent or cron job
Backblaze (Tier 2)¶
- Add ThunderBlade volume to backup set
- Remove .dmg from global excludes
- Verify Cox unlimited data is active
- Let initial backup run (~6-19 days)
- Ongoing: continuous incremental
Cost Summary¶
| Item | Monthly | Annual | What You Get |
|---|---|---|---|
| Backblaze Personal | $9 | $99 | Unlimited backup (Mac + attached drives) |
| Cox 1 Gig (current) | $100 | $1,200 | 940 down / 35 up |
| Cox Unlimited Data | +$50 | $600 | Remove 1.25 TB cap |
| Pegasus electricity | ~$4 | ~$50 | On 24/7 for scheduled backups |
| Google Drive | current | current | Active docs sync |
| Total (steady state) | ~$163 | ~$1,949 | 3-2-1 compliant |
Optional: Cox 2 Gig Extra (+$15/mo for 100 Mbps upload) · Cox Fiber (~$100/mo symmetrical 1 Gbps, if available)
Unified Taxonomy¶
ThunderBlade X12/
├── Active/ # Current work, hot data
├── Business/ # All employer/client work by company
│ ├── CSC/
│ ├── DXC/
│ ├── IT-Raven/
│ ├── Freelance/
│ └── <new-employer>/ # Extensible
├── Personal/
│ ├── Family-Videos/
│ ├── Dad-Archive/ # PRECIOUS — Drobo.dmg
│ ├── Photos/
│ ├── Voice-Memos/
│ ├── BSA-Scouts/
│ ├── Documents/
│ └── Fitness/
├── Media/
│ ├── Movies/
│ ├── Music/
│ ├── GoPro/
│ ├── Screenshots/
│ └── Podcasts/
├── Technical/
│ ├── Database-SQL/
│ ├── Oracle/
│ ├── Training/
│ ├── Scripts/
│ ├── ML-Projects/
│ ├── Code-Repos/
│ └── VMs/
├── Email-Archives/
├── AI-To-Categorize/ # Unsorted → Corbie AI processes
├── _Archive/
│ ├── Old-Backups/
│ ├── Old-Software/
│ ├── Legacy/
│ └── External-Drives/ # Raw imports
├── _Exports/
└── _Imports/ # Staging area (temporary)
Taxonomy Rules¶
- Company = subfolder of Business/ — any employer, client, or business entity
- Time Machine / disk images → _Archive/Old-Backups/
- Photos from any era → Personal/Photos/ (subfolder by source or year)
- Videos → Personal/Family-Videos/ or Media/Movies/ depending on content
- Music → Media/Music/
- Unknown / mixed → AI-To-Categorize/ for Corbie AI to process
- Raw drive import that doesn't fit → _Archive/External-Drives/\<DriveName>/
- Duplicates → delete (after verification)
13 External Hard Drives¶
Contents are unknown. This is a discovery phase.
Per-Drive Workflow¶
- Mount and catalog — top-level directory listing, sizes, depth-2 tree
- Generate manifest — file list saved to
_Imports/<DriveName>-manifest.txt - Identify duplicates — cross-reference against existing ThunderBlade content
- Classify content into taxonomy categories
- rsync with --ignore-existing — skip exact matches
- fdupes second pass — find duplicates by content hash
- Log all dedup decisions to
_Imports/<DriveName>-dedup-log.txt
Corbie AI Personal Integration¶
- Crawl ThunderBlade folder structure
- Extract metadata: file type, date, size, path, EXIF (photos), text content (documents)
- Generate embeddings: Azure OpenAI text-embedding-3-small (1536d)
- Store vectors in Qdrant — new collection:
PERSONAL_ARCHIVE - Tag files with taxonomy labels
- Enable semantic search: "find photos from Dad's birthday 2017", "DXC Oracle migration docs"
Implementation¶
agent/tools.py— add personal archive search toolazure_functions/— add /personal/index and /personal/search endpointstools/personal_archive_crawler.py— new file crawler
Execution Order¶
- :hourglass: Wait for 3 remaining rsyncs (autonomous monitor)
- Verify all Pegasus transfers (Phase B)
- Fix Backblaze — add ThunderBlade, remove .dmg exclude
- Verify Backblaze is backing up ThunderBlade
- Clean up Google Drive & Dropbox (Phase C)
- Create
_Imports/staging on ThunderBlade - Inventory each external drive one at a time (Phase D)
- Import non-duplicate content into taxonomy (Phase E)
- Set up Corbie AI Personal crawler and indexer (Phase F)
- Repurpose Pegasus as local backup with scheduled rsync (Phase G)
- Decommission external drives after full verification
Immediate Actions¶
Do These Now
- Open Backblaze System Preferences → Add ThunderBlade X12 to backup set
- Edit Backblaze exclude list → Remove
.dmgto protect Drobo.dmg - Check Cox Fiber availability at your address
- Verify Cox unlimited data is already active
- Monitor initial backup in Backblaze dashboard
Critical Notes¶
- Do NOT delete anything from source drives until ThunderBlade copies are verified
- Do NOT wipe Pegasus until BOTH ThunderBlade AND Backblaze have confirmed copies
- Drobo.dmg is father's archive (deceased) — verify checksum after every operation
- Drobo.dmg is currently EXCLUDED from Backblaze by global file type filter — must fix
- ThunderBlade has 14 TB free — plenty of room for all 13 drives
- Pegasus spinning disks max ~65 MB/s via rsync; ThunderBlade NVMe = 6,600 MB/s peak
- Mac is M4 Max with Thunderbolt 5 — no bottleneck on Mac or ThunderBlade side
- Cox "1 Gig" = 940 Mbps down / 35 Mbps up (asymmetric cable, NOT fiber)