X-Git-Url: https://code.delx.au/refind/blobdiff_plain/970af7382223d2dd18a6d29db512eb7009a6ff6f..c234a62eb700ca3167345fc1be035fdcf19999b4:/docs/refind/installing.html diff --git a/docs/refind/installing.html b/docs/refind/installing.html index 6615d19..4384fc2 100644 --- a/docs/refind/installing.html +++ b/docs/refind/installing.html @@ -17,7 +17,7 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com

Originally written: 3/14/2012; last Web page update: -9/13/2015, referencing rEFInd 0.9.1

+4/24/2016, referencing rEFInd 0.10.3

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!

@@ -43,8 +43,7 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com

- -Donate with PayPal + @@ -58,8 +57,7 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com

- -Donate with PayPal + @@ -74,8 +72,7 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com

- -Donate with PayPal + @@ -89,8 +86,7 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com

- -Donate with PayPal + @@ -104,8 +100,7 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com

- -Donate with PayPal + @@ -118,8 +113,7 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com

- -Donate with PayPal + @@ -132,9 +126,9 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com

-

Don't be scared by the length of this page! Only portions of this page apply to any given user, and most people can install rEFInd from an RPM or Debian package in a matter of seconds or by using the install.sh script in minute or two.

+

Don't be scared by the length of this page! Only portions of this page apply to any given user, and most people can install rEFInd from an RPM or Debian package in a matter of seconds or by using the refind-install script in minute or two.

-

Once you've obtained a rEFInd binary file, as described on the preceding page, you must install it to your computer's EFI System Partition (ESP) (or conceivably to some other location). The details of how you do this depend on your OS and your computer (UEFI-based PC vs. Macintosh). The upcoming sections provide details. See the Contents sidebar to the left for links to specific installation procedures. For most Linux users, an RPM or Debian package is the best way to go. If your Linux system doesn't support these formats, though, or if you're running OS X, using the install.sh script can be a good way to go. If you're using Windows, you'll have to install manually.

+

Once you've obtained a rEFInd binary file, as described on the preceding page, you must install it to your computer's EFI System Partition (ESP) (or conceivably to some other location). The details of how you do this depend on your OS and your computer (UEFI-based PC vs. Macintosh). The upcoming sections provide details. See the Contents sidebar to the left for links to specific installation procedures. For most Linux users, an RPM or Debian package is the best way to go. If your Linux system doesn't support these formats, though, or if you're running OS X, using the refind-install script can be a good way to go. If you're using Windows, you'll have to install manually.

