From 7449a15389f87a27fe992e30b21301ab5db45123 Mon Sep 17 00:00:00 2001 From: minco Date: Thu, 13 Nov 2025 20:36:46 +0900 Subject: [PATCH] new: sata-to-nvme --- 2025-11-13-sata-to-nvme/0001-transfer.sh | 10 ++++++++++ 2025-11-13-sata-to-nvme/README.md | 6 ++++++ 2025-11-13-sata-to-nvme/REVIEW.md | 21 +++++++++++++++++++++ 3 files changed, 37 insertions(+) create mode 100644 2025-11-13-sata-to-nvme/0001-transfer.sh create mode 100644 2025-11-13-sata-to-nvme/README.md create mode 100644 2025-11-13-sata-to-nvme/REVIEW.md diff --git a/2025-11-13-sata-to-nvme/0001-transfer.sh b/2025-11-13-sata-to-nvme/0001-transfer.sh new file mode 100644 index 0000000..b6ea48d --- /dev/null +++ b/2025-11-13-sata-to-nvme/0001-transfer.sh @@ -0,0 +1,10 @@ +#!/usr/bin/env bash + +SOURCE_DISK=/dev/nvme0n1p2 +OUTPUT_IMAGE_PATH=/x/sata1/snapshots/nvme-old-1tb.zst +TRANSFER_SIZE=436G + +sudo partclone.ntfs -c -s $SOURCE_DISK -o - \ + | pv -s $TRANSFER_SIZE -pterb \ + | zstd -T0 -19 -o $OUTPUT_IMAGE_PATH + diff --git a/2025-11-13-sata-to-nvme/README.md b/2025-11-13-sata-to-nvme/README.md new file mode 100644 index 0000000..ffe1373 --- /dev/null +++ b/2025-11-13-sata-to-nvme/README.md @@ -0,0 +1,6 @@ +# SATA to NVME session + +## Goal +- Move all data in NTFS partition `/dev/nvme0n1p2` to `/x/sata1/snapshots`. +- Use partclone and zstd for the best efficiency. + diff --git a/2025-11-13-sata-to-nvme/REVIEW.md b/2025-11-13-sata-to-nvme/REVIEW.md new file mode 100644 index 0000000..df46b56 --- /dev/null +++ b/2025-11-13-sata-to-nvme/REVIEW.md @@ -0,0 +1,21 @@ +## Script Review: 0001-transfer.sh + +**Purpose:** Creates a compressed backup image of an NTFS partition using partclone and zstd compression. + +**Key Components:** +- **Source:** `/dev/nvme0n1p2` (NTFS partition) +- **Output:** `/x/sata1/snapshots/nvme-old-1tb.zst` (compressed image) +- **Transfer Size:** 436G (used for progress monitoring) + +**Pipeline:** +1. `partclone.ntfs -c -s $SOURCE_DISK -o -` - Clones NTFS partition to stdout +2. `pv -s $TRANSFER_SIZE -pterb` - Monitors progress with visual feedback (progress, time, rate, bytes) +3. `zstd -T0 -19 -o $OUTPUT_IMAGE_PATH` - Compresses with max compression (level 19) using all CPU threads + +**Notes:** +- Requires `sudo` privileges +- Uses maximum compression (`-19`) for best space efficiency +- Multi-threaded compression (`-T0`) for faster processing +- Progress bar provides real-time feedback during the long-running operation + +Let's go.