2011-12-14

Rufus - The bootable USB Formatting Utility

It is my very great pleasure to introduce Rufus (direct downloads here), my own GPL'd version of a bootable USB formatting utility (DOS + ISO).


If you have been using the old HP Utility to create DOS bootable USB, you can throw that old thing away! In a small executable, and with no requirement for an installer, Rufus offers you a much better and up to date interface, with better features, and a DOS creation that doesn't rely on external files. It can also create bootable USB from ISO images. Plus you will find welcome additional features, such as the ability to check your USB stick for bad blocks. Best of all, and as you have come to expect from this site, it is 100% Free Software.

Please make sure you check the official Rufus page, and stop looking further when you need a DOS bootable USB stick. Of course, Rufus is compatible with all versions of Windows starting with Windows XP and lets you use the always awesome FreeDOS alongside the rather old and not up to date Windows Millenium DOS.

Why are you doing this?

Well, the truth of the matter is that, after having used the HPUSBFW utility for some time, it turns out that I really can't stand proprietary software utilities (as well as Windows' glaring shortcomings), so I decided to create my own Open Source version of an equivalent tool. Also, the fact that the many people, who have taken a stab at creating their own DOS bootable USB formatting utility, decided to go closed source doesn't really help. Simple utilities should only be Open Source, period.

Some interesting technical details (or yet another annoying technical rant)

You'd think there wouldn't be much to formatting an USB flash drive for DOS on Windows, but you would be wrong. As I already explained, there's some reason why Windows doesn't do it natively. Also, you may be surprised to hear that Windows doesn't actually provide a public API to format a drive, and instead you have to hijack an undocumented one called FormatEx, and which can be found in fmifs.dll. Then you will find that FormatEx kind of destroys your partition table when you want to use LBA, so you need to fix it manually. There's also this whole business of allowed cluster sizes. And then there's all the usual traps, such as having the partition boot records needing to be patched on XP, because unlike Vista or later, it equates an USB Flash drive to a floppy, as well as Windows' somewhat mysterious handling of Physical Drives vs. Logical Volumes. One will let you access the MBR and the other one the Partition Boot Record, yet, you still need to hold a lock to the latter to be able to access its underlying sectors with the former. Straightforward, it is not.

If you are so inclined, you'll find Rufus' FormatThread() in format.c as a good starting point. Oh, and would be quite ungrateful if I didn't acknowledge other OSS projects, such as ms-sys (boot records handling) or e2fsprogs (bad blocks check) for providing some of the building blocks used by the utility, as well as the talented designers from PC-Unleashed for the Rufus icon.

Finally, for those interested, the acronym stands for "The Reliable USB Formatting Utility (with Source").

Enjoy!

IMPORTANT NOTE: If you want support, please use the Github issue tracker. Any requests for support in the comments will be left unanswered.

