top | item 27071982

Rufus: Reliable USB Formatting Utility

589 points| quyleanh | 4 years ago |github.com

201 comments

order
[+] mrjin|4 years ago|reply
Well have to say Rufus is good. But there is a far better tool: Ventoy.

You will only need to format your thumb drive once and for all. After that, you will simply only need to copy the image file such as .iso, .vhd etc on to the drive and you are all set. Check details from the following sites.

https://www.ventoy.net/en/index.html https://github.com/ventoy/Ventoy

[+] elmo2you|4 years ago|reply
Ventoy is indeed one of the best (if not THE best) tool for this. Even if it does not support absolutely everything (last time I checked), it is by far the most hassle free and sure-fire solution.

For context, I have professionally deployed Linux on USB, ever since around 2004. I honestly don't care to remember all the odd issues/failures I've encountered during those 17 years. The situation certainly got better/easier with the years, but it can still be a gamble if an odd Linux distro will actually boot successfully from USB or not.

Until I discovered Ventoy, about a year or two ago, I would always be hesitant to recommend running Linux from USB, unless I knew the exact setup (or it involved someone with a decent technical skills).

Ventoy is great!!! I'd recommend everyone to at least have a look at it. It's one of the very few tools I endorse without any hesitation or reservation.

I am in no way personally involved with Ventoy, nor do I have a stake in it. I just love the tool for what it is.

[+] Poiesis|4 years ago|reply
For the benefit of those who may not know, this has been possible (by way of Grub2) with many Linux distros for a while now without custom software. Typically you just add extra boot arguments that point to the iso and flag that booting from it is desired.

Unfortunately the required arguments tend to be poorly documented and quite specific to each distro. This looks like a neat tool that's sidestepping that issue. If anyone knows of a good resource that documents these boot arguments for a range of distros, please share!

[+] motiejus|4 years ago|reply
I just wrote Ventoy to my megastick, wrote FreeBSD and Debian Install images, and it works. Debian Bullseye install image complains about low-memory mode, but the booted machine had >500MB still available. Abstraction breaks somewhere, I would love to know why/how.

Without diving into the source code. :) Has anyone seen architecture/design documents on how it actually mounts the ISO file and "boots" from it? What does prevent "the other 10%" from not working?

I looked through the docs, found these so far:

Memdisk[1] section mentions:

> In normal mode, Ventoy will only read the iso file at booting time, and only read the content needed for boot.

Ventoy Compatible?[2] mentions a hook. What does this mean?

> Once Ventoy treats the iso file as Ventoy Compatible, it will just make the virtual disk and will not do the hook.

[1]: https://www.ventoy.net/en/doc_memdisk.html

[2]: https://www.ventoy.net/en/doc_compatible_mark.html

[+] thom|4 years ago|reply
Wow, this has justified an entire year's worth of Hacker News dues in one go.
[+] yarcob|4 years ago|reply
Holy whackamoly! Booting directly from .iso files on a thumb drive? What kind of black magic is that?

This is the neatest thing I've seen on HN since the actually portable executable!

[+] lathiat|4 years ago|reply
A great software solution. I had a look and once Linux boots it actually uses devicemapper to map a dm device to the raw sectors containing the iso which it extracts (as it may be fragmented) to feed to dmsetup. Kinda crazy.

There is also a couple of hardware projects that to that in hardware. I used the ISOstick for many years.

You can also PXE NetBoot a lot of installers with dynamic menu selection - see http://netboot.xyz

[+] squarefoot|4 years ago|reply
What a great tool! There goes my collection of small old 1-8 GB USB thumb drives, just use a big one for installs.

A nice companion could be a small *PI like board with a script that scans repositories for iso updates then downloads them using torrent to avoid taxing the servers too much, then when necessary (but not more than once every N days to avoid wearing the memory) updates the dongle automatically overnight. Just stick the dongle when you're back at home and the next morning if necessary it is updated to the latest images.

