5

I have a USB 3.5" floppy drive connected to my Linux box. I've verified that it is /dev/sdh on my Linux box, and I can read Linux-formatted floppies from it. (I had an old ext2 floppy lying around.)

I need to format a double-density 720k floppy to transfer data between my Linux machine and an older machine (an Amiga with CrossDOS installed).

I have tried:

mkdosfs -F 12 -I /dev/sdh

But this says:

mkfs.fat 3.0.26 (2014-03-07)
unable to get drive geometry, using default 255/63
mkdosfs: Attempting to create a too large filesystem

How can I format a 720k MS-DOS floppy on this machine with this drive?

  • What is the result of fdisk /dev/sdh? My answer below assumes a standard floppy drive, ie the command doesnt work for devices other than fd* – eyoung100 Aug 1 '15 at 1:10
8

I have just successfully formatted a completely blank floppy in a USB drive. This required a proper format, and not just writing a filesystem to the disk, because there were no sectors on it yet.

This is done with the ufiformat program, which is specifically designed to work with USB floppy drives.

$ sudo ufiformat -f 1440 -v /dev/sdd
format on device=/dev/sdd, size=1440
geometry: track=80, head=2, sector=18, block=512
done

This formats a 1.44MB floppy (-f 1440) in verbose mode (-v) using the USB floppy device at /dev/sdd. Use -f 720 for a 720k disk.

Here is some other information I found on my journey:

  • mkfs.msdos and mformat do not actually format a disk, they simply write a DOS (FAT12) filesystem onto an already formatted disk. If the disk has not been formatted (or has Amiga or other non-DOS data on it) then these programs will fail. You will of course have to use these programs to put a filesystem onto the floppy, after you have formatted it with ufiformat.

  • Likewise using dd to write an image to the disk won't work until the disk has been formatted first.

  • fdformat is only designed to work with PC-style floppy controllers (e.g. with drives that plug in to the motherboard floppy connectors.) It is not able to work with USB floppy drives.

  • OP asked for a 720k format, not a 1440k format. – FUZxxl Dec 13 '18 at 19:37
  • So use -f 720 instead? I've updated my answer to include this. – Malvineous Dec 14 '18 at 3:34
  • Well, the point is that not all USB floppy disk drives support this (mine certainly does not for some reason) and additionally, if you format a 720k floppy in a 1400k drive, the result is likely to be unreadable in a real 720k drive due to the track width being wrong. – FUZxxl Dec 14 '18 at 10:28
  • The track width is only different on 5.25" drives, with 3.5" drives 720k and 1440k disks have the same track width and count so the disks can be interchanged with DD drives without problem. (The increased capacity comes from a different magnetic material and a stronger magnetic field when writing.) I am not sure why a drive would not support 720k when only the magnetic field strength is different, but perhaps it was removed to keep costs low. Either way if you have a USB floppy that supports writing to 720k disks, ufiformat can certainly make use of it. – Malvineous Dec 18 '18 at 6:36
1

Try:

fdformat /dev/fd0u720
mkfs.msdos /dev/fd0

after creating a symlink from /dev/sdh to /dev/fd0

  • 1
    fdformat does not work with USB floppy drives. – FUZxxl Mar 28 '18 at 13:53

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.