Subject: bug#25233: parted is confused by ISO images, miscalculates sizes/offsets

From: Bjørn Forsman <[email-masked]>
Date: Mon, 19 Dec 2016 13:19:15 +0100

Hi all,

[My name is Bjørn Forsman, end user of parted, I'm using parted as my
primary partitioning tool.]

When I run parted (latest version, 3.2) on an ISO file, it gets
confused about the block size:

  $ parted ubuntu-16.04-desktop-amd64.iso p
  WARNING: You are not superuser.  Watch out for permissions.
  Warning: The driver descriptor says the physical block size is 2048
bytes, but Linux says it is 512 bytes.
  Ignore/Cancel?

If I select "Ignore", it misinterprets the size and the partition table:

  Model:  (file)
  Disk /home/bfo/Downloads/ubuntu-16.04-desktop-amd64.iso: 5944MB
  Sector size (logical/physical): 2048B/512B
  Partition Table: mac
  Disk Flags:

  Number  Start   End     Size    File system  Name   Flags
   1      2048B   6143B   4096B                Apple
   2      1479MB  1481MB  2425kB               EFI

And if I select "Cancel" it gets the size right but doesn't show any more data:

  Model:  (file)
  Disk /home/bfo/Downloads/ubuntu-16.04-desktop-amd64.iso: 1486MB
  Sector size (logical/physical): 512B/512B
  Partition Table: unknown
  Disk Flags:

Why cannot parted handle this like fdisk?

  $ fdisk -l ubuntu-16.04-desktop-amd64.iso
  Disk ubuntu-16.04-desktop-amd64.iso: 1.4 GiB, 1485881344 bytes,
2902112 sectors
  Units: sectors of 1 * 512 = 512 bytes
  Sector size (logical/physical): 512 bytes / 512 bytes
  I/O size (minimum/optimal): 512 bytes / 512 bytes
  Disklabel type: dos
  Disk identifier: 0x0e0e8e70

  Device                          Boot   Start     End Sectors  Size Id Type
  ubuntu-16.04-desktop-amd64.iso1 *          0 2902111 2902112  1.4G  0 Empty
  ubuntu-16.04-desktop-amd64.iso2      2888004 2892739    4736  2.3M
ef EFI (FAT-12/16/32)

I wonder if commit f98f791e19669b900345dad7d96ea4df974e4596
("libparted: device mapper uses 512b sectors") fixes this.
This commit is from february 2015. Any plans on making a new release?
(I'm an end user, I use released software.)

Best regards,
Bjørn Forsman