Deploy Refused — Sector Size Mismatch
Symptom
A deploy task stops early — before the disk is written — with a message like:
Sector size mismatch
Image was captured on a disk with 4096-byte logical sectors, but /dev/sda
uses 512-byte logical sectors.
Partition-table and filesystem geometry cannot be translated between logical
sector sizes, so this image cannot be deployed to this disk.
Deploy this image only to a disk with 4096-byte logical sectors, or capture a
new image on a disk with 512-byte logical sectors.
What it means
The image was captured on a disk whose logical sector size (512 or 4096 bytes) is different from the disk you’re deploying to. FOG cannot translate partition-table and filesystem geometry between the two, so it refuses rather than write a disk that won’t boot. Nothing was written — the target disk is untouched.
On newer FOS builds the message also includes a line about the target’s device type, for example:
/dev/mmcblk0 is an eMMC/SD device; its 512-byte logical sector size is fixed
by the MMC/SD specification and cannot be changed. Only an image captured on
512-byte-sector hardware can deploy to it.
That line tells you which side of the mismatch can be fixed: if the target’s sector size is fixed (eMMC/SD, UFS), recapturing on matching hardware is the only remedy; if the target is a virtual disk, you can change its sector size in the VM’s disk configuration instead.
For the full explanation of why this happens — and what each device type can and can’t do — see Sector Sizes and Imaging.
How to fix it
Pick whichever fits your situation:
-
Deploy to matching hardware. Send this image to a disk with the same logical sector size it was captured on (the message tells you which). 512n and 512e disks are interchangeable; 4Kn disks are not interchangeable with either.
-
Recapture on the target geometry. If you need this image on the current hardware, capture a fresh image from a machine whose disk matches, then deploy that image instead.
-
Let FOS reformat an NVMe target. If the target is an NVMe drive that supports the image’s sector size, FOS offers to low-level reformat it to match after a 60-second cancel window. See NVMe targets can be reformatted to match. NVMe is the only device type this works for — not SATA/SAS, eMMC/SD, UFS, or USB targets, and not NVMe drives that are 4Kn-only. See Sector sizes by device type for the per-type breakdown.
-
Virtual machine target? The disk’s logical sector size is set by the hypervisor, not the virtual disk itself. Change the disk’s
logical_block_size(QEMU/libvirt/Proxmox) to match the image and redeploy.
Checking a disk’s sector size
From a FOS shell (a debug task) or any Linux host:
blockdev --getss /dev/sdX # logical sector size: 512 or 4096
blockdev --getpbsz /dev/sdX # physical sector size
Match the logical size (--getss) between the image’s source disk and the
deploy target.
See also
- Sector Sizes and Imaging — the full reference
- Deploy an Image