Re: DD bs=4M option on USB mem-stick creates false format
All I can say is that I feel honored that some useful code was produced
with my problem statement as an inspiration.
I am doing research on the topic trying to learn all that feels like a
huge gap of how disks and data relate.
Have a nice day Thomas
kAt
Thomas Schmitt:
> Hi,
>
> i wrote a small program which shall make a USB stick with isohybrid ISO
> more digestible for partition editors by removing all partition tables
> except MBR partitions.
> It then creates a new partition in the first MBR partition slot which
> is found with block count 0.
>
> usage: ./make_isombr_part file_path partition_end partition_type
>
> Creates a partition in a free slot of an isohybrid MBR in an ISO.
> Removes GPT and APM signatures if present.
> file_path must lead to a file or device with isohybrid ISO.
> partition_end tells the number of 512-byte blocks of device.
> partiton_end value "auto" means full number of device blocks.
> partition_type is a hex number in the range of 00 to ff.
> Type examples: 83 = Linux , 0c = FAT32 , 17 = Hidden NTFS
>
> Binary compiled on Debian 8 (you may need to give it x-permission after
> download):
>
> http://scdbackup.webframe.org/make_isombr_part
>
> MD5: 4856af2c1b50a775325a3e6c09d7d9bc
>
> Source code:
> http://scdbackup.webframe.org/make_isombr_part.c
>
> The argument "auto" currently works only on Linux kernels.
> On other systems one has to give the block number explicitely.
>
> ------------------------------------------------------------------------
>
> See a test run with rescatux ISO on /dev/sdc (any current Debian i386
> or amd64 ISO would be suitable, too).
>
> Still less dangerous than manipulating /dev files as superuser is
> to give the world temporary permission to the one stick in question:
>
> $ sudo chmod o+rw /dev/sdc
>
> (The program is supposed to refuse if it does not find an isohybrid ISO.
> But better do not bet on those safety measures.)
>
> Let the program remove APM and GPT and add a MBR partition:
>
> $ chmod u+x ./make_isombr_part
>
> $ ./make_isombr_part /dev/sdc auto 83
> Note: Storage capacity of '/dev/sdc' : 3915776 blocks
> Note: Wrote MBR partition slot 3, type 0x83, start 1374208, blocks 2541568
> Note: Removed APM signature
> Note: Removed GPT signature at block 1
> Note: Removed GPT signature at block 1374207
>
> Afterwards, fdisk reports the new partiton table:
>
> $ /sbin/fdisk -l /dev/sdc
> Disk /dev/sdc: 1.9 GiB, 2004877312 bytes, 3915776 sectors
> ...
> Device Boot Start End Sectors Size Id Type
> /dev/sdc1 * 64 1374207 1374144 671M 0 Empty
> /dev/sdc2 1297212 1298619 1408 704K ef EFI (FAT-12/16/32)
> /dev/sdc3 1374208 3915775 2541568 1.2G 83 Linux
>
> When done, exclude the world from directly reading and altering the stick
> content:
>
> $ sudo chmod o-rw /dev/sdc
>
> Best unplug the stick and put it in again, so that the operating system
> takes notice of the new partition table situation.
>
> ------------------------------------------------------------------------
>
> It would be interesting to see how various partition editors react on
> this state of the USB stick. Can they reduce the size of partition 3 ?
> Can they remove partition 3 and add on new one ?
>
> ------------------------------------------------------------------------
>
> Have a nice day :)
>
> Thomas
>
>
Reply to: