On 13/10/26 at 21:32, Thomas Schmitt wrote:
Hi,

Franco Martelli wrote:
why do we insist using "dd" (Disk Dump)? It's tricky, and has not a
comfortable syntax, why don't we suggest end users to use "pv" (Pipe

In this case probably because hlyg, the original poster, wanted to try
whether the alteration sits in the first MB of the ISO image:

hlyg wrote:
i have found solution:
dd if=debian-live-13.7.0-amd64-lxqt.iso of=/dev/sdd bs=1M count=1
it needs ISO file, but it isn't problem as wget allows partial downloading,
a few MBs is enough

In a later mail:
i have thought of using cp, but cp doesn't allow you to specify how many
bytes to be copied

Yes, thanks, sorry I didn't read the whole thread only the last email. To do it with "pv" use this syntax:

~# pv -YSs 1M debian-live-13.7.0-amd64-lxqt.iso >/dev/sdX

As we are at it, here is my opinion about the case of full image
copying.

Franco Martelli wrote:
# dd if=debian-live-13.7.0-amd64-lxqt.iso of=dev/sdX obs=4M oflag=sync 
status=progress
~# pv -Y debian-live-13.7.0-amd64-lxqt.iso >/dev/sdX

Although the pv command is shorter, it imposes the same main risk as
dd or cp, namely the choice of /dev/sdX when running them under sudo.

For safety reasons i propose:

   xorriso-dd-target -with_sudo -plug_test -DO_WRITE \
                     -image_file debian-live-13.1.0-amd64-standard.iso

See
   https://wiki.debian.org/XorrisoDdTarget
   
https://manpages.debian.org/trixie/xorriso-dd-target/xorriso-dd-target.1.en.html

I've installed "xorriso-dd-target" in a virtual machine, tried it, and I found it very nice, suitable for end users that are unsure about which device to choose to perform the writing.

The part I found weak it is when "xorriso-dd-target" refuses to perform the writing, notably it is not verbose: it doesn't explain why the writing process abort, the reason. For example in the "Step 2" output:

...
Step 2:
Please plug in the desired target device and then press the Enter key.

Waiting up to 10 seconds for a new device to be listed ... found: sde
Now waiting 5 seconds to let it settle .........
Found and noted as desired device:  sde

sde : NO  : usb+ has_ext4- : General UDisk
NO CANDIDATE FOR TARGET DEVICE AMONG THE GIVEN NAMES !
Overall available devices:
sda : NO : not_usb- has_linux_raid_member- has_LVM2_member- has_ext4- has_swap- : ATA VBOX HARDDISK sdb : NO : not_usb- has_linux_raid_member- has_LVM2_member- has_ext4- has_swap- : ATA VBOX HARDDISK sdc : NO : not_usb- has_linux_raid_member- has_LVM2_member- has_ext4- has_swap- : ATA VBOX HARDDISK sdd : NO : not_usb- has_linux_raid_member- has_LVM2_member- has_ext4- has_swap- : ATA VBOX HARDDISK
sde : NO  : usb+ has_ext4- : General UDisk
...

The lines:
sde : NO  : usb+ has_ext4- : General UDisk
NO CANDIDATE FOR TARGET DEVICE AMONG THE GIVEN NAMES !

Here, should explain the reason, otherwise the end user has to read the whole documentation to discover that the USB stick must have ISOFS or VFAT filesystem on it to perform the writing. Its output it should be something like:

sde : NO  : usb+ has_ext4- : General UDisk
sde : Reason : has_ext4- : MUST HAVE ISOFS OR VFAT FILESYSTEM ON IT (see documentation)
NO CANDIDATE FOR TARGET DEVICE AMONG THE GIVEN NAMES !

It should be easily patchable since it is a POSIX shell script, to save typing I've also defined an alias:

~$ alias dd2usb='xorriso-dd-target -with_sudo -plug_test -DO_WRITE -image_file'

Kind regards,
--
Franco Martelli

Reply via email to