23 comments:

  1. Hi, thanks Pete
    What a great tool.
    By the way, I think you should see this:
    http://www.bootdisk.com/art/penboot.jpg

    It is not fair cropping on purpose your work and selling it!!!

    All the best!

    ReplyDelete
  2. Hello Pete ,
    Thanks for this superb tool.
    Usually, I'm building 2 DVDs for Win7: Unattended_Win7_DVD and Softwares_DVD.
    Once the bootable USB is done with my Unattended_Win7.iso and since I do not touch the \sources\install.wim and \sources\boot.wim files, it is possible to add, delete and replace files like Autounattend.xml; personal files inside \sources\$OEM$\*.* as well as adding a folder with my softwares?
    Best Regards

    ReplyDelete
  3. Hi coukou,

    You should be able to do the above without problem. What applies to the setup process using an ISO should also apply for USB.

    ReplyDelete
  4. It's not working. http://pictir.com/i/Pancakehiatt/fdsdfd.png

    ReplyDelete
  5. If you have an issue, could you please log a report on github?
    Also, please be mindful that, for security reasons, Rufus will not list fixed USB drives by default, such as USB HDDs. Is that the type of device you've been trying to use?
    Finally, if you click the "log" button after plugging your device, you should see additional information, some of which might be able to tell you why your device was not recognized.

    ReplyDelete
  6. I'm impresed by your product. thanks a lot.

    Varun

    ReplyDelete
  7. Wow... so easy to use and it worked first time! Thank you :)

    ReplyDelete
  8. Hi,
    Can you give specific instructions on how to use this utility to make a usb flash drive to emulate a floppy drive. I am trying to load Windows Server 2003 on my server and I need to use F6 to load drivers for my scsi drives, but you can only use a floppy drive. My server don't even have a floppy drive. Thanks.

    ReplyDelete
    Replies
    1. @shelly - I think you would be better off using a Windows Server 2003 ISO image with Rufus, to create a Windows Server 2003 USB installation disk, and once you have that, you should add your drivers onto the USB and edit the setup files so that they are used during boot.
      There should be plenty of information around on how to add drivers once you have a bootable USB with a Windows image (try reboot.pro or at the very least a search in google), and it should make your installation process easier.

      Delete
  9. The utility keeps failing. Says: Error: Could not open media. It may be in use by another process. Please re-plug the media and try again. The iso was downloaded directly from Digital River so it's an untouched version. The ISO is named X17-24395.iso. The DVD name is GRMCULXFRER_EN_DVD.

    Here is the log:
    ...
    WIM extraction method(s) supported: 7z, wimgapi.dll
    Caution: Opened PHYSICALDRIVE7 drive for write access
    Could not get exclusive access to \\.\#: [0x00000005] Access is denied.
    Found drive 'Generic- Compact Flash USB Device'
    Ignoring autorun.inf label for drive F: No media
    Found drive 'Generic- MS/MS-Pro USB Device'
    Ignoring autorun.inf label for drive I: No media
    Found drive 'Generic- SD/MMC USB Device'
    Ignoring autorun.inf label for drive H: No media
    Found drive 'Generic- SM/xD-Picture USB Device'
    Ignoring autorun.inf label for drive G: No media
    Found drive 'Kingston DT 101 G2 USB Device'
    5 devices found.
    Sector Size: 512 bytes
    Cylinders: 1897, TracksPerCylinder: 255, SectorsPerTrack: 63
    Partition type: MBR, NB Partitions: 1
    Disk ID: 0xC3072E18
    Partition 1:
    Type: FAT32 LBA (0x0c)
    Size: 14.5 GB (15602221056 bytes)
    Start Sector: 8064, Boot: Yes, Recognized: Yes
    ...

    Any suggestions on fixing?

    ReplyDelete
    Replies
    1. I'm working on it. See https://github.com/pbatard/rufus/issues/122
      Hopefully the next version of Rufus will avoid that issue.

      Delete
  10. Well this is unusual. I used my 16gb thumb drive and rufus warned that all would be erased so, just to make yure, I opened the usb again and no files, then rufus could not see the usb drive and now windows 7 cannot either. I plugged the usb in to my CentOs box and up it came. I plugged the usb in to my friends Win7 box and up it came. I plugged it back in to mine and Win7 cannot see it. I did the exact same thing with my memorex usb (warning, opened to check, rufus couldn't see, Win7 couldn't see) so now I have to USB drives that cannot be used on my box. Any solution?

    ReplyDelete
    Replies
    1. I did start, run, diskpart
      DISKPART> list volume

      Volume ### Ltr Label Fs Type Size Status Info
      ---------- --- ----------- ----- ---------- ------- --------- --------
      Volume 0 E DVD-ROM 0 B No Media
      Volume 1 C System NTFS Partition 148 GB Healthy Boot
      Volume 2 NTFS Partition 300 MB Healthy System
      Volume 3 TRAVELDRIVE FAT32 Removable 3692 MB Healthy
      Volume 4 FREEDOS FAT32 Removable 7717 MB Healthy
      DISKPART> select volume 3

      Volume 3 is the selected volume.

      DISKPART> assign letter=f

      DiskPart successfully assigned the drive letter or mount point.

      DISKPART> select volume 4

      Volume 4 is the selected volume.

      DISKPART> assign letter=g

      Delete
  11. http://www.smart-arab.com/2012/11/make-usb-storage-device-flash-removable-readonly/
    Please update Rufus with more abilities like making USB Bootable and Read Only for keeping data safe from viruses

    ReplyDelete
  12. I'm trying to use Rufus 1.4.7.445 for the first time to create a bootable Windows 7 SP1 repair drive. I can't get it to work as always returns the following: "Error: Could not open media. It may be in use by another process. Please re-plug the media and try again."

    I'm following the instructions at: http://www.eightforums.com/tutorials/15458-uefi-bootable-usb-flash-drive-create-windows.html

    I am using a brand new Lexar 32GB USB drive. Re-plugging does nothing. I have no problems copying other files to or from that drive. I have tried running Rufus as administrator. Just keep getting the same result.

    Here is the log:

    WIM extraction method(s) supported: 7z, wimgapi.dll

    Format operation started
    Requesting disk access...
    Caution: Opened drive \\.\PHYSICALDRIVE2 for write access
    Will use 'E:' as volume mountpoint
    I/O boundary checks disabled
    Could not get exclusive access to device \\?\Volume{55019ef1-dca9-11e3-aee4-f73a866f725d}: [0x00000005] Access is denied.
    Could not lock volume
    Re-mounted volume as 'E:' after error

    Found USB device 'Lexar USB Flash Drive USB Device' (05DC:C75C)
    1 device found
    Disk type: Removable, Sector Size: 512 bytes
    Cylinders: 3892, TracksPerCylinder: 255, SectorsPerTrack: 63
    Partition type: MBR, NB Partitions: 1
    Disk ID: 0x593F205D
    Drive has an unknown Master Boot Record
    Partition 1:
    Type: FAT32 (0x0b)
    Size: 29.8 GB (32018219008 bytes)
    Start Sector: 2144, Boot: No, Recognized: Yes
    Found USB device 'Lexar USB Flash Drive USB Device' (05DC:C75C)
    1 device found
    Disk type: Removable, Sector Size: 512 bytes
    Cylinders: 3892, TracksPerCylinder: 255, SectorsPerTrack: 63
    Partition type: MBR, NB Partitions: 1
    Disk ID: 0x593F205D
    Drive has an unknown Master Boot Record
    Partition 1:
    Type: FAT32 (0x0b)
    Size: 29.8 GB (32018219008 bytes)
    Start Sector: 2144, Boot: No, Recognized: Yes


    Any idea what the problem is?

    ReplyDelete
    Replies
    1. Something must be messed up on the PC I'm using. I tried a co-worker's PC (identical hardware & software configuration) and it's working on the second PC. Probably why I needed to make a repair drive. Something must be messed up on my main PC, but it's operating pretty much normally other than a problem with Windows Update (windows store is corrupted).

      Delete
  13. Hi Pete !
    I write to you here to give thanks about that great app. Rufus is simply perfect and works great.
    I hope you will have enough time and I hope you will also want to stay making open software like this.
    Best regards
    @Josemicoronil

    ReplyDelete
  14. I click start and I get: "Undetermined error while formatting"
    What now? :(

    ReplyDelete
    Replies
    1. The *proper* place to report issues with Rufus is the github tracker (the URL of which features very prominently in the "About" dialog). I only check comments on this blog very infrequently.

      Also, don't forget to please provide the complete log when you do so. I can't guess what your issue is, so without a complete log, I have ABSOLUTELY NO IDEA how to help you!

      Thanks.

      Delete
  15. Hello, Pete! I am not a developer but and "end-user"...a script kiddie so to speak. I don't know how to email you directly, but I would - to thank you for the time and brains you have put into this slick little utility. It has saved me no end of grief, as I've been asked to restore a notebook with no optical drive.

    I (and a whole shitload or unspoken users) REALLY APPRECIATE you putting this prog in the public domain. A thousand thanks.

    ReplyDelete
    Replies
    1. Thanks for the kind words. For what is worth, my e-mail features fairly prominently both in the about dialog of the application and on the homepage...

      Delete
  16. hi pete

    i have a

    vaio pro 13 ---> usb 3.0, no disc unit, gpt partition

    and i don't want loose the win 8.1 and the recovery partitions, but i have to install win 7

    so i'd be trying to install with rufus but i have the usb 3.0 win 7 compatibility problem, so i think if i install the gpt win 7 with rufus in a microsd with usb adapter and after that i put the microsd in the sdxc adapter maybe can works?

    what can i do??

    thanks, sorry my english xD

    ReplyDelete