[+] dspillett|4 years ago|reply
Another vote for ventoy. Means I can use my large fast USB drive (actually an mSATA SSD pulled from a broken laptop, in an adapter) as a collection of boot media while keeping the rest of the space for other use. I don't need to boot from a distro CD often these day, but when I do it is nice that it is much faster than my other USB sticks, more convenient than carrying a few (Debian, Ubuntu, psSense, Kali, ...) around, and more convenient to update when I need something new or otherwise specific for the situation.
[+] sdlion|4 years ago|reply
Windows images that are over 4.3GB(I don't remember the exact max size) most image burning tools will fallback to NTFS on the USB formatting and some motherboards/laptops don't like this. (Even on my rather modern Dell laptop)

The best solution so far I've found is to manually partition the USB into a 1GB FAT32 partition and the rest NTFS. Then you extract the files where needed [0]

I learned this method just last year but it seems it's pretty universal. At least for Win10 ISOs. And I don't have to boot Windows and wait for its updates!

[0] https://techbit.ca/2019/02/creating-a-bootable-windows-10-ue...

[+] Stratoscope|4 years ago|reply
I'm as big a Rufus fan as anyone, but for Windows 10 why wouldn't I just use Microsoft's boot image creator?

That's what I've done lately, and it works every time with no fuss.

https://www.microsoft.com/en-us/software-download/windows10

Edit: I just remembered that you might not be on a Windows device, in which case you may well want to download the ISO and use Rufus to make a bootable stick from it.

[+] pxeboot|4 years ago|reply
That seems far more complicated than just using DISM, PowerShell or wimlib (on Linux or Windows) to split the install.wim file into two parts, which I believe older versions of Rufus (or a similar utility) offered to do.

https://wimlib.net/man1/wimsplit.html

[+] graton|4 years ago|reply
Another similar/related project is: https://github.com/ventoy/Ventoy
[+] ehsankia|4 years ago|reply
Ventoy is AWESOME. No more continuously formatting your drive for every ISO you want. You just copy your ISOs on and off the drive and they all just work.
[+] michaelmrose|4 years ago|reply
Thanks for sharing that is extremely helpful.
[+] vxNsr|4 years ago|reply
Ventoy is great, for a long time I used E2B but lately I've been using ventoy because of it's native support of UEFI, my only complaint is that I find it to be a bit slower on accepting keyboard input compared to E2B. Also E2B has great keyboard shortcut support which ventoy entirely lacks (last I checked)
[+] spijdar|4 years ago|reply
With the disclaimer than I'm primarily a Linux user and may be missing something from Microsoft, isn't it weird that there are no tools for this functionality that come with Windows? I've tried a few times through the life of Windows 10 to make installer USB drives from inside Win10 with only microsoft tools but never found anything that worked.

Rufus comes through for me again and again, but why do we need to download a 3rd party tool for even basic configs? Nothing fancy, just a windows installer on USB.

[+] AussieWog93|4 years ago|reply
Microsoft provide a fantastic program for creating Windows boot disks that "just works" (Media Creation Tool), and have done so for years.

It doesn't support Linux images, though, for reasons that should be obvious.

[+] RMPR|4 years ago|reply
Also a Linux user, but back in the Windows days you could use Diskpart to do so:

    select disk ##
    clean
    create partition primary
    active
    format fs=ntfs quick
    assign
Then just extract the disk image to the USB Drive and voila. I just noticed it's even documented on Dell's support page[0]

0: https://www.dell.com/support/kbdoc/en-us/000136959/create-a-...

[+] quyleanh|4 years ago|reply
Rufus is a light and effective tool when Windows user want to create USB bootable. In the past, I faced some issues about disk partition. The Windows Media Creation Tool usually created MBR partition but my disk was on GPT partition. Rufus did well on creating USB bootable with detail log. No need to type complicated command. No need to copy and edit files. Just select, select and press Start.
[+] BiteCode_dev|4 years ago|reply
It's not weird at all given the target audience of windows. 99.9999% of windows user don't need this, so why include it ?
[+] SkyMarshal|4 years ago|reply
Easy2Boot is another good one. Creates USB boot disks with multiple OS ISOs on and boot into any of them. It’s no longer being updated, but still works, just used it this week.

https://www.easy2boot.com/

The only caveat is you need to make sure each ISO is stored on the USB in a contiguous file, since it tricks the host machine into thinking each ISO is separate partition. It includes a .cmd script for doing this on Windows, or on Linux you can use `rsync —preallocate` to copy the ISOs continuously.

[+] vxNsr|4 years ago|reply
Why do you say it's no longer being updated? Looks like he last posted 3/30/21.

He's actually great, when he's online he has a chat option on his website and he'll help you with any questions you have, I somehow screwed up an E2B MBR and he very graciously walked me through fixing it.

[+] AcerbicZero|4 years ago|reply
This has been my go to for years now. It’s especially useful whenever a friend or family member hits me up with a “computer question” that inevitably leads to “let’s just reinstall whatever you had before” and I just need something quick that works.
[+] birriel|4 years ago|reply
Rufus is really neat. However, for writing distro images, the dd command is my favorite. Per the Arch Wiki:

dd bs=4M if=path/to/archlinux-version-x86_64.iso of=/dev/sdx conv=fsync oflag=direct status=progress

[+] MarkSweep|4 years ago|reply
Rufus is great for writing Windows ISOs to thumb drives. Sometimes it tries to be too smart though. In particular I had trouble writing a SmartOS disk image successfully.

I tried writing something[1] that would be a little smarter than Win32 Disk Imager. That is, it will adjust EFI partition labeling. Otherwise it will just write the image. After some experimentation that is what was needed to get a SmartOS disk image to boot on my old laptop.

It sounds obvious in retrospect, but you can’t use something like dd to write invalid disk partitioning data and expect it to boot. EFI expects there to be a header at the beginning and end of the disk. Furthermore, I can’t try to “optimize” my disk image writer by skipping zeroed sectors and expect everything to work out fine. Without knowledge of the file system format, leaving sectors uncleared causes all kinds of fun data corruption.

[1]: https://github.com/AustinWise/SimpleDiskImager

[+] odyslam|4 years ago|reply
I have always used Etcher[0] and I love it.

[0] https://www.balena.io/etcher/

[+] larrybud|4 years ago|reply
Unfortunately, etcher has a long history of privacy violations which I find completely unacceptable (especially for an open source project!) https://forums.balena.io/t/serious-privacy-concerns-with-etc...

As in, even when I turned off 'report usage statistics', it kept making outbound network connections. That was it for me... trust lost; uninstalled immediately.

[+] muppetman|4 years ago|reply
I love that something that basically clones what "dd" can do is ONE HUNDRED AND TWENTY FOUR MEGABYTES. And people just accept that as normal. dd is 76k

Imagine if the binary is 128MB how big the source code repo must be.

[+] spacemanmatt|4 years ago|reply
I get great mileage out of Etcher but I need Rufus to make a USB boot to Windows install.
[+] ______-|4 years ago|reply
I prefer Etcher over Rufus because there's very little to configure. It's easy to get the settings wrong in Rufus and it can make an ISO unbootable or unusable if you don't know what you're doing.
[+] BiteCode_dev|4 years ago|reply
Nice, how does the reliability compare to unetbootin ?
[+] cosmotic|4 years ago|reply
Etcher is easy to use but why on earth did they decide to make it an electron app?
[+] invokestatic|4 years ago|reply
I've had issues with most bootable USB creation tools, including Rufus, particularly with CentOS (even though it's listed as known working!). I'm not sure whose fault this is, really. I think the problem is that the tools just try to be too "smart" instead of simply dd-ing the bytes over. The best tool I've found for this on Windows is Rawrite32.
[+] nemetroid|4 years ago|reply
I recently had to create a bootable USB drive, and tried following the instructions on the Arch wiki[1] to just use coreutils:

  # cat path/to/archlinux-version-x86_64.iso > /dev/sdx
      or
  # dd bs=4M if=path/to/archlinux-version-x86_64.iso of=/dev/sdx conv=fsync oflag=direct status=progress
