I have a USB where I'm coping an ISO of 5 Mb aprox with a small OS with its own grub. If I connect the device and check it sudo fdisk -l I get:
... Device Boot Start End Sectors Size Id Type /dev/sdb1 * 1 9551 9551 4.7M cd unknown
If I copy with dd the ISO sudo dd if=my_os.iso of=/dev/sdb
14852+0 records in 14852+0 records out 7604224 bytes (7.6 MB) copied, 0.538487 s, 14.1 MB/s
It works perfectly. An boot from BIOS in other PC.
The problem is, sometime I forget to connect the USB after update the BIOS, so I do ff WITHOUT the USB connected, the output is:
14852+0 records in 14852+0 records out 7604224 bytes (7.6 MB) copied, 0.00987684 s, 770 MB/s
Now, the /dev/sdb register is corrupted, the copy speed (770 MB/s) have no sense, and cannot user again dd until reboot.
I have tried to repair it with ddrescue and it doesn't work
sudo ddrescue /dev/zero /dev/sdb conv=noerror,sync
My question is, what is happening exactly and if is possible, how to repair /dev/sdb to avoid reboot and dd start working again?