@@ -148,15 +142,7 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com

  • Installing rEFInd using an RPM or Debian package file
  • -
  • Installing rEFInd Using install.sh under Linux or Mac OS X - -
  • +
  • Installing rEFInd Using refind-install under Linux or Mac OS X
  • Installing rEFInd Manually @@ -174,7 +160,7 @@ href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com

    -

    If you need to use one of these names, or something more exotic, you can do so in either of two ways: You can use the mvrefind.sh script to move your installation in one step, or you can move and rename your files manually.

    +

    If you need to use one of these names, or something more exotic, you can do so in either of two ways: You can use the mvrefind script to move your installation in one step, or you can move and rename your files manually.

    -

    Using mvrefind.sh

    +

    Using mvrefind

    -

    The easiest way to move a rEFInd installation, at least in Linux, is to use the mvrefind.sh script. If you installed from one of my RPM or Debian packages, this script should be installed in /usr/sbin, so you can use it like a regular Linux command; otherwise you'll need to install it to your path yourself or type its complete path. Either way, it works much like the Linux mv command, but you pass it the directory in which a rEFInd installation appears and a target location:

    +

    The easiest way to move a rEFInd installation, at least in Linux, is to use the mvrefind script. If you installed from one of my RPM or Debian packages, this script should be installed in /usr/sbin, so you can use it like a regular Linux command; otherwise you'll need to install it to your path yourself or type its complete path. Either way, it works much like the Linux mv command, but you pass it the directory in which a rEFInd installation appears and a target location:

    -# mvrefind.sh /boot/efi/EFI/BOOT /boot/efi/EFI/refind
    +# mvrefind /boot/efi/EFI/BOOT /boot/efi/EFI/refind
     

    This example moves rEFInd from /boot/efi/EFI/BOOT to /boot/efi/EFI/refind. It differs from mv in several ways: @@ -808,7 +641,7 @@ $ ioreg -l -p IODeviceTree | grep firmware-abi

    -

    The mvrefind.sh script is likely to be useful in resolving boot problems—if your system won't boot, you can try copying the installation to /boot/efi/EFI/BOOT, /boot/efi/EFI/Microsoft/Boot, and /boot/efi/EFI/refind in turn, testing the boot process after each attempt. (These filenames all assume your ESP is mounted at /boot/efi.) You could also copy a BIOS-mode install from /boot/efi/EFI/BOOT or /boot/efi/EFI/Microsoft/Boot to /boot/efi/EFI/refind to make it more robust against Windows repairs (assuming your firmware isn't broken).

    +

    The mvrefind script is likely to be useful in resolving boot problems—if your system won't boot, you can try copying the installation to /boot/efi/EFI/BOOT, /boot/efi/EFI/Microsoft/Boot, and /boot/efi/EFI/refind in turn, testing the boot process after each attempt. (These filenames all assume your ESP is mounted at /boot/efi.) You could also copy a BIOS-mode install from /boot/efi/EFI/BOOT or /boot/efi/EFI/Microsoft/Boot to /boot/efi/EFI/refind to make it more robust against Windows repairs (assuming your firmware isn't broken).

    Renaming Files Manually

    @@ -878,24 +711,24 @@ $ ioreg -l -p IODeviceTree | grep firmware-abi
  • In OS X, if you copy over the original file with the new one, you'll probably have to re-bless it to make it work.
  • -
  • Under Linux or OS X, you can re-run the install.sh script. In +
  • Under Linux or OS X, you can re-run the refind-install script. In most cases this works fine, but you'll end up with a duplicate of the icons directory (icons-backup, which holds the original icons, whereas icons holds the icons from the new package). Normally this just wastes some disk space; but if you've customized your icons, you'll need to copy your altered icons back. Under Linux, versions - 0.6.2 and later of install.sh search for rEFInd in several + 0.6.2 and later of refind-install search for rEFInd in several locations on the ESP, and will upgrade whatever is found. The same is true with versions 0.8.5 and later under OS X when installing to the ESP. If you install to a location other than the ESP under OS X, be - sure to include the same option to install.sh + sure to include the same option to refind-install (--notesp or --ownhfs) to replace the original rather than create a new installation to the ESP.
  • Under an RPM- or Debian-based Linux distribution, you can use your package system to install a newer version of the RPM or Debian package that I provide. This will upgrade the files in your Linux filesystem - and re-run the install.sh script, so as with the previous + and re-run the refind-install script, so as with the previous options, you'll waste a little disk space on duplicated icons, but the process should otherwise work quite well.
  • @@ -905,14 +738,18 @@ $ ioreg -l -p IODeviceTree | grep firmware-abi on how the package was created, though, this update might or might not install the update to the ESP; you might need to manually re-run the installation script. Consult your distribution's documentation for - details. My Ubuntu PPA will automatically run install.sh after - the package is installed. + details. My Ubuntu PPA will automatically run refind-install after + the package is installed if you selected the option to install + to the ESP; if you opted to skip this step, my PPA version will + continue to do so at every update, leaving you to manually update the + copy on the ESP. (You can change this behavior by typing sudo dpkg-reconfigure refind.) -

    In all cases, if the new version includes new or altered configuration file options, you may need to manually update your configuration file. Alternatively, if you've used the default configuration file, you can replace your working refind.conf with refind.conf-sample from the rEFInd zip file. (When using install.sh, this file will be copied to rEFInd's installation directory under its original name, so you can rename it within that directory to replace the old file.)

    +

    In all cases, if the new version includes new or altered configuration file options, you may need to manually update your configuration file. Alternatively, if you've used the default configuration file, you can replace your working refind.conf with refind.conf-sample from the rEFInd zip file. (When using refind-install, this file will be copied to rEFInd's installation directory under its original name, so you can rename it within that directory to replace the old file.)

    -

    If you're upgrading to rEFInd from rEFIt, you can simply run the install.sh script as described earlier or perform a manual installation. Once installed, rEFInd will take over boot manager duties. You'll still be able to launch rEFIt from rEFInd; a rEFIt icon will appear in rEFInd's menu. You can eliminate this option by removing the rEFIt files, which normally reside in /EFI/refit.

    +

    If you're upgrading to rEFInd from rEFIt, you can simply run the refind-install script as described earlier or perform a manual installation. Once installed, rEFInd will take over boot manager duties. You'll still be able to launch rEFIt from rEFInd; a rEFIt icon will appear in rEFInd's menu. You can eliminate this option by removing the rEFIt files, which normally reside in /EFI/refit.

    Installing Additional Components

    @@ -972,7 +809,7 @@ $ ioreg -l -p IODeviceTree | grep firmware-abi original rEFIt version of the program usually goes by the filename gptsync.efi, whereas the updated rEFInd version ships with an architecture code, as in gptsync_x64.efi or - gptsync_ia32.efi. The rEFInd install.sh script + gptsync_ia32.efi. The rEFInd refind-install script installs gptsync_arch.efi when run under OS X, but not when run on Linux. In addition to installing the program, you must edit refind.conf, uncomment the @@ -1022,7 +859,7 @@ $ ioreg -l -p IODeviceTree | grep firmware-abi

    Using the --shortform Option

    -

    Prior to version 0.8.5, these instructions and the install.sh script omitted the --shortform option from the bless command when installing rEFInd to the ESP. An rEFInd user, however, discovered that using the option eliminated the 30-second delay, so it is now the default with 0.8.5's install.sh, and is specified in the instructions. If you installed rEFInd 0.8.4 or earlier, you may want to re-install or re-bless rEFInd using this option.

    +

    Prior to version 0.8.5, these instructions and the refind-install script omitted the --shortform option from the bless command when installing rEFInd to the ESP. A rEFInd user, however, discovered that using the option eliminated the 30-second delay, so it is now the default with 0.8.5's refind-install, and is specified in the instructions. If you installed rEFInd 0.8.4 or earlier, you may want to re-install or re-bless rEFInd using this option.

    There is one caveat, though: The man page for bless notes that --shortform notes that its use can come "at the expense of boot time performance." Thus, it's not clear to me that this option might not actually create problems on some computers. (It's eliminated the boot delay on my 2014 MacBook Air and has no detrimental effect on an old 32-bit Mac Mini that's never had a boot delay problem, though.) Thus, if you have problems with rEFInd 0.8.5 or later, you might try running bless, as described in Installing rEFInd Manually Using OS X's step 8, but omit the --shortform option.

    @@ -1030,7 +867,7 @@ $ ioreg -l -p IODeviceTree | grep firmware-abi

    Using the Fallback Filename

    -

    I've received a few reports that installing rEFInd to the ESP using the fallback filename (EFI/BOOT/bootx64.efi on most systems, or EFI/BOOT/bootia32.efi on very old Macs) can work around a sluggish boot problem. In fact, version 0.8.4's install.sh script copied the rEFInd binary to this name when run under OS X. (Version 0.8.5 switches to using --shortform with the more conventional EFI/refind/refind_x64.efi or EFI/refind/refind_ia32.efi name, as just noted.) If you installed to a name other than EFI/BOOT/BOOT{ARCH}, either manually or by using the 0.8.5 or later install.sh, renaming (and re-blessing) the installation is worth trying.

    +

    I've received a few reports that installing rEFInd to the ESP using the fallback filename (EFI/BOOT/bootx64.efi on most systems, or EFI/BOOT/bootia32.efi on very old Macs) can work around a sluggish boot problem. In fact, version 0.8.4's refind-install script copied the rEFInd binary to this name when run under OS X. (Version 0.8.5 switches to using --shortform with the more conventional EFI/refind/refind_x64.efi or EFI/refind/refind_ia32.efi name, as just noted.) If you installed to a name other than EFI/BOOT/BOOT{ARCH}, either manually or by using the 0.8.5 or later refind-install, renaming (and re-blessing) the installation is worth trying.

    Moving rEFInd to an HFS+ Volume

    @@ -1038,7 +875,7 @@ $ ioreg -l -p IODeviceTree | grep firmware-abi

    Most of the reports of sluggish Macintosh boots I've seen note that the user installed rEFInd to the ESP rather than to the OS X root partition. Some users have reported that re-installing rEFInd to the OS X root partition clears up the problem. This is obviously a straightforward solution to the problem, if it works. (This location is not an option when using WDE or OS X logical volumes.) Note that rEFInd can launch boot loaders that are stored on any partition that the EFI can read no matter where it's installed; therefore, you'll still be able to launch boot loaders stored on the ESP (or elsewhere) if you install it in this way.

    -

    A variant of this solution is to create a small (~100MiB) HFS+ volume to be used exclusively by rEFInd. You can then install rEFInd to that volume with the --ownhfs option to install.sh, as in ./install.sh --ownhfs /dev/disk0s6 if the volume is /dev/disk0s6. This approach has the advantage that it can be managed via OS X's own Startup Disk tool in System Preferences.

    +

    A variant of this solution is to create a small (~100MiB) HFS+ volume to be used exclusively by rEFInd. You can then install rEFInd to that volume with the --ownhfs option to refind-install, as in ./refind-install --ownhfs /dev/disk0s6 if the volume is /dev/disk0s6. This approach has the advantage that it can be managed via OS X's own Startup Disk tool in System Preferences.

    The biggest drawback to storing rEFInd on an HFS+ volume is that you won't be able to edit the rEFInd configuration file or move rEFInd-related binaries from an EFI shell if you install it in this way, since Apple's HFS+ driver for EFI is read-only. (The same is true of rEFInd's HFS+ driver, so it won't help you overcome this limitation.) You may also be limited in making changes to your rEFInd configuration from Linux or other OSes, too, since Linux's HFS+ drivers disable write support by default on volumes with an active journal. You can force write access by using the force option to mount; however, this procedure is noted as being risky in the Linux HFS+ documentation, so I don't recommend doing this on a regular basis on the OS X boot volume. This isn't as risky if you use a dedicated HFS+ rEFInd partition, though. You could even mount it as the Linux /boot partition, in which case it would also hold the Linux kernel and related files.

    @@ -1070,7 +907,7 @@ $ ioreg -l -p IODeviceTree | grep firmware-abi