Use Case: Large File Transfer
Scenario
Transfer a single large file (e.g., 50GB VM image) across an air-gap using 16GB USB drives.
Transfer a single large file (50GB VM image) across air-gap using multiple 16GB USB drives with automatic chunking. Pack: Split file into chunks sized for USB capacity (one chunk per USB: 3x 16GB + 1x 2GB across 4 USB drives), generate checksums, create manifest on each USB. Transfer: Physically move USB drives across air-gap boundary. Unpack: Verify chunk checksums, reconstruct original file, verify final file integrity. Success Criteria: File reconstructed matches original, all checksums verified, no data loss, process completable by non-technical user. |
Prerequisites
Source machine: Connected system with internet access
Destination machine: air-gapped system
Transfer media: Four 16GB USB drives
File:
vm-image.qcow2(50GB)
Workflow Steps
Phase 1: Pack on Source Machine
Connect USB drive #1
airgap-transfer pack vm-image.qcow2 /media/usb-drive --dry-runPreview: Shows 4 chunks needed (3x 16GB + 1x 2GB)
Execute pack operation
airgap-transfer pack vm-image.qcow2 /media/usb-drive
Writes
chunk_000.tar(16GB)Generates SHA-256 checksum
Updates manifest
Swap USB drives
Tool prompts: “Insert next USB drive”
Eject USB #1 safely
Connect USB #2
Tool continues with
chunk_001.tar
Repeat for remaining chunks
USB #3 contains
chunk_002.tar(16GB)USB #4 contains
chunk_003.tar(2GB)All USBs contain copy of manifest:
airgap-transfer-manifest.json
Phase 2: Physical Transfer
Physically move USB drives across air-gap boundary
No network connectivity required
Phase 3: Unpack on Destination Machine
Connect USB drive #1
airgap-transfer list /media/usb-driveShows chunks present on this USB (chunk_000)
Connect all USB drives
Mount USB #1, #2, #3, #4
All chunks now accessible
Execute unpack operation
airgap-transfer unpack /media/usb-drives ~/restored/
Verifies checksums for all chunks
Reconstructs
vm-image.qcow2Verifies final file integrity
Reports: “Success: 50GB transferred, verified”
Success Criteria
✅ File reconstructed matches original
✅ All checksums verified
✅ No data loss or corruption
✅ Process completable by non-technical user
Error Scenarios
Error |
Cause |
Recovery |
|---|---|---|
“Chunk missing” |
USB #2 not connected |
Connect missing USB |
“Checksum mismatch” |
Corrupted chunk |
Re-pack affected chunk |
“Insufficient space” |
Destination disk full |
Free space, retry |