However, this was ridiculously slow. I waited a long time for cat, but not long enough to figure out if it would ever finish. dd reported speeds of less than half a MB/s, gnome-disk-utility was about eight times faster.

I wonder if a different set of options to dd would have given better results. From what I can tell, gnome-disk-utility is just open() and write() (with suitable flags) in the end.

1: https://wiki.archlinux.org/title/USB_flash_installation_medi...

[+] pnutjam|4 years ago|reply
I like the idea of bootable usb, but 9 times out of 10 it's easier for me to do a PXE boot to an iso. I have a linux computer setup to provide the PXE boot stuff in my lab.

I used to have a vmware player image that would run pxe boot on a 2nd nic I put in my laptop (USB), but it's been awhile since I've needed to do that.

[+] SLWW|4 years ago|reply
Been using Rufus about 13 times today, it gets the job done. I like it
[+] fctorial|4 years ago|reply
Unless you're trying to flash some decade old operating system 'dd' should do the job. I haven't seen a non hybrid iso in years.
[+] radium3d|4 years ago|reply
Rufus has been my go-to for maybe decades now? It's one of those software that I keep a copy of in cold storage for the apocalypse.
[+] breakfastquark|4 years ago|reply
For anyone complaining that there is no nice GUI for dd on Linux and macOS, I recently discovered Fedora Media Writer [1] which works great for this job. Despite it’s name, it can be used with any ISO just like dd.

[1] https://github.com/FedoraQt/MediaWriter

[+] mynameisvlad|4 years ago|reply
I have been running https://netboot.xyz/ from a docker container for years and don't look back. I even set it up to have local copies of the distros I most install, so it picks it up from a local server instead of downloading a fresh copy each time.