Originally written: 3/14/2012; last Web page update: 4/19/2012, referencing rEFInd 0.2.7
+
Originally written: 3/14/2012; last Web page update:
+8/2/2015, referencing rEFInd 0.9.0
-
I'm a technical writer and consultant specializing in Linux technologies. This Web page is provided free of charge and with no annoying outside ads; however, I did take time to prepare it, and Web hosting does cost money. If you find this Web page useful, please consider making a small donation to help keep this site up and running. Thanks!
+
This Web page is provided free of charge and with no annoying outside ads; however, I did take time to prepare it, and Web hosting does cost money. If you find this Web page useful, please consider making a small donation to help keep this site up and running. Thanks!
Note: I consider rEFInd to be alpha-quality software! Although rEFIt 0.14, upon which rEFInd is based, is beta-quality, I've changed a great deal of the code, and I'm still learning about it. I'm discovering bugs (old and new) and fixing them every day or two. That said, rEFInd is a usable program in its current form on many systems. If you have problems, feel free to drop me a line.
+
Note: I consider rEFInd to be beta-quality software! I'm discovering bugs (old and new) and fixing them every few days. That said, rEFInd is a usable program in its current form on many systems. If you have problems, feel free to drop me a line.
Getting rEFInd from Sourceforge
-
You can find the rEFInd source code and binary packages at its SourceForge page. Note that rEFInd is OS-independent—it runs before the OS, so you download the same binary package for any OS. You can obtain rEFInd in three different forms:
+
You can find the rEFInd source code and binary packages at its SourceForge page. Note that rEFInd is OS-independent—it runs before the OS, so you download the same binary package for any OS. You can obtain rEFInd in several different forms:
-
A
- source code zip file—This is useful if you want to
- compile the software locally. Note that I use Linux with the GNU-EFI development
- tools. rEFIt used an Intel/Microsoft toolchain. Backporting rEFInd to
- that toolchain is theoretically possible, but I've not attempted
- it.
-
-
A
- binary zip file—Download this if you want to install rEFInd on
- an x86 or x86-64 computer and have no need to test rEFInd
- first by booting it on an optical disc. This zip file package includes both
- x86 (aka IA32) and x86-64 (aka x64, AMD64, or EM64T)
- versions of rEFInd. Which you install depends on your architecture, as
- described on the Installing rEFInd page.
+
A
+ binary zip file—Download this if you want to install
+ rEFInd and/or its filesystem drivers on an x86 or x86-64
+ computer and have no need to test rEFInd first by booting it on an
+ optical disc. This zip file package includes both x86 (aka IA32)
+ and x86-64 (aka x64, AMD64, or EM64T) versions of rEFInd.
+ Which you install depends on your architecture, as described on the Installing rEFInd page. Some users of Arch
+ Linux have reported problems booting some specific Arch Linux kernels
+ with rEFInd and some other tools. For them, a variant
+ package exists in which the x86-64 binary was compiled with
+ GNU-EFI rather than the usual TianoCore EDK2. This change helps some
+ users with this problem.
+
+
A
+ binary RPM file—If you use an RPM-based x86-64
+ Linux system such as Fedora or openSUSE, you can install the binary RPM
+ package rather than use the binary zip file. (I don't provide an
+ equivalent 32-bit package.) This package runs the install.sh
+ script (described on the Installing
+ rEFInd page) as part of the installation process. Distribution
+ maintainers can examine the refind.spec file in the source
+ package and tweak it to their needs. The source
+ RPM file might or might not build on your system as-is; it relies
+ on assumptions about the locations of the GNU-EFI development
+ files.
Note: At the moment, neither the bootable CD-R image file nor the bootable USB flash drive image file supports booting with Secure Boot active. The x86-64 version of the ALT Linux Rescue disc uses a Secure Boot-enabled rEFInd, though, so you may find that useful in some situations.
+
+
A
CD-R image file—This download contains the same files as
- the zip file, but you can burn it to a CD-R to test rEFInd without
- installing it first. (It boots on UEFI PCs, but fails on some older
- Macs.) If you like it, you can then copy the files from the CD-R to
- your hard disk. The files are named in such a way that the disc should
- boot on either 64-bit (x86-64) or 32-bit (x86) EFI
- computers. Note that there's a bug that causes rEFInd to complain about
- invalid parameters while scanning various directories. You can safely
- ignore this message, but you'll need to press a key to dismiss it. I've
- included an open source EFI shell program on this disc that's not
- included in the binary zip file, so that you can access an EFI shell
- from a bootable disc even if you don't have an EFI shell available from
- your regular hard disk. This can be an extremely valuable diagnostic
- tool if you know about about using an EFI shell.
+ the binary zip file, but you can burn it to a CD-R to test rEFInd
+ (and its filesystem drivers) without installing it first. (It boots on
+ UEFI PCs, but fails on some older Macs.) If you like it, you can then
+ copy the files from the CD-R to your hard disk. The files are named in
+ such a way that the disc should boot on either 64-bit (x86-64)
+ or 32-bit (x86) EFI computers. I've included an open source EFI
+ shell program on this disc that's not included in the binary zip file,
+ so that you can access an EFI shell from a bootable disc even if you
+ don't have an EFI shell available from your regular hard disk. This can
+ be an extremely valuable diagnostic tool if you know how to use an EFI
+ shell.
+
+
Tip: If you want to make your own bootable USB
+flash drive, download the binary zip file or CD-R image file, prepare a USB
+flash drive with a FAT32 partition, and then use the install.sh
+program's --usedefault option, and perhaps the
+--alldrivers option, as in bash install.sh
+--usedefault /dev/sdd1 --alldrivers to install to the first partition
+on /dev/sdd. This procedure should work even on a BIOS-booted
+computer.
+
+
A
+ USB flash drive image file—Although you can create
+ your own rEFInd USB flash drive, you may find it easier to download
+ this version and copy it to your USB drive with dd or some
+ other low-level disk copying utility.
Source code via
+ git—If you want to peruse the source code in your Web
+ browser or get the very latest version (including pre-release bug fixes
+ and updates), you can use the Sourceforge git repository. This access
+ method is most useful to programmers, or at least to those who are
+ familiar with programming tools. Note that if you need to ask "what's
+ git?", this is probably not the best way for you to obtain rEFInd.
-
If you're using another platform, you can give rEFInd a try; however, you'll need to build it from source code yourself or track down a binary from another source. (Perhaps by the time you read this it will be included in Linux distributions built for unusual CPUs.)
+
If you're using a platform other than x86 or x86-64, you can give rEFInd a try; however, you'll need to build it from source code yourself or track down a binary from another source. (Perhaps by the time you read this it will be included in Linux distributions built for unusual CPUs.)
To extract the files from the zip file images I've provided, you'll need a tool such as unzip, which is included with Linux and Mac OS X. Numerous Windows utilities also support this format, such as PKZIP and 7-Zip.
If you use Arch Linux, you can obtain rEFInd from its repositories, in both stable and git (experimental) releases. The git release is likely to include pre-release bug fixes and new features, but those features may be poorly tested or undocumented.
+
I know of a small number of pre-packaged versions of rEFInd, either in official OS repositories or in ancillary repositories:
-
You can also obtain rEFInd from the Nix Packages collection, which creates packages for a number of OSes using its own packaging system.
+
+
+
Ubuntu—Although an official Ubuntu
+ package isn't available, I've created a rEFInd PPA
+ for Ubuntu. To use it, open a Terminal window and type sudo apt-add-repository ppa:rodsmith/refind,
+ then sudo apt-get update. You can then type
+ sudo apt-get install refind to install the
+ package. Thereafter, the rEFInd version will update along with your
+ other software. This package is built with GNU-EFI and is not signed
+ with a Secure Boot key; however, the install script (which launches
+ automatically when you install the package) should sign the binary with
+ a locally-generated key if it detects that your system uses Secure
+ Boot. Thus, if you've previously installed one of my binaries on a
+ Secure Boot system and added its key as a MOK, you'll have to add your
+ local key when you reboot.
+
+
Arch Linux—You can obtain rEFInd from the Arch
+ repositories, in both a stable version (the refind-efi package
+ installable via pacman) and an experimental release built from
+ rEFInd's git repository in the Arch User Repository (AUR), under the
+ name refind-efi-git. The git release is likely to include
+ pre-release bug fixes and new features, but those features may be
+ poorly tested or undocumented.
+
+
ALT Linux—This RPM-based distribution is experimenting
+ with using rEFInd on EFI-based computers. As I write, the ALT
+ developers haven't yet nailed down booting from an optical disc (it's a
+ tricky and delicate task, especially when preparing a "hybrid" image),
+ but they're working on the problem. They have an RPM of rEFInd; see this
+ page for details.
+
+
Slackware—As far as I know, an official rEFInd package is
+ not available as part of Slackware; however, a Slackware
+ package from SlackBuilds is available.
+
+
Fat
+ Dog—This variant of Puppy Linux uses a combination of
+ rEFInd and GRUB 2 to boot its installation medium in EFI mode and
+ provides a rEFInd package in its repository set.
+
+
The Nix Packages
+ collection—This site creates packages for a number of
+ OSes using its own packaging system.
+
+
To the best of my knowledge, no other Linux distribution yet includes rEFInd in its repositories. That's likely to change in time. If you hear of rEFInd being included in an OS's official package set, feel free to drop me a line.