]> code.delx.au - refind/blob - docs/refind/using.html
Version 0.6.7 release.
[refind] / docs / refind / using.html
1 <?xml version="1.0" encoding="utf-8" standalone="no"?>
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
3 "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
4
5 <html xmlns="http://www.w3.org/1999/xhtml">
6 <head>
7 <title>The rEFInd Boot Manager: Using rEFInd</title>
8 <link href="../Styles/styles.css" rel="stylesheet" type="text/css" />
9 </head>
10
11 <body>
12 <h1>The rEFInd Boot Manager:<br />Using rEFInd</h1>
13
14 <p class="subhead">by Roderick W. Smith, <a
15 href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com</a></p>
16
17 <p>Originally written: 3/14/2012; last Web page update:
18 2/3/2013, referencing rEFInd 0.6.7</p>
19
20
21 <p>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!</p>
22
23 <table border="1">
24 <tr>
25 <td>Donate $1.00</td>
26 <td>Donate $2.50</td>
27 <td>Donate $5.00</td>
28 <td>Donate $10.00</td>
29 <td>Donate another value</td>
30 </tr>
31 <tr>
32 <td><form name="_xclick" action="https://www.paypal.com/cgi-bin/webscr" method="post">
33 <input type="hidden" name="cmd" value="_xclick">
34 <input type="hidden" name="business" value="rodsmith@rodsbooks.com">
35 <input type="hidden" name="item_name" value="rEFInd Boot Manager">
36 <input type="hidden" name="currency_code" value="USD">
37 <input type="hidden" name="amount" value="1.00">
38 <input type="image" src="http://www.paypal.com/en_US/i/btn/btn_donate_LG.gif" border="0" name="submit" alt="Make payments with PayPal - it's fast, free and secure!">
39 </form>
40
41 </td>
42 <td><form name="_xclick" action="https://www.paypal.com/cgi-bin/webscr" method="post">
43 <input type="hidden" name="cmd" value="_xclick">
44 <input type="hidden" name="business" value="rodsmith@rodsbooks.com">
45 <input type="hidden" name="item_name" value="rEFInd Boot Manager">
46 <input type="hidden" name="currency_code" value="USD">
47 <input type="hidden" name="amount" value="2.50">
48 <input type="image" src="http://www.paypal.com/en_US/i/btn/btn_donate_LG.gif" border="0" name="submit" alt="Make payments with PayPal - it's fast, free and secure!">
49 </form>
50
51 </td>
52 <td><form name="_xclick" action="https://www.paypal.com/cgi-bin/webscr" method="post">
53 <input type="hidden" name="cmd" value="_xclick">
54 <input type="hidden" name="business" value="rodsmith@rodsbooks.com">
55 <input type="hidden" name="item_name" value="rEFInd Boot Manager">
56 <input type="hidden" name="currency_code" value="USD">
57 <input type="hidden" name="amount" value="5.00">
58 <input type="image" src="http://www.paypal.com/en_US/i/btn/btn_donate_LG.gif" border="0" name="submit" alt="Make payments with PayPal - it's fast, free and secure!">
59 </form>
60
61 </td>
62 <td><form name="_xclick" action="https://www.paypal.com/cgi-bin/webscr" method="post">
63 <input type="hidden" name="cmd" value="_xclick">
64 <input type="hidden" name="business" value="rodsmith@rodsbooks.com">
65 <input type="hidden" name="item_name" value="rEFInd Boot Manager">
66 <input type="hidden" name="currency_code" value="USD">
67 <input type="hidden" name="amount" value="10.00">
68 <input type="image" src="http://www.paypal.com/en_US/i/btn/btn_donate_LG.gif" border="0" name="submit" alt="Make payments with PayPal - it's fast, free and secure!">
69 </form>
70
71 </td>
72 <td>
73 <form action="https://www.paypal.com/cgi-bin/webscr" method="post">
74 <input type="hidden" name="cmd" value="_donations">
75 <input type="hidden" name="business" value="rodsmith@rodsbooks.com">
76 <input type="hidden" name="lc" value="US">
77 <input type="hidden" name="no_note" value="0">
78 <input type="hidden" name="currency_code" value="USD">
79 <input type="hidden" name="item_name" value="rEFInd Boot Manager">
80 <input type="hidden" name="bn" value="PP-DonationsBF:btn_donate_LG.gif:NonHostedGuest">
81 <input type="image" src="https://www.paypalobjects.com/en_US/i/btn/btn_donate_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!">
82 <img alt="Donate with PayPal" border="0" src="https://www.paypalobjects.com/en_US/i/scr/pixel.gif" width="1" height="1">
83 </form>
84 </td></tr>
85 </table>
86
87 <hr />
88
89 <p>This page is part of the documentation for the rEFInd boot manager. If a Web search has brought you here, you may want to start at the <a href="index.html">main page.</a></p>
90
91 <hr />
92
93 <div style="float:right; width:55%">
94
95 <p>For the most part, rEFInd is easy to use; just use your keyboard's arrow keys to select the OS you want to boot or the utility you want to launch and press the Enter key. A few details aren't entirely intuitive, though, so this page describes them.</p>
96
97 </div>
98
99 <div class="navbar">
100
101 <h4 class="tight">Contents</h4>
102
103 <ul>
104
105 <li class="tight"><a href="#basic">Using Basic rEFInd Features</a></li>
106
107 <li class="tight"><a href="#boot_options">Adjusting Boot Options</a></li>
108
109 <li class="tight"><a href="#keyboard">Using Keyboard Shortcuts</a></li>
110
111 <li class="tight"><a href="#legacy">Booting Legacy OSes</a></li>
112
113 </ul>
114
115 </div>
116
117 <a name="basic">
118 <h2>Using Basic rEFInd Features</h2>
119 </a>
120
121 <p>With rEFInd in place and added to your firmware's list of boot utilities, you can reboot your computer. Depending on your configuration, rEFInd may come up immediately or you may need to select it from your firmware's boot options or reconfigure your firmware to present rEFInd automatically. Unfortunately, I can't offer much specific advice on this score, since EFI implementations differ so much in their user interfaces.</p>
122
123 <p>Assuming rEFInd starts up correctly, you should see its main screen, which resembles the following:</p>
124
125 <br /><center><img src="refind.png" align="center" width="712"
126 height="550" alt="rEFInd presents a GUI menu for selecting your boot
127 OS." border=2 /></center> <br />
128
129 <p>If you don't press any key before the timeout (shown below the icons and description line) expires, the default boot loader will launch. This is normally the first item in the menu, but you can adjust the default by editing the configuration file. (In this example, it's the Linux Mint loader, which is further identified by text above the timeout as <i>vmlinuz-3.5.0-17-generic from LINUXMINT.</i>)</p>
130
131 <p>This display is dominated by the central set of OS <i>tags</i> (icons), which in this example includes tags for OS X, Windows, Mint, and an unkown boot loader. All but the last of these are on hard disks, but the unknown boot loader is on an optical disc, as revealed by the small icons (known as <i>badges</i>) in the lower-right corner of the OS icons.</p>
132
133 <p>In this example, the Linux Mint tag is selected. You can move the selection left by pressing the left arrow key and right by pressing the right arrow key. If your system has many boot loaders, an arrow icon will appear to the right and/or left of the boot loader list, indicating that the boot loader list will scroll when you move off the edge. (Such an arrow is visible to the right in the sample screen, but not to the left.) You can scroll the list by one line full of icons by using the Page Up or Page Down keys to move left and right, respectively. Moving past the final selection or using the down arrow key moves the selection to the second row of small tags, which launch ancillary programs or perform special actions. If you've moved the selection cursor to the second row, pressing the up arrow key or scrolling past the left edge of the second row moves the cursor to the top row. In this figure, these four tags are present:</p>
134
135 <ul>
136
137 <li>Launch the EFI shell</li>
138
139 <li>Produce an information page</li>
140
141 <li>Shut down the computer</li>
142
143 <li>Reboot the computer</li>
144
145 </ul>
146
147 <p>The last three of these options are always available by default, but the first depends on the presence of the EFI shell program file, as described earlier. Other ancillary tags may be present on some computers.</p>
148
149 <p>To launch an OS or utility, you should select its tag and then press the Enter key or the space bar.</p>
150
151 <p class="sidebar"><b>Note:</b>On UEFI-based PCs, rEFInd defaults to scanning for EFI, but <i>not</i> for BIOS, boot loaders. If you want to launch BIOS-mode OSes from rEFInd, you must edit the <tt>scanfor</tt> line in <tt>refind.conf</tt>, as described on the <a href="configfile.html">Configuring the Boot Manager</a> page. On Macs, rEFInd scans for BIOS-based OSes by default, since such configurations are a common way to launch Windows on Macs.</p>
152
153 <p>Ordinarily, rEFInd displays tags for OSes it finds on internal hard disks, external hard disks (including USB flash drives, CF disks, and so on), and optical discs. Sometimes, though, the firmware hasn't had time to fully examine these devices by the time rEFInd starts; or you might only insert or plug in the media after rEFInd appears. In these cases, you can press the Esc key to have rEFInd re-read its configuration file and re-scan your media for boot loaders. This action can take a few seconds to complete, so be patient. You can also use this feature to detect OSes if you launch a shell and use it to load a driver or edit the <tt>refind.conf</tt> file. If you regularly need to press Esc, you might look into the <tt>scan_delay</tt> configuration file option, described on the <a href="configfile.html">Configuring the Boot Manager</a> page.</p>
154
155 <p>On some computers, the firmware doesn't mount external USB media unless you adjust a firmware option or use the EFI's own boot manager prior to launching rEFInd. If you don't see external media appear in rEFInd's list, consult your computer's manual or examine its firmware to locate a relevant option.</p>
156
157 <a name="boot_options">
158 <h2>Adjusting Boot Options</h2>
159 </a>
160
161 <p>If you press the Insert, F2, or + key, rEFInd will show a menu that may hold additional options, depending on the OS type. (OS X and Linux are most likely to hold interesting options on their submenus.) The following figure shows the submenu for Mac OS X. You can use this menu much like the main menu; move the cursor to select the option you want to use, then press the Enter key to launch the boot loader with the selected options. Press the Esc key or select <tt>Return to Main Menu</tt> to return to the main menu.</p>
162
163 <br /><center><img src="submenu.png" align="center" width="499"
164 height="259" alt="rEFInd submenus enable you to set session-specific
165 options." border=2></center> <br />
166
167 <p>From the options submenu, you can press the Insert, F2, or + key again to edit your boot loader options. You're most likely to want to do this when booting Linux via its EFI stub loader, since you can then enter arbitrary kernel options. A simple text-mode line editor opens (shown below), enabling you to move a cursor back and forth in the line with your arrow keys, delete text, and type in new text. If you want to boot with your edited options, press the Enter key. If you decide you picked the wrong entry, press the Esc key. Note that long option lists, as shown in the figure, scroll off the edge of the screen. Moving the cursor past the screen edge scrolls the entire line of text.</p>
168
169 <br /><center><img src="editor.png" align="center" width="646"
170 height="486" alt="You can edit options passed to the boot loader on a
171 single-boot basis." border=2></center> <br />
172
173
174 <p>If your computer supports Secure Boot, you may find that some of your OSes and tools won't work; they'll produce <tt>Secure Boot validation failure</tt> error messages. You can overcome this problem by creating a signing key, signing your binaries with it, and adding the public version of that key to your machine owner key (MOK) list. This process is described on the <a href="secureboot.html">Managing Secure Boot</a> page.</p>
175
176 <a name="keyboard">
177 <h2>Using Keyboard Shortcuts</h2>
178 </a>
179
180 <p>Although most rEFInd features can be activated via fairly obvious keyboard actions, some are not obvious. <a href="#table1">Table 1</a> summarizes the keystrokes that rEFInd accepts, and the action that each keystroke invokes.</p>
181
182 <table border="1" cellpadding="1" cellspacing="2" summary="Table 1: rEFInd Keyboard Shortcuts"><a name="table1"><caption><b>Table 1: rEFInd Keyboard Shortcuts</b></caption></a>
183 <tr>
184 <th>Keystroke</th>
185 <th>Explanation</th>
186 </tr>
187 <tr>
188 <td><i>left arrow</i></td>
189 <td>Moves the selection one icon to the left (or up the list in text mode)</td>
190 </tr>
191 <tr>
192 <td><i>right arrow</i></td>
193 <td>Moves the selection one icon to the right (or down the list in text mode)</td>
194 </tr>
195 <tr>
196 <td><i>up arrow</i></td>
197 <td>Moves the selection from the utilities row to the OS row (in text mode, moves up one entry)</td>
198 </tr>
199 <tr>
200 <td><i>down arrow</i></td>
201 <td>Moves the selection from the OS row to the utilities row (in text mode, moves down one entry)</td>
202 </tr>
203 <tr>
204 <td><i>Page Up</i></td>
205 <td>Scrolls the visible set of tags to the left (or up in text mode)</td>
206 </tr>
207 <tr>
208 <td><i>Page Down</i></td>
209 <td>Scrolls the visible set of tags to the right (or down in text mode)</td>
210 </tr>
211 <tr>
212 <td><i>Home</i></td>
213 <td>Moves the selection to the first item on the OS row</td>
214 </tr>
215 <tr>
216 <td><i>End</i></td>
217 <td>Moves the selection to the last item on the utilities row</td>
218 </tr>
219 <tr>
220 <td><i>Esc</i></td>
221 <td>Returns from a sub-menu; on the main screen, re-reads the configuration file and re-scans for boot loaders</td>
222 </tr>
223 <tr>
224 <td><i>Insert</i>, <i>F2</i>, or <i>+</i></td>
225 <td>From the main menu, opens the selection's submenu, which is most useful with Mac OS X, ELILO, and Linux kernels with EFI stub loader support; in a submenu, opens a line editor enabling editing of boot options</td>
226 </tr>
227 <tr>
228 <td><i>F10</i></td>
229 <td>Saves an image of the current screen in the file <tt>screenshot.bmp</tt> in the ESP's root directory</td>
230 </tr>
231 <tr>
232 <td><i>F12</i> or (on some keyboards) <i>Eject</i></td>
233 <td>Ejects removable media. This feature only works on some Macs, not on UEFI-based PCs.</td>
234 </tr>
235 <tr>
236 <td><i>Enter</i> or <i>spacebar</i></td>
237 <td>Launches the currently-selected OS, utility, or built-in feature</td>
238 </tr>
239 <tr>
240 <td><i>1</i> through <i>9</i></td>
241 <td>Launches the specified boot loader by number</td>
242 </tr>
243 <tr>
244 <td><i>A</i></td>
245 <td>Displays the "About rEFInd" information</td>
246 </tr>
247 <tr>
248 <td><i>E</i></td>
249 <td>Launches the first instance of ELILO in the boot list</td>
250 </tr>
251 <tr>
252 <td><i>G</i></td>
253 <td>Launches the first instance of GRUB in the boot list</td>
254 </tr>
255 <tr>
256 <td><i>L</i></td>
257 <td>Launches the first Linux kernel in the boot list</td>
258 </tr>
259 <tr>
260 <td><i>M</i></td>
261 <td>Launches the first Mac OS boot loader in the boot list</td>
262 </tr>
263 <tr>
264 <td><i>P</i></td>
265 <td>Launches <tt>gptsync</tt></td>
266 </tr>
267 <tr>
268 <td><i>S</i></td>
269 <td>Launches an EFI shell, if available</td>
270 </tr>
271 <tr>
272 <td><i>U</i></td>
273 <td>Shuts down the computer (but note that this is buggy and reboots most UEFI-based PCs)</td>
274 </tr>
275 <tr>
276 <td><i>W</i></td>
277 <td>Launches the first Windows boot loader</td>
278 </tr>
279 <tr>
280 <td>Other letters</td>
281 <td>Launch OSes whose names begin with those letters, as described below</td>
282 </tr>
283 </table>
284
285 <p>rEFInd assigns shortcut letters to most OS entries based on the first letter of the directory in which the OS's boot loader is stored. For instance, if you have a boot loader called <tt>/EFI/debian/elilo.efi</tt>, rEFInd attempts to assign it a shortcut letter of <i>D</i>. rEFInd overrides this default for Mac OS X, Windows, and for Linux's GRUB, ELILO, and EFI stub boot loaders if the distribution can't be more precisely identified, as noted in the preceding table. This method works well for many installations, but it can produce conflicts. For instance, if you have a Macintosh that holds both Mac OS X and Mandriva, both OSes would normally use the <tt>M</tt> shortcut key. In practice, which works depends on the order in which rEFInd detects the OSes.</p>
286
287 <a name="legacy">
288 <h2>Booting Legacy OSes</h2>
289 </a>
290
291 <p>Sometimes it's necessary to boot a legacy (BIOS-based) OS on an EFI computer. This is especially true on Macs, since this is the usual method of dual-booting OS X and Windows. In fact, even most Linux distributions install more easily in BIOS mode on Macs, although running Linux in EFI mode has its advantages. (See my <a href="http://www.rodsbooks.com/ubuntu-efi/">EFI-Booting Ubuntu on a Mac</a> page for an in-depth look at this topic.)</p>
292
293 <p>On UEFI-based PCs, booting some OSes in EFI mode and others in BIOS mode is less often necessary, since it's usually easy to install all your OSes in BIOS mode. If you have a working EFI-mode OS installation, though, and if you want to install an OS that lacks EFI-mode boot support, you may need to boot in both modes. This may happen if you want to add one of the BSDs (FreeBSD, OpenBSD, NetBSD, and so on) to a working system, for instance. You might also want to boot a BIOS-mode emergency recovery CD, such as <a href="http://partedmagic.com">Parted Magic</a> or <a href="http://www.sysresccd.org">System Rescue CD.</a></p>
294
295 <p>For all such cases, rEFInd supports booting legacy OSes; however, the details vary between Macs and UEFI PCs. Also, be aware that some UEFI PCs lack the Compatibility Support Module (CSM) that's required for this feature to work. This is true even of some computers that can boot BIOS-based OSes natively. This can happen because the firmware is basically a BIOS with a UEFI implementation tacked on top of it; such systems rely on the native BIOS to boot, and may not provide a way for EFI applications to access the BIOS features via CSM mechanisms. If you have such a computer and if you enable a legacy boot option in the configuration file, rEFInd notifies you of its inability to present legacy boot options when it starts up. rEFInd's legacy boot support also depends on features that are not available in the GNU-EFI development package, so you may see a similar notice if you run a version of rEFInd compiled with that package. (The primary build available on the <a href="getting.html">Getting rEFInd</a> page is compiled with the TianoCore EDK2 package, which does support the BIOS boot features.)</p>
296
297 <p>The <tt>scanfor</tt> option, described on the <a href="configfile.html">Configuring the Boot Manager</a> page, controls rEFInd's detection of legacy OSes. On Macs, the default is to scan for such OSes, since a common boot scenario on Macs is dual-booting OS X and Windows, and of course BIOS support is required for this. (rEFInd 0.4.5 and earlier did <i>not</i> scan for legacy OSes by default, though, so you may need to change this option if you're upgrading and don't want to scan for legacy OSes.) On UEFI PCs, rEFInd defaults to <i>not</i> scanning for legacy OSes; thus, you must edit the <tt>scanfor</tt> item in the configuration file if you want to boot a legacy OS on a UEFI PC.</p>
298
299 <img src="os_legacy.png" align="right" width="128" height="128"
300 alt="The legacy OS icon is identical for all OSes on UEFI-based PCs."
301 border=2 background="gray"/>
302
303 <p>On Macs, rEFInd uses a flexible scanning algorithm inherited from rEFIt. This procedure detects most legacy OSes on most disks, although it can sometimes miss an OS. This scanning algorithm can often identify the legacy OS you've installed and present a suitable icon. On UEFI PCs, rEFInd relies on the computer's NVRAM settings to determine which legacy boot loaders to scan; if an OS isn't listed in the NVRAM settings, rEFInd won't present it as an option. On most UEFI PCs, at least one hard disk and your optical drive appear as options. The two computers I've tested have failed to present USB flash drives as boot options when inserted, though. You may be able to get additional options to appear by editing your boot list in your firmware's setup utility, but I can make no promises about this. The UEFI scanning procedure is also incapable of detecting the OS type, so you'll see a generic legacy OS icon, as shown at the right.</p>
304
305 <hr />
306
307 <p>copyright &copy; 2012&ndash;2013 by Roderick W. Smith</p>
308
309 <p>This document is licensed under the terms of the <a href="FDL-1.3.txt">GNU Free Documentation License (FDL), version 1.3.</a></p>
310
311 <p>If you have problems with or comments about this Web page, please e-mail me at <a href="mailto:rodsmith@rodsbooks.com">rodsmith@rodsbooks.com.</a> Thanks.</p>
312
313 <p><a href="index.html">Go to the main rEFInd page</a></p>
314
315 <p><a href="configfile.html">Learn how to Configure rEFInd</a></p>
316
317 <p><a href="http://www.rodsbooks.com/">Return</a> to my main Web page.</p>
318 </body>
319 </html>