SKYHOUSE.dev Journal

Maintaining the Cloud Fortress

Boot-disk swap executed: Corsair → 1 TB SSD (live clone)

Why: The ~2011 Corsair Force GT boot SSD (12.3 years powered on) was overdue for replacement. The 1 TB SATA SSD arrived, so we did the swap — and chose a pragmatic live clone over the offline-live-USB method in the runbook, because both drives were internal SATA (fast) and a quiesced live clone was simpler.

What we actually did (deviating from the runbook)

  1. New SSD connected to a free SATA port (no need to unplug anything for the clone). Identified everything by serial / by-id, never by /dev/sd* letter.
  2. Quiesced the writers — stopped Docker (clean container shutdown flushes the DBs), Plex, netdata, cron; sync. This made the live clone effectively clean, not just crash-consistent.
  3. Cloned with ddrescue: ddrescue -f /dev/disk/by-id/ata-Corsair_Force_GT_12147901000014820017 /dev/disk/by-id/ata-SSV8_AA000000000000002477 /var/tmp/corsair-clone.map — ~112 GB at ~332 MB/s, 0 read errors, 0 bad sectors (~6 min).
  4. sgdisk -e on the new disk (move backup GPT to the end of the 954 GB drive). Restarted the stopped services.
  5. Powered down → removed the old Corsair → re-seated plex1 (its cable had been knocked loose, causing ata-link resets) → added the 128 GB Kingston as a future scratch disk → booted from the new SSD.
  6. Grew root online into the full disk: growpart <disk> 3 + resize2fs/ went from 109 GB to 938 GB (818 GB free), zero downtime.

Result

Loose ends

← Back to Admin Hub