Hi, When creating partitions on a destination that is not a block device, sfdisk do a BLKRRPART ioctl even when --no-reread option is used, but looking at documentation --no-reread only apply to the beginning process. Would it be fine to extend that to the complete process ? Bertrand dd if=/dev/zero of=/tmp/disk.img bs=1024 count=4032 strace -fF -s 1024 -e trace=ioctl \ sfdisk --no-reread -C2 -H32 -S63 -q -f \ /tmp/disk.img << EOF unit: sectors part1 : start= 63, size= 3969, Id=83 part2 : start= 4032, size= 98784, Id=83 part3 : start= 102816, size= 22176, Id=83 part4 : start= 124992, size= 0, Id=83 EOF ioctl(0, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or TCGETS, 0x7fff7b917ce0) = -1 ENOTTY (Inappropriate ioctl for device) Warning: /tmp/disk.img is not a block device ioctl(3, HDIO_GETGEO, 0x7fff7b917c10) = -1 ENOTTY (Inappropriate ioctl for device) Disk /tmp/disk.img: cannot get geometry ioctl(3, BLKGETSIZE64, 0x7fff7b917be0) = -1 ENOTTY (Inappropriate ioctl for device) ioctl(3, BLKGETSIZE, 0x7fff7b917b18) = -1 ENOTTY (Inappropriate ioctl for device) ioctl(3, FDGETPRM, 0x7fff7b917af0) = -1 ENOTTY (Inappropriate ioctl for device) Disk /tmp/disk.img: 2 cylinders, 32 heads, 63 sectors/track sfdisk: ERROR: sector 0 does not have an msdos signature /tmp/disk.img: unrecognized partition table type Old situation: No partitions found New situation: Units = sectors of 512 bytes, counting from 0 Device Boot Start End #sectors Id System /tmp/disk.img1 63 4031 3969 83 Linux /tmp/disk.img2 4032 102815 98784 83 Linux /tmp/disk.img3 102816 124991 22176 83 Linux /tmp/disk.img4 124992 124991 0 83 Linux Successfully wrote the new partition table Re-reading the partition table ... ioctl(3, BLKRRPART, 0) = -1 ENOTTY (Inappropriate ioctl for device) BLKRRPART: Inappropriate ioctl for device -- Beber
Attachment:
signature.asc
Description: Digital signature