From d63a7f66945791bf980b4545f0f0edf0e1608eeb Mon Sep 17 00:00:00 2001 From: srs5694 Date: Sun, 25 Mar 2012 19:13:59 -0400 Subject: [PATCH] Added HTML documentation --- docs/Styles/styles.css | 74 +++++ docs/refind/FDL-1.3.txt | 451 ++++++++++++++++++++++++++++ docs/refind/automatic-submenu.png | Bin 0 -> 17221 bytes docs/refind/bootmode.html | 191 ++++++++++++ docs/refind/configfile.html | 388 ++++++++++++++++++++++++ docs/refind/features.html | 158 ++++++++++ docs/refind/getting.html | 146 +++++++++ docs/refind/index.html | 186 ++++++++++++ docs/refind/installing.html | 306 +++++++++++++++++++ docs/refind/linux.html | 195 ++++++++++++ docs/refind/manual-submenu.png | Bin 0 -> 20152 bytes docs/refind/refind.png | Bin 0 -> 91382 bytes docs/refind/revisions.html | 118 ++++++++ docs/refind/submenu.png | Bin 0 -> 19145 bytes docs/refind/todo.html | 160 ++++++++++ docs/refind/using.html | 232 ++++++++++++++ docs/refind/windows-gpt.png | Bin 0 -> 36284 bytes docs/refind/windows8-on-mac-efi.txt | 6 + 18 files changed, 2611 insertions(+) create mode 100644 docs/Styles/styles.css create mode 100644 docs/refind/FDL-1.3.txt create mode 100644 docs/refind/automatic-submenu.png create mode 100644 docs/refind/bootmode.html create mode 100644 docs/refind/configfile.html create mode 100644 docs/refind/features.html create mode 100644 docs/refind/getting.html create mode 100644 docs/refind/index.html create mode 100644 docs/refind/installing.html create mode 100644 docs/refind/linux.html create mode 100644 docs/refind/manual-submenu.png create mode 100644 docs/refind/refind.png create mode 100644 docs/refind/revisions.html create mode 100644 docs/refind/submenu.png create mode 100644 docs/refind/todo.html create mode 100644 docs/refind/using.html create mode 100644 docs/refind/windows-gpt.png create mode 100644 docs/refind/windows8-on-mac-efi.txt diff --git a/docs/Styles/styles.css b/docs/Styles/styles.css new file mode 100644 index 0000000..6a23832 --- /dev/null +++ b/docs/Styles/styles.css @@ -0,0 +1,74 @@ +body { + color:black; + background-color:white; + text-align:left; +/* font-family:"Georgia",serif; */ +} + +p { +/* text-indent:50px; */ +} + +li { + margin-top: 1em; + margin-bottom: 1em; +} + +h1,h2,h3,h4 { + text-align:center; + font-family:"Bitstream Vera Sans", "Verdana", "Helvetica", "Arial", sans-serif; +} + +.userinput { + font-weight:bold; + font-family:monospace; +} + +.variable { + font-style: italic; +} + +.listing { + font-family:Courier,monospace; + margin: 0px; + padding: 6px; + border: 1px solid; + max-width:100%; + width: 50em; + overflow-x:auto; + text-align: left; + background-color:#EEE; + white-space:pre; +} + +.quote { + width: 90%; + float: center; + padding: 2px; + margin: 10px; + background-color: #EEEEEE; +} + +.highlight { + background: #888888; +} + +.sidebar { + width: 45%; + float: right; + padding: 5px; + border:5px solid gray; + margin:10px; + background-color:#EEE; +} + +.subhead { + font-family:"Verdana", "Trebuchet", "Helvetica", sans-serif; + font-size:150%; + font-weight:bold; + text-align:center; +} + +.left { + text-align:left; +} diff --git a/docs/refind/FDL-1.3.txt b/docs/refind/FDL-1.3.txt new file mode 100644 index 0000000..2f7e03c --- /dev/null +++ b/docs/refind/FDL-1.3.txt @@ -0,0 +1,451 @@ + + GNU Free Documentation License + Version 1.3, 3 November 2008 + + + Copyright (C) 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc. + + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + +0. PREAMBLE + +The purpose of this License is to make a manual, textbook, or other +functional and useful document "free" in the sense of freedom: to +assure everyone the effective freedom to copy and redistribute it, +with or without modifying it, either commercially or noncommercially. +Secondarily, this License preserves for the author and publisher a way +to get credit for their work, while not being considered responsible +for modifications made by others. + +This License is a kind of "copyleft", which means that derivative +works of the document must themselves be free in the same sense. It +complements the GNU General Public License, which is a copyleft +license designed for free software. + +We have designed this License in order to use it for manuals for free +software, because free software needs free documentation: a free +program should come with manuals providing the same freedoms that the +software does. But this License is not limited to software manuals; +it can be used for any textual work, regardless of subject matter or +whether it is published as a printed book. We recommend this License +principally for works whose purpose is instruction or reference. + + +1. APPLICABILITY AND DEFINITIONS + +This License applies to any manual or other work, in any medium, that +contains a notice placed by the copyright holder saying it can be +distributed under the terms of this License. Such a notice grants a +world-wide, royalty-free license, unlimited in duration, to use that +work under the conditions stated herein. The "Document", below, +refers to any such manual or work. Any member of the public is a +licensee, and is addressed as "you". You accept the license if you +copy, modify or distribute the work in a way requiring permission +under copyright law. + +A "Modified Version" of the Document means any work containing the +Document or a portion of it, either copied verbatim, or with +modifications and/or translated into another language. + +A "Secondary Section" is a named appendix or a front-matter section of +the Document that deals exclusively with the relationship of the +publishers or authors of the Document to the Document's overall +subject (or to related matters) and contains nothing that could fall +directly within that overall subject. (Thus, if the Document is in +part a textbook of mathematics, a Secondary Section may not explain +any mathematics.) The relationship could be a matter of historical +connection with the subject or with related matters, or of legal, +commercial, philosophical, ethical or political position regarding +them. + +The "Invariant Sections" are certain Secondary Sections whose titles +are designated, as being those of Invariant Sections, in the notice +that says that the Document is released under this License. If a +section does not fit the above definition of Secondary then it is not +allowed to be designated as Invariant. The Document may contain zero +Invariant Sections. If the Document does not identify any Invariant +Sections then there are none. + +The "Cover Texts" are certain short passages of text that are listed, +as Front-Cover Texts or Back-Cover Texts, in the notice that says that +the Document is released under this License. A Front-Cover Text may +be at most 5 words, and a Back-Cover Text may be at most 25 words. + +A "Transparent" copy of the Document means a machine-readable copy, +represented in a format whose specification is available to the +general public, that is suitable for revising the document +straightforwardly with generic text editors or (for images composed of +pixels) generic paint programs or (for drawings) some widely available +drawing editor, and that is suitable for input to text formatters or +for automatic translation to a variety of formats suitable for input +to text formatters. A copy made in an otherwise Transparent file +format whose markup, or absence of markup, has been arranged to thwart +or discourage subsequent modification by readers is not Transparent. +An image format is not Transparent if used for any substantial amount +of text. A copy that is not "Transparent" is called "Opaque". + +Examples of suitable formats for Transparent copies include plain +ASCII without markup, Texinfo input format, LaTeX input format, SGML +or XML using a publicly available DTD, and standard-conforming simple +HTML, PostScript or PDF designed for human modification. Examples of +transparent image formats include PNG, XCF and JPG. Opaque formats +include proprietary formats that can be read and edited only by +proprietary word processors, SGML or XML for which the DTD and/or +processing tools are not generally available, and the +machine-generated HTML, PostScript or PDF produced by some word +processors for output purposes only. + +The "Title Page" means, for a printed book, the title page itself, +plus such following pages as are needed to hold, legibly, the material +this License requires to appear in the title page. For works in +formats which do not have any title page as such, "Title Page" means +the text near the most prominent appearance of the work's title, +preceding the beginning of the body of the text. + +The "publisher" means any person or entity that distributes copies of +the Document to the public. + +A section "Entitled XYZ" means a named subunit of the Document whose +title either is precisely XYZ or contains XYZ in parentheses following +text that translates XYZ in another language. (Here XYZ stands for a +specific section name mentioned below, such as "Acknowledgements", +"Dedications", "Endorsements", or "History".) To "Preserve the Title" +of such a section when you modify the Document means that it remains a +section "Entitled XYZ" according to this definition. + +The Document may include Warranty Disclaimers next to the notice which +states that this License applies to the Document. These Warranty +Disclaimers are considered to be included by reference in this +License, but only as regards disclaiming warranties: any other +implication that these Warranty Disclaimers may have is void and has +no effect on the meaning of this License. + +2. VERBATIM COPYING + +You may copy and distribute the Document in any medium, either +commercially or noncommercially, provided that this License, the +copyright notices, and the license notice saying this License applies +to the Document are reproduced in all copies, and that you add no +other conditions whatsoever to those of this License. You may not use +technical measures to obstruct or control the reading or further +copying of the copies you make or distribute. However, you may accept +compensation in exchange for copies. If you distribute a large enough +number of copies you must also follow the conditions in section 3. + +You may also lend copies, under the same conditions stated above, and +you may publicly display copies. + + +3. COPYING IN QUANTITY + +If you publish printed copies (or copies in media that commonly have +printed covers) of the Document, numbering more than 100, and the +Document's license notice requires Cover Texts, you must enclose the +copies in covers that carry, clearly and legibly, all these Cover +Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on +the back cover. Both covers must also clearly and legibly identify +you as the publisher of these copies. The front cover must present +the full title with all words of the title equally prominent and +visible. You may add other material on the covers in addition. +Copying with changes limited to the covers, as long as they preserve +the title of the Document and satisfy these conditions, can be treated +as verbatim copying in other respects. + +If the required texts for either cover are too voluminous to fit +legibly, you should put the first ones listed (as many as fit +reasonably) on the actual cover, and continue the rest onto adjacent +pages. + +If you publish or distribute Opaque copies of the Document numbering +more than 100, you must either include a machine-readable Transparent +copy along with each Opaque copy, or state in or with each Opaque copy +a computer-network location from which the general network-using +public has access to download using public-standard network protocols +a complete Transparent copy of the Document, free of added material. +If you use the latter option, you must take reasonably prudent steps, +when you begin distribution of Opaque copies in quantity, to ensure +that this Transparent copy will remain thus accessible at the stated +location until at least one year after the last time you distribute an +Opaque copy (directly or through your agents or retailers) of that +edition to the public. + +It is requested, but not required, that you contact the authors of the +Document well before redistributing any large number of copies, to +give them a chance to provide you with an updated version of the +Document. + + +4. MODIFICATIONS + +You may copy and distribute a Modified Version of the Document under +the conditions of sections 2 and 3 above, provided that you release +the Modified Version under precisely this License, with the Modified +Version filling the role of the Document, thus licensing distribution +and modification of the Modified Version to whoever possesses a copy +of it. In addition, you must do these things in the Modified Version: + +A. Use in the Title Page (and on the covers, if any) a title distinct + from that of the Document, and from those of previous versions + (which should, if there were any, be listed in the History section + of the Document). You may use the same title as a previous version + if the original publisher of that version gives permission. +B. List on the Title Page, as authors, one or more persons or entities + responsible for authorship of the modifications in the Modified + Version, together with at least five of the principal authors of the + Document (all of its principal authors, if it has fewer than five), + unless they release you from this requirement. +C. State on the Title page the name of the publisher of the + Modified Version, as the publisher. +D. Preserve all the copyright notices of the Document. +E. Add an appropriate copyright notice for your modifications + adjacent to the other copyright notices. +F. Include, immediately after the copyright notices, a license notice + giving the public permission to use the Modified Version under the + terms of this License, in the form shown in the Addendum below. +G. Preserve in that license notice the full lists of Invariant Sections + and required Cover Texts given in the Document's license notice. +H. Include an unaltered copy of this License. +I. Preserve the section Entitled "History", Preserve its Title, and add + to it an item stating at least the title, year, new authors, and + publisher of the Modified Version as given on the Title Page. If + there is no section Entitled "History" in the Document, create one + stating the title, year, authors, and publisher of the Document as + given on its Title Page, then add an item describing the Modified + Version as stated in the previous sentence. +J. Preserve the network location, if any, given in the Document for + public access to a Transparent copy of the Document, and likewise + the network locations given in the Document for previous versions + it was based on. These may be placed in the "History" section. + You may omit a network location for a work that was published at + least four years before the Document itself, or if the original + publisher of the version it refers to gives permission. +K. For any section Entitled "Acknowledgements" or "Dedications", + Preserve the Title of the section, and preserve in the section all + the substance and tone of each of the contributor acknowledgements + and/or dedications given therein. +L. Preserve all the Invariant Sections of the Document, + unaltered in their text and in their titles. Section numbers + or the equivalent are not considered part of the section titles. +M. Delete any section Entitled "Endorsements". Such a section + may not be included in the Modified Version. +N. Do not retitle any existing section to be Entitled "Endorsements" + or to conflict in title with any Invariant Section. +O. Preserve any Warranty Disclaimers. + +If the Modified Version includes new front-matter sections or +appendices that qualify as Secondary Sections and contain no material +copied from the Document, you may at your option designate some or all +of these sections as invariant. To do this, add their titles to the +list of Invariant Sections in the Modified Version's license notice. +These titles must be distinct from any other section titles. + +You may add a section Entitled "Endorsements", provided it contains +nothing but endorsements of your Modified Version by various +parties--for example, statements of peer review or that the text has +been approved by an organization as the authoritative definition of a +standard. + +You may add a passage of up to five words as a Front-Cover Text, and a +passage of up to 25 words as a Back-Cover Text, to the end of the list +of Cover Texts in the Modified Version. Only one passage of +Front-Cover Text and one of Back-Cover Text may be added by (or +through arrangements made by) any one entity. If the Document already +includes a cover text for the same cover, previously added by you or +by arrangement made by the same entity you are acting on behalf of, +you may not add another; but you may replace the old one, on explicit +permission from the previous publisher that added the old one. + +The author(s) and publisher(s) of the Document do not by this License +give permission to use their names for publicity for or to assert or +imply endorsement of any Modified Version. + + +5. COMBINING DOCUMENTS + +You may combine the Document with other documents released under this +License, under the terms defined in section 4 above for modified +versions, provided that you include in the combination all of the +Invariant Sections of all of the original documents, unmodified, and +list them all as Invariant Sections of your combined work in its +license notice, and that you preserve all their Warranty Disclaimers. + +The combined work need only contain one copy of this License, and +multiple identical Invariant Sections may be replaced with a single +copy. If there are multiple Invariant Sections with the same name but +different contents, make the title of each such section unique by +adding at the end of it, in parentheses, the name of the original +author or publisher of that section if known, or else a unique number. +Make the same adjustment to the section titles in the list of +Invariant Sections in the license notice of the combined work. + +In the combination, you must combine any sections Entitled "History" +in the various original documents, forming one section Entitled +"History"; likewise combine any sections Entitled "Acknowledgements", +and any sections Entitled "Dedications". You must delete all sections +Entitled "Endorsements". + + +6. COLLECTIONS OF DOCUMENTS + +You may make a collection consisting of the Document and other +documents released under this License, and replace the individual +copies of this License in the various documents with a single copy +that is included in the collection, provided that you follow the rules +of this License for verbatim copying of each of the documents in all +other respects. + +You may extract a single document from such a collection, and +distribute it individually under this License, provided you insert a +copy of this License into the extracted document, and follow this +License in all other respects regarding verbatim copying of that +document. + + +7. AGGREGATION WITH INDEPENDENT WORKS + +A compilation of the Document or its derivatives with other separate +and independent documents or works, in or on a volume of a storage or +distribution medium, is called an "aggregate" if the copyright +resulting from the compilation is not used to limit the legal rights +of the compilation's users beyond what the individual works permit. +When the Document is included in an aggregate, this License does not +apply to the other works in the aggregate which are not themselves +derivative works of the Document. + +If the Cover Text requirement of section 3 is applicable to these +copies of the Document, then if the Document is less than one half of +the entire aggregate, the Document's Cover Texts may be placed on +covers that bracket the Document within the aggregate, or the +electronic equivalent of covers if the Document is in electronic form. +Otherwise they must appear on printed covers that bracket the whole +aggregate. + + +8. TRANSLATION + +Translation is considered a kind of modification, so you may +distribute translations of the Document under the terms of section 4. +Replacing Invariant Sections with translations requires special +permission from their copyright holders, but you may include +translations of some or all Invariant Sections in addition to the +original versions of these Invariant Sections. You may include a +translation of this License, and all the license notices in the +Document, and any Warranty Disclaimers, provided that you also include +the original English version of this License and the original versions +of those notices and disclaimers. In case of a disagreement between +the translation and the original version of this License or a notice +or disclaimer, the original version will prevail. + +If a section in the Document is Entitled "Acknowledgements", +"Dedications", or "History", the requirement (section 4) to Preserve +its Title (section 1) will typically require changing the actual +title. + + +9. TERMINATION + +You may not copy, modify, sublicense, or distribute the Document +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense, or distribute it is void, and +will automatically terminate your rights under this License. + +However, if you cease all violation of this License, then your license +from a particular copyright holder is reinstated (a) provisionally, +unless and until the copyright holder explicitly and finally +terminates your license, and (b) permanently, if the copyright holder +fails to notify you of the violation by some reasonable means prior to +60 days after the cessation. + +Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + +Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, receipt of a copy of some or all of the same material does +not give you any rights to use it. + + +10. FUTURE REVISIONS OF THIS LICENSE + +The Free Software Foundation may publish new, revised versions of the +GNU Free Documentation License from time to time. Such new versions +will be similar in spirit to the present version, but may differ in +detail to address new problems or concerns. See +http://www.gnu.org/copyleft/. + +Each version of the License is given a distinguishing version number. +If the Document specifies that a particular numbered version of this +License "or any later version" applies to it, you have the option of +following the terms and conditions either of that specified version or +of any later version that has been published (not as a draft) by the +Free Software Foundation. If the Document does not specify a version +number of this License, you may choose any version ever published (not +as a draft) by the Free Software Foundation. If the Document +specifies that a proxy can decide which future versions of this +License can be used, that proxy's public statement of acceptance of a +version permanently authorizes you to choose that version for the +Document. + +11. RELICENSING + +"Massive Multiauthor Collaboration Site" (or "MMC Site") means any +World Wide Web server that publishes copyrightable works and also +provides prominent facilities for anybody to edit those works. A +public wiki that anybody can edit is an example of such a server. A +"Massive Multiauthor Collaboration" (or "MMC") contained in the site +means any set of copyrightable works thus published on the MMC site. + +"CC-BY-SA" means the Creative Commons Attribution-Share Alike 3.0 +license published by Creative Commons Corporation, a not-for-profit +corporation with a principal place of business in San Francisco, +California, as well as future copyleft versions of that license +published by that same organization. + +"Incorporate" means to publish or republish a Document, in whole or in +part, as part of another Document. + +An MMC is "eligible for relicensing" if it is licensed under this +License, and if all works that were first published under this License +somewhere other than this MMC, and subsequently incorporated in whole or +in part into the MMC, (1) had no cover texts or invariant sections, and +(2) were thus incorporated prior to November 1, 2008. + +The operator of an MMC Site may republish an MMC contained in the site +under CC-BY-SA on the same site at any time before August 1, 2009, +provided the MMC is eligible for relicensing. + + +ADDENDUM: How to use this License for your documents + +To use this License in a document you have written, include a copy of +the License in the document and put the following copyright and +license notices just after the title page: + + Copyright (c) YEAR YOUR NAME. + Permission is granted to copy, distribute and/or modify this document + under the terms of the GNU Free Documentation License, Version 1.3 + or any later version published by the Free Software Foundation; + with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. + A copy of the license is included in the section entitled "GNU + Free Documentation License". + +If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts, +replace the "with...Texts." line with this: + + with the Invariant Sections being LIST THEIR TITLES, with the + Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST. + +If you have Invariant Sections without Cover Texts, or some other +combination of the three, merge those two alternatives to suit the +situation. + +If your document contains nontrivial examples of program code, we +recommend releasing these examples in parallel under your choice of +free software license, such as the GNU General Public License, +to permit their use in free software. diff --git a/docs/refind/automatic-submenu.png b/docs/refind/automatic-submenu.png new file mode 100644 index 0000000000000000000000000000000000000000..cb687ae7907b9ac5b7b15cfe6cb54c5a5e81eef2 GIT binary patch literal 17221 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 literal 0 HcmV?d00001 diff --git a/docs/refind/bootmode.html b/docs/refind/bootmode.html new file mode 100644 index 0000000..8b3e61e --- /dev/null +++ b/docs/refind/bootmode.html @@ -0,0 +1,191 @@ + + + + + + The rEFInd Boot Manager: What's Your Boot Mode? + + + + +

The rEFInd Boot Manager:
What's Your Boot Mode?

+ +

by Roderick W. Smith, rodsmith@rodsbooks.com

+ +

Originally written: 3/14/2012; last Web page update: 3/23/2012, referencing rEFInd 0.2.2

+ + +

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!

+ + + + + + + + + + + + + + + +
Donate $1.00Donate $2.50Donate $5.00Donate $10.00Donate another value
+ + + + + + +
+ +
+ + + + + + +
+ +
+ + + + + + +
+ +
+ + + + + + +
+ +
+
+ + + + + + + + +Donate with PayPal +
+
+ +
+ +

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 main page.

+ +
+ +

Before you invest time in downloading and trying to install rEFInd, you may want to verify that you can actually use the program at all. rEFInd is useful only on EFI-based computers, not older BIOS-based computers. In fact, most EFI-based x86-64 computers provide a Compatibility Support Module (CSM), which is essentially a BIOS emulation mode. Some EFI implementations are in fact built atop a conventional BIOS, and retain BIOS's boot abilities via this underlying code. Thus, it's possible that you're currently booting a modern EFI-capable computer in BIOS mode.

+ +

Unfortunately, determining which mode you're using can be tricky; the clues are subtle or hidden in ways that require specialized knowledge to extract. This page will help you figure it out. I first present general information on identifying your hardware's capabilities. I then describe ways to identify your current boot mode in both Linux and Windows.

+ +

Identifying Your Hardware's Capabilities

+ +

Let's get the easy case out of the way: If you have a Macintosh with an Intel CPU, it's got EFI capabilities, and you'll be able to use rEFInd. Earlier Macs with PowerPC CPUs use OpenFirmware, and rEFInd can't be used with them.

+ +

For everything else, it can be harder to tell. Your best bet is to locate a PDF version of your computer's or motherboard's manual and search it for the string EFI. Checking your firmware's options via the firmware setup utility (typically access by pressing Del, F2, F10, or F12 at boot time) is also worth doing, but you'll need to check every option yourself. Most EFI-enabled PCs include at least one reference to an option you can set; however, manuals and firmware setup tools often don't make a big deal of this feature, particularly on boards with relatively primitive EFI support. For instance, the manual for a Gigabyte GA-78LMT-S2P motherboard includes the following paragraph, on p. 28:

+ +
+
    +
  • EFI CD/DVD Boot Option
    Set this item to EFI if you want to install the operating system to a hard drive larger than 2.2 TB. Make sure the operating system to be installed supports booting from a GPT partition, such as Windows 7 64-bit and Windows Server 2003 64-bit. Auto lets the BIOS automatically configure this setting depending on the hard drive you install. (Default: Auto)
  • +
+
+ +

A casual reader might easily overlook this option, or misinterpret it to mean that the feature is much less important than it is. In fact, this particular motherboard offers very poor control over its EFI vs. BIOS booting features. (See my Web page on this EFI implementation for details.)

+ +

Some manuals omit even mention of EFI, and instead refer to "legacy boot" or some similar term, referring to BIOS-style booting. Such references may imply that the firmware supports EFI booting if the "legacy boot" mode is disabled or restricted in some way.

+ +

Understated EFI features often indicate a slapdash approach to EFI. Such systems sometimes implement EFI as a layer atop a conventional BIOS. More modern EFIs, though, completely replace the BIOS. Some manufacturers, such as ASUS and its sibling ASRock, are now actively promoting their more advanced EFI implementations. Such products often come with flashy new GUIs in their firmware.

+ +

Positive identification of EFI support in your firmware does not guarantee that your current OSes are booting in EFI mode. (Mac OS X booting on a Mac is an exception to this rule, though.) For that, you'll need to run some tests in your running OSes.

+ +

Identifying Your Linux Boot Mode

+ +

Identifying your boot mode in Linux is relatively straightforward. The simplest way is to check for the presence of a /sys/firmware/efi directory. The mere existence of this directory indicates that the computer has booted in EFI mode. Its absence suggests a BIOS-mode boot—but see below for an important caveat.

+ +

Another test, which produces more detailed information about the EFI implementation, is to check the kernel ring buffer for references to EFI. You can do this as follows:

+ +
    + +
  1. Launch a terminal program in GUI mode, or log in using text mode.
  2. + +
  3. Type dmesg | grep EFI. + +
+ +

The result on a BIOS-based computer should be few or no lines of output. On an EFI-based computer, though, the output will be extensive:

+ +
+[    0.000000] Command line: BOOT_IMAGE=dev000:\EFI\elilo\bzImage-3.2.7 root=/dev/mapper/nessus-g_root  dolvm ro
+[    0.000000] EFI v2.10 by TianoCore.org
+[    0.000000] Kernel-defined memdesc doesn't match the one from EFI!
+[    0.000000] EFI: mem00: type=7, attr=0xf, range=[0x0000000000086000-0x000000000009c000) (0MB)
+[    0.000000] EFI: mem01: type=4, attr=0xf, range=[0x000000000009c000-0x000000000009d000) (0MB)
+...
+[    0.000000] EFI: mem58: type=0, attr=0x1, range=[0x00000000fec00000-0x0000000100000000) (20MB)
+[    0.000000] EFI: mem59: type=7, attr=0xf, range=[0x0000000100000000-0x0000000230000000) (4864MB)
+[    0.000000] Kernel command line: BOOT_IMAGE=dev000:\EFI\elilo\bzImage-3.2.7 root=/dev/mapper/nessus-g_root  dolvm ro
+[    0.844752] fbcon: EFI VGA (fb0) is primary device
+[    0.853525] fb0: EFI VGA frame buffer device
+[    1.061571] EFI Variables Facility v0.08 2004-May-17
+
+ +

I've actually cut quite a few lines from this output; there are a total of 60 EFI: mem## lines on this computer. (Another of my computers has 148 such lines!) A BIOS-based computer will lack most or all of these lines, and certainly the EFI: mem## lines. I've heard of some BIOS-based computers that produce the final EFI Variables Facility line, though.

+ +

One caveat exists to these tests: It's possible to boot Linux in EFI mode but disable the EFI features that create the /sys/firmware/efi directory and the copious EFI output in dmesg. This can happen because your kernel was compiled without EFI support or because you've added the noefi line to your existing BIOS boot loader configuration. To the best of my knowledge, no major Linux distribution ships with EFI support disabled in either of these ways, so chances are your tests won't mislead you to thinking you're using BIOS mode unless you've recompiled your kernel or deliberately added a noefi parameter to your boot loader configuration.

+ +

Identifying Your Windows Boot Mode

+ +

I know of no easy command or standard display that positively identifies an EFI boot of Windows; however, Microsoft has tied use of the GUID Partition Table (GPT) to EFI booting. If you've booted from a GPT disk, then you must be using EFI, and if you've booted from a Master Boot Record (MBR) disk, you must have booted in BIOS mode. Therefore, you can check your partition table type as a proxy for your boot mode. To do this in Windows 7, follow these steps:

+ +
    + +
  1. Open the Control Panel.
  2. + +
  3. Click System and Security.
  4. + +
  5. Click Create and Format Hard Disk Partitions under Administrative Tools. The Disk Management window should open.
  6. + +
  7. Right-click on Disk 0 on the left side of the bottom pane of the window. A context menu should appear.
  8. + +
  9. Click Properties in the context menu. A Properties dialog box should open.
  10. + +
  11. Select the Volumes tab. The result should resemble the below figure. The Partition Style item identifies the partition table type—GPT in this example.
  12. + +
+ +
Under Windows, you can use the disk's partition table
+    type to determine your boot mode.
+ +

An important caveat with this method is that you must examine your boot disk. It's possible to use GPT on a data disk even on a BIOS-based computer, or to use an MBR data disk even on an EFI-based computer. Thus, if you examine the wrong disk, you can be led to an incorrect conclusion about your computer's boot mode.

+ +
+ +

copyright © 2012 by Roderick W. Smith

+ +

This document is licensed under the terms of the GNU Free Documentation License (FDL), version 1.3.

+ +

If you have problems with or comments about this Web page, please e-mail me at rodsmith@rodsbooks.com. Thanks.

+ +

Go to the main rEFInd page

+ +

Learn how to use rEFInd

+ +

Return to my main Web page.

+ + diff --git a/docs/refind/configfile.html b/docs/refind/configfile.html new file mode 100644 index 0000000..00fdc66 --- /dev/null +++ b/docs/refind/configfile.html @@ -0,0 +1,388 @@ + + + + + + The rEFInd Boot Manager: Configuring the Boot Manager + + + + +

The rEFInd Boot Manager:
Configuring the Boot Manager

+ +

by Roderick W. Smith, rodsmith@rodsbooks.com

+ +

Originally written: 3/14/2012; last Web page update: 3/23/2012, referencing rEFInd 0.2.2

+ + +

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!

+ + + + + + + + + + + + + + + +
Donate $1.00Donate $2.50Donate $5.00Donate $10.00Donate another value
+ + + + + + +
+ +
+ + + + + + +
+ +
+ + + + + + +
+ +
+ + + + + + +
+ +
+
+ + + + + + + + +Donate with PayPal +
+
+ +
+ +

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 main page.

+ +
+ +

Many casual users will be able to use rEFInd without making further changes; in its default configuration, the boot manager automatically detects all the EFI boot loader programs you have on your ESP (or your OS X boot partition, in the case of Macs) and displays icons for them. Sometimes, though, you may want to tweak rEFInd's configuration. Sometimes you can obtain your desired results by adjusting the filenames of your boot loaders. Other times, you can edit rEFInd's configuration file, refind.conf, which resides in the same directory as its binary file (refind.efi or whatever you've renamed it).

+ +

Broadly speaking, rEFInd's configuration file is broken down into two sections: global options and OS stanzas. The global options section sets options that apply globally—to set the timeout period, enable graphics or text mode, and so on. OS stanzas are optional, but if present, they enable you to add new boot options or replace the auto-detected options with customized ones. Both sections include configuration lines and comment lines, the latter being denoted by a leading hash mark (#). rEFInd ignores comment lines, so you can add explanatory text. The default configuration file includes numerous comments explaining each of the options.

+ +

Hiding EFI Boot Loaders

+ + + +

Before delving into the configuration file, you should be aware of what you can do by renaming files. By default, rEFInd scans all the filesystems it can read for boot loaders. It scans most of the subdirectories of the EFI directory on every filesystem it can access for files with names that end in .efi. (rEFIt gives special treatment to the TOOLS subdirectory, where it looks for system tools rather than boot loaders.)

+ +

If you're like me, you may sometimes want to hide a boot loader from rEFInd's menu for a brief period—say, because you're testing a variety of configurations but you don't want them all to clutter the menu at once. You might also want to hide a boot loader if you want to override its default settings using a custom entry in refind.conf and you don't want an automatic search to duplicate that entry. You can easily hide a boot loader by removing or changing its .efi filename extension—for instance, changing grub.efi to grub.

+ +

Another way to hide a boot loader is to move it into rEFInd's own directory. In order to keep rEFInd from showing up in its own menu, it ignores boot loaders in its own directory. This obviously includes the rEFInd binary file itself, but also anything else you might store there.

+ +

Adjusting the Global Configuration

+ +

You can adjust many of rEFInd's options by editing its refind.conf file. You can use any text editor you like for the job, but be sure it saves the file in plain ASCII text, not in a word processing format. (In theory, a UTF-16 encoding should also work, but I've not tried that myself.) Note that the EFI shell includes its own editor. If you need to make a change before you launch an OS, you can launch a shell, change to the rEFInd directory, and type edit refind.conf to edit the file. This EFI editor is quite primitive, but it gets the job done. After editing, you'll need to reboot for rEFInd to read the changed configuration file.

+ +

Global configuration file options consist of a name token followed by one or more parameters, as in:

+ +
+timeout 20
+
+ +

This example's name token is timeout and its parameter is 20. The net effect of this line is to set the timeout period to 20 seconds—rEFInd will wait 20 seconds before launching the default boot loader. Some options can take multiple parameters. These may be separated by commas, spaces, or tabs. The global options are summarized in the Table 1.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 1: Global options in refind.conf
TokenPossible parametersExplanation
timeoutnumeric valueSets the timeout period in seconds. If 0, the timeout is disabled—rEFInd waits indefinitely for user input.
disableshell, tools, singleuser, hwtest, or allRemoves the specified menu options for improved security. shell removes the EFI shell, tools removes all the EFI tools, singleuser removes the single-user option from the Mac OS sub-menu, hwtest removes the Mac OS hardware test option, and all removes all of these options. You can specify multiple parameters with this option. The default is to set none of these options.
bannerfilenameSpecifies a custom banner file to replaced the rEFInd banner image. The file should be a BMP image with a color depth of 24, 8, 4, or 1 bits. The file path is relative to the directory where refind.efi is stored.
selection_bigfilenameSpecifies a graphics file that can be used to highlight the OS selection icons. This should be a 144x144 image in BMP format.
selection_smallfilenameLike selection_big, this sets an alternate highlight graphic, but for the smaller utility tags on the second row.
hideuibanner, shell, tools, funcs, label, or allHides the specified user interface elements: The rEFInd logo, the EFI shell icon, all the tools, built-in functions (restart and about), text labels, and all of the above, respectively. Some of these parameters are redundant with disable parameters. The default is to set none of these options.
textonlyNonerEFInd defaults to a graphical mode; however, if you prefer to do without the flashy graphics, you can run it in text mode by including this option.
scanforinternal, external, optical, hdbios, biosexternal, cd, and manualTells rEFInd what methods to use to locate boot loaders. The internal, external, and optical parameters tell rEFInd to scan for EFI boot loaders on internal, external, and optical (CD, DVD, and Blu-ray) devices, respectively. The hdbios, biosexternal, and cd parameters are similar, but scan for BIOS boot loaders. (Note that the BIOS options are likely to be useless on UEFI PCs.) The manual parameter tells rEFInd to scan the configuration file for manual settings. You can specify multiple parameters to have the program scan for multiple boot loader types. When you do so, the order determines the order in which the boot loaders appear in the menu. The default is internal, external, optical.
default_selectionA substring of a boot loader's titleSets the default boot OS based on the loader's title, which appears in the main menu when you select the loader; the text reads Boot Title from Disk. You can enter any substring of Title as the default_selection, so long as it's two or more characters in length. Be sure you enter a unique substring, though; rEFInd stops searching when it finds the first match. One-character entries are matched against the first character of the title, except for digits, which refer to the numeric order of the boot loader entries. (Note: In version 0.2.0, only the first character of this entry was used, and was matched against the first character of the title.)
+ +

As an example, consider the following refind.conf file:

+ +
+# Sample refind.conf file
+timeout 5
+banner custom.bmp
+scanfor manual,external,optical
+default_selection L
+
+ +

This example sets a timeout of 5 seconds; loads a custom graphic file called custom.bmp from the directory in which refind.efi resides; uses manual boot loader configuration but also scans for external EFI boot loaders and EFI boot loaders on optical discs; and sets the default boot loader to Linux. Of course, since this file specifies use of manual boot loader configuration, it's not complete; you'll need to add at least one OS stanza to be able to boot from anything but an external disk or optical drive....

+ +

Creating OS Stanzas

+ +

OS stanzas in rEFInd are similar to those in GRUB Legacy, GRUB 2, or ELILO. You can use them to add configuration options to those that are auto-detected. You cannot modify the auto-detected options, though; if you just want to tweak one OS's configuration, you has several options, none of which is ideal:

+ +
    + +
  • You can move or rename the boot loader file for the boot loader you want to tweak.
  • + +
  • You can disable all auto-detection options and add manual configurations for all your boot loaders, even those that work fine when auto-detected.
  • + +
  • You can put up with having duplicate tags in your OS list.
  • + +
+ +

Each OS stanza begins with the keyword menuentry, a name for the entry, and an open curly brace ({). Subsequent lines constitute the bulk of the stanza, which concludes with a line containing nothing but a close curly brace (}). Table 2 summarizes the keywords that you can include in a stanza.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 2: OS stanza definitions in refind.conf
TokenPossible parametersExplanation
menuentryname for the entrySets the name that's displayed along with the icon for this entry. If the name should contain a space, it must be enclosed in quotes. Following the name, an open curly brace ({) ends the menuentry line.
loaderfilenameSets the filename for the boot loader. You may use either Unix-style slashes (/) or Windows/EFI-style backslashes (\) to separate directory elements. In either case, the references are to files on the ESP from which rEFInd launched; you can't (yet) launch loaders from other locations. This option should normally be the first in the body of an OS stanza; if it's not, some other options may be ignored.
initrdfilenameSets the filename for a Linux kernel's initial RAM disk (initrd). This option is useful only when booting a Linux kernel that includes an EFI stub loader, which enables you to boot a kernel without the benefit of a separate boot loader. When booted in this way, though, you must normally pass an initrd filename to the boot loader. You must specify the complete EFI path to the initrd file with this option, as in initrd EFI/linux/initrd-3.3.0-rc7.img. You'll also have to use the options line to pass the Linux root filesystem, and perhaps other options (as in options "root=/dev/sda4 ro").
iconfilenameSets the filename for an icon for the menu. If you omit this item, a default icon will be used, based on rEFInd's auto-detection algorithms.
ostypeMacOS, Linux, ELILO, Windows, XOMDetermines the options that are available on a sub-menu obtained by pressing the Insert key with an OS selected in the main menu. If you omit this option, rEFInd selects options using an auto-detection algorithm. Note that this option is case-sensitive.
graphicson or offEnables or disables a graphical boot mode. This option is important only for Mac OS X.
optionsoptions passed to the boot loaderPass arbitrary options to your boot loader with this line. Note that if the option string should contain spaces (as it often should) or characters that should not be modified by rEFInd's option parser (such as slashes or commas), it must be enclosed in quotes.
disabledNoneDisable an entry. This is often easier than commenting out an entire entry if you want to temporarily disable it.
submenuentrysubmenu entry name and tokensThis keyword identifies a submenu entry, as described in more detail shortly.
+ +

As an example, consider the following entries:

+ +
+menuentry "Ubuntu Linux" {
+    loader /EFI/ubuntu/grubx64.efi
+    disabled
+}
+
+menuentry Gentoo {
+    loader \EFI\linux\bzImage-3.3.0-rc7
+    initrd \EFI\linux\initrd-3.3.0-rc7.img
+    options "root=/dev/sda3 ro"
+    icon \EFI\refind\icons\os_gentoo.icns
+}
+
+ +

This example sets up two entries: one for Ubuntu Linux and one for Gentoo Linux. Note that the two entries use different directory separators, simply to demonstrate the fact that it's possible. The Ubuntu entry sets no icon, since rEFInd will note that the boot loader is stored in the ubuntu directory, and it will automatically find the appropriate Ubuntu icon (os_ubuntu.icns). This option is, however, disabled, so no matching icon will appear when you reboot unless you first comment out or delete the disabled line.

+ +

The Gentoo entry passes the filename for an initial RAM disk using the initrd line and free-form options using the option line. It also sets an icon name, since the path to the kernel doesn't include the distribution's name. Note that the kernel filename does not include a .efi extension, which keeps rEFInd from picking up the kernel file in its auto-scans.

+ +

You can combine these OS stanzas with the global refind.conf options presented earlier. The result would contain just one entry on the rEFInd boot menu, unless rEFInd found other boot options on an external or optical disk.

+ +

Presently, an important limitation of rEFInd is that the manual boot loader definitions can only read files on the partition from which rEFInd launched. rEFInd can, however, auto-detect boot loaders on other disks or partitions via the internal, external, and similar options.

+ +

Creating Submenu Entries

+ +

As described on the Using rEFInd page, rEFInd can present a menu of options for certain loader tags when you press the Insert, F2, or + key. rEFInd does this automatically when it detects Mac OS X or ELILO boot loaders, or when you set the OS type via the ostype option. The Mac OS X boot loader, in particular, accepts various options that you can use to boot in various ways.

+ +

Sometimes, you might want to create your own custom submenu entries, and rEFInd 0.2.1 and later enable you to do this. To create a custom submenu, you use the submenuentry keyword inside a menuentry stanza. Normally, you'll set the submenu definitions after you've set the main menu options, since the submenu options take the main menu options as defult, and so the main options must be set first. Like a menuentry stanza, a submenuentry definition begins with the keyword, the name of the item, and an open curly brace ({). It continues until a close curly brace (}). A submenu definition can use the keywords described in Table 3. Except as otherwise noted, using an option of a given name completely overrides the setting in the main stanza.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 3: Submenu keywords in refind.conf
TokenPossible parametersExplanation
submenuentryname for the entrySets the name that's displayed for this entry on the submenu page. If the name should contain a space, it must be enclosed in quotes. Following the name, an open curly brace ({) ends the submenuentry line.
loaderfilenameSets the filename for the boot loader, as described in Table 2.
initrdfilenameSets the filename for a Linux kernel's initial RAM disk (initrd), as described in Table 2. If you want to eliminate the initrd specification, you should use this keyword alone, with no options. You might do this because your main entry is for a Linux kernel with EFI stub support and this submenu entry launches ELILO, which sets the initrd in its own configuration file.
graphicson or offEnables or disables a graphical boot mode, as described in Table 2.
optionsoptions passed to the boot loaderPass arbitrary options to your boot loader with this line, as described in Table 2. As with initrd, you can eliminate all options by passing this keyword alone on a line.
add_optionsoptions passed to the boot loaderThis token works just like options, except that instead of replacing the default options, it causes the specified options to be added to those specified in the main stanza listing's options line.
disabledNoneDisable a submenu entry. This is often easier than commenting out an entire entry if you want to temporarily disable it.
+ +

The following menu entry illustrates the use of submenu entries. This is an expansion on the second entry presented earlier:

+ +
+menuentry Gentoo {
+    loader \EFI\linux\bzImage-3.3.0-rc7
+    initrd \EFI\linux\initrd-3.3.0-rc7.img
+    options "root=/dev/sda3 ro"
+    icon \EFI\refind\icons\os_gentoo.icns
+    submenuentry "single-user mode" {
+        add_options "single"
+    }
+    submenuentry "3.3.0 final release kernel" {
+        loader \EFI\linux\bzImage-3.3.0
+        initrd \EFI\linux\initrd-3.3.0.img
+    }
+    submenuentry "boot via ELILO" {
+        loader \EFI\elilo\elilo.efi
+	initrd
+	options
+    }
+}
+
+ +

The main menu item for this entry won't look different with the submenus defined than without them; but if you press the Insert key, you'll see the submenu items:

+ +
Manually defining submenus enables you to customize
+    your boot options.

+ +

The main menu item appears at the top of the list—Run bzImage-3.3.0-rc7 in this example. The three submenus defined in this example's configuration file appear next, enabling you to launch in single-user mode, run the 3.3.0 release kernel, or boot via ELILO, respectively. Submenus also include an item called Return to Main Menu that does just as it says. (Alternatively, you can return to the main menu by pressing the Esc key.)

+ +

This example illustrates some of the things you can do with submenu entries:

+ +
    + +
  • You can add kernel options when booting via the EFI stub loader—to launch single-user mode, to add graphical boot options, or what have you.
  • + +
  • You can change kernel options when booting via the EFI stub loader—to remove graphical boot options, to boot to a different root device, and so on.
  • + +
  • You can change your kernel and/or initial RAM disk when booting via the EFI stub loader.
  • + +
  • You can give users a choice of boot loaders. In this example, the main option boots via the kernel stub loader, but the submenu gives users the chance to boot via ELILO instead. In fact, you could even boot two entirely different OSes from manually-defined submenu entries, although that could be confusing.
  • + +
+ +
+ +

copyright © 2012 by Roderick W. Smith

+ +

This document is licensed under the terms of the GNU Free Documentation License (FDL), version 1.3.

+ +

If you have problems with or comments about this Web page, please e-mail me at rodsmith@rodsbooks.com. Thanks.

+ +

Go to the main rEFInd page

+ +

Learn about methods of booting Linux with rEFInd

+ +

Return to my main Web page.

+ + diff --git a/docs/refind/features.html b/docs/refind/features.html new file mode 100644 index 0000000..6ebadfc --- /dev/null +++ b/docs/refind/features.html @@ -0,0 +1,158 @@ + + + + + + The rEFInd Boot Manager: rEFInd Features + + + + +

The rEFInd Boot Manager:
rEFInd Features

+ +

by Roderick W. Smith, rodsmith@rodsbooks.com

+ +

Originally written: 3/14/2012; last Web page update: 3/23/2012, referencing rEFInd 0.2.2

+ + +

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!

+ + + + + + + + + + + + + + + +
Donate $1.00Donate $2.50Donate $5.00Donate $10.00Donate another value
+ + + + + + +
+ +
+ + + + + + +
+ +
+ + + + + + +
+ +
+ + + + + + +
+ +
+
+ + + + + + + + +Donate with PayPal +
+
+ +
+ +

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 main page.

+ +
+ +

rEFInd is a fork of the rEFIt boot manager. As such, it has many features in common with rEFIt. These include the following:

+ +
    + +
  • Support for both text-mode and graphical operation.
  • + +
  • Auto-detection of EFI and BIOS boot loaders.
  • + +
  • User-configurable graphics and icons—you can set your own background, set new icons, and so on.
  • + +
  • Launch EFI boot loaders or, on Macs, launch BIOS-based boot loaders. (I have yet to get the BIOS-launching feature to work on a UEFI-based PC, but it might work on a model I don't own.)
  • + +
  • Launch options for an EFI shell, disk partitioner, and other optional external components. (See the Installing rEFInd section for information on how to obtain and install these components.)
  • + +
  • Set OS-specific boot options, such as to launch Mac OS X with verbose text-mode debug messages.
  • + +
+ +

I've used rEFIt on a couple of computers for over a year, but I've found that it has some frustrating limitations. It tends to flood the screen with non-functional BIOS boot options, for instance; and it has a number of bugs on UEFI-based systems. I therefore expanded on rEFIt, giving rEFInd features that improve on or go beyond those of rEFIt, such as:

+ +
    + +
  • User-configurable methods of detecting boot loaders: + +
      +
    • Auto-detection of EFI boot loaders, independently on internal hard disks, external hard disks, and optical discs.
    • +
    • Auto-detection of BIOS boot loaders, independently on internal hard disks, external hard disks, and optical discs.
    • +
    • Manually via the configuration file
    • +
    + + You can select which of these methods to use to construct the rEFInd main boot menu. Although rEFIt supports auto-detection, it does not support manual configuration; and rEFIt's options to enable, disable, and prioritize individual boot loader detection methods are primitive compared to those in rEFInd.
  • + +
  • The ability to fine-tune options passed to EFI boot loaders, via manual configuration.
  • + +
  • Proper handling of more OS options than can fit on the screen. (rEFIt displays an empty list in graphical mode when it detects too many OSes.)
  • + +
  • Additional OS icons (all of which are Linux distributions, at least so far). This can make it easier to find a specific distribution in the boot list if you've installed multiple Linux distributions.
  • + +
  • The ability to auto-detect Linux initial RAM disk files and to read Linux kernel options from a linux.conf file. These features support (nearly) automatic handling of Linux kernels with embedded EFI stub loader support (a new feature with Linux 3.3.0).
  • + +
  • Fixes to display problems on many UEFI-based PCs.
  • + +
  • Workarounds to file detection bugs in at least one type of UEFI firmware.
  • + +
  • Improved detection of itself, to keep rEFInd out of its own boot menu.
  • + +
+ +

On the flip side, at least for Mac users, rEFInd comes with less sophisticated Mac installation tools than does rEFIt, in favor of more OS-agnostic packaging. Also, rEFInd doesn't support loading EFI drivers; that job should be done in other ways when using rEFInd.

+ +

If these features sound useful, then read on and try rEFInd. If not, you may need to look elsewhere. My Managing EFI Boot Loaders for Linux page may be useful to you in this case.

+ +
+ +

copyright © 2012 by Roderick W. Smith

+ +

This document is licensed under the terms of the GNU Free Documentation License (FDL), version 1.3.

+ +

If you have problems with or comments about this Web page, please e-mail me at rodsmith@rodsbooks.com. Thanks.

+ +

Go to the main rEFInd page

+ +

Learn how to obtain rEFInd

+ +

Return to my main Web page.

+ + diff --git a/docs/refind/getting.html b/docs/refind/getting.html new file mode 100644 index 0000000..b741db1 --- /dev/null +++ b/docs/refind/getting.html @@ -0,0 +1,146 @@ + + + + + + The rEFInd Boot Manager: Getting rEFInd + + + + +

The rEFInd Boot Manager:
Getting rEFInd

+ +

by Roderick W. Smith, rodsmith@rodsbooks.com

+ +

Originally written: 3/14/2012; last Web page update: 3/23/2012, referencing rEFInd 0.2.2

+ +

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!

+ + + + + + + + + + + + + + + +
Donate $1.00Donate $2.50Donate $5.00Donate $10.00Donate another value
+ + + + + + +
+ +
+ + + + + + +
+ +
+ + + + + + +
+ +
+ + + + + + +
+ +
+
+ + + + + + + + +Donate with PayPal +
+
+ +
+ +

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 main page.

+ +
+ +

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.

+ +

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:

+ +
    + +
  • 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 + 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. 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.
  • + +
+ +

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 download a zip file, you'll need to extract the files with 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.

+ +
+ +

copyright © 2012 by Roderick W. Smith

+ +

This document is licensed under the terms of the GNU Free Documentation License (FDL), version 1.3.

+ +

If you have problems with or comments about this Web page, please e-mail me at rodsmith@rodsbooks.com. Thanks.

+ +

Go to the main rEFInd page

+ +

Learn how to install rEFInd

+ +

Return to my main Web page.

+ + diff --git a/docs/refind/index.html b/docs/refind/index.html new file mode 100644 index 0000000..9d2457b --- /dev/null +++ b/docs/refind/index.html @@ -0,0 +1,186 @@ + + + + + + The rEFInd Boot Manager + + + + +

The rEFInd Boot Manager

+ +

by Roderick W. Smith, rodsmith@rodsbooks.com

+ +

Originally written: 3/14/2012; last Web page update: 3/23/2012, referencing rEFInd 0.2.2

+ + +

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!

+ + + + + + + + + + + + + + + +
Donate $1.00Donate $2.50Donate $5.00Donate $10.00Donate another value
+ + + + + + +
+ +
+ + + + + + +
+ +
+ + + + + + +
+ +
+ + + + + + +
+ +
+
+ + + + + + + + +Donate with PayPal +
+
+ +
+ +

Introduction

+ +

This page describes rEFInd, my fork of the rEFIt boot manager for computers based on the Extensible Firmware Interface (EFI) and Unified EFI (UEFI). Like rEFIt, rEFInd is a boot manager, meaning that it presents a menu of options to the user when the computer first starts up, as shown below. rEFInd is not a boot loader, which is a program that loads an OS kernel and hands off control to it. Many popular boot managers, such as the Grand Unified Bootloader (GRUB), are also boot loaders, which can blur the distinction in many users' minds. rEFInd, though, relies on a separate boot loader to finish the handoff to an OS; it just presents a pretty menu and gives you options for how to proceed prior to booting an OS. All EFI-capable OSes include boot loaders, so this limitation isn't a problem. If you're using Linux, you should be aware that several EFI boot loaders are available, so choosing between them can be a challenge. See my Web page on this topic for more information.

+ +
rEFInd presents a GUI menu for selecting your boot OS. +
+ +

In theory, EFI implementations should provide boot managers. Unfortunately, in practice these boot managers are often so poor as to be useless. The worst I've personally encountered is on Gigabyte's Hybrid EFI, which provides you with no boot options whatsoever, beyond choosing the boot device (hard disk vs. optical disc, for instance). I've heard of others that are just as bad. For this reason, a good EFI boot manager—either standalone or as part of a boot loader—is a practical necessity for multi-booting on an EFI computer. That's where rEFIt and rEFInd come into play.

+ +

I decided to fork the earlier rEFIt project because, although rEFIt is a useful program, it's got several important limitations, such as poor control over the boot loader detection process and an ability to display at most a handful of boot loader entries on its main screen. I fixed a few of these bugs and released a patched version here; however, rEFIt's author, Christoph Pfisterer, didn't respond to my e-mails, and the latest official version of rEFIt, 0.14, was released in March of 2010. Thus, it appears that rEFIt has been abandoned. Forking the project to give rEFIt new features seemed like the thing to do.

+ +

The rEFIt Web page has a distinct Mac bias, and the provided binaries work only on Macs because they're 32-/64-bit "fat" binaries, which Macs can handle but UEFI-based PCs can't. rEFIt can be recompiled to work on UEFI-based PCs, but prebuilt binaries for such systems are relatively rare. Although I do own a Mac Mini, my interest lies more on the side of standard PC hardware, and hence with UEFI. My development platform is Linux, and my installation instructions and binaries are much more platform-neutral. I'm aware that many Mac users will consider this a step backward, but I ask their indulgence; I only have so many hours a day to work on this project, and I prefer to devote my efforts to improvements that will benefit all rEFInd users, at least initially.

+ +

As already noted, rEFInd is a boot manager for EFI and UEFI computers. (I use "EFI" to refer to either version unless the distinction is important.) You're likely to benefit from it on computers that boot multiple OSes, such as two or more of Linux, Mac OS X, and Windows. You will not find rEFInd useful on older BIOS-based computers. Prior to mid-2011, few computers outside of Intel-based Macs used EFI; but starting in 2011, computer manufacturers began adopting UEFI in droves, so most computers bought since then use EFI. Even so, many modern PCs support both EFI-style booting and BIOS-style booting, the latter via a BIOS compatibility mode that's known as the Compatibility Support Module (CSM). Thus, you may be using BIOS-style booting on an EFI-based computer. If you're unsure which boot method your computer uses, check the first of the below subsections.

+ +

Subsequent sections of this document are on separate pages:

+ + + +

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.

+ + +

References and Additional Information

+
+ + + +
+ +

copyright © 2012 by Roderick W. Smith

+ +

This document is licensed under the terms of the GNU Free Documentation License (FDL), version 1.3.

+ +

If you have problems with or comments about this Web page, please e-mail me at rodsmith@rodsbooks.com. Thanks.

+ +

Return to my main Web page.

+ + diff --git a/docs/refind/installing.html b/docs/refind/installing.html new file mode 100644 index 0000000..f36d85b --- /dev/null +++ b/docs/refind/installing.html @@ -0,0 +1,306 @@ + + + + + + The rEFInd Boot Manager: Installing rEFInd + + + + +

The rEFInd Boot Manager:
Installing rEFInd

+ +

by Roderick W. Smith, rodsmith@rodsbooks.com

+ +

Originally written: 3/14/2012; last Web page update: 3/23/2012, referencing rEFInd 0.2.2

+ + +

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!

+ + + + + + + + + + + + + + + +
Donate $1.00Donate $2.50Donate $5.00Donate $10.00Donate another value
+ + + + + + +
+ +
+ + + + + + +
+ +
+ + + + + + +
+ +
+ + + + + + +
+ +
+
+ + + + + + + + +Donate with PayPal +
+
+ +
+ +

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 main page.

+ +
+ + + +

Once you've uncompressed a rEFInd binary zip file, you can copy the entire refind directory into your EFI System Partition's (ESP's) EFI directory on UEFI-based PCs, so that rEFInd resides in EFI/refind. If you've tried rEFInd using a CD-R image file, you can copy the files from the EFI/refind directory on the CD to create an equivalent directory on the ESP. To avoid confusion, though, you should delete the rEFInd binary file for the CPU type your computer does not use. To the best of my knowledge, all UEFI-based PCs use 64-bit CPUs, so you should keep the refind_x64.efi binary and delete the refind_ia32.efi binary. Most Intel-based Macs also have 64-bit EFI implementations, so you should do the same thing; but very early Intel-based Macs have 32-bit EFIs (and sometimes 32-bit CPUs), which require the refind_ia32.efi file. You can determine whether your Mac needs the x86-64 or IA32 build by typing the following command in a Mac Terminal window:

+ +
+$ ioreg -l -p IODeviceTree | grep firmware-abi
+
+ +

The result should read either EFI32 or EFI64, indicating that you should use the refind_ia32.efi or refind_x64.efi binary, respectively.

+ +

Of course, before you can install the files, you must be able to access the ESP. The details of this task vary from one OS to another. If you have a choice, I recommend using Linux for rEFInd installation on UEFI PCs and OS X on Macs. (On Macs, you can optionally use OS X's main partition rather than the ESP for this purpose.) Windows provides relatively primitive tools for accessing the ESP and manipulating the EFI's boot list. I also describe some options for naming rEFInd that may be useful on some systems. Finally, I describe how to install some extra tools that you may find useful but that are not included with rEFInd.

+ + +

Installing rEFInd Using Linux

+
+ +

Accessing the ESP is easiest from Linux: The ESP is usually mounted at /boot/efi. You can verify that this is the case by using the df command:

+ +
+$ df /boot/efi
+Filesystem     1K-blocks  Used Available Use% Mounted on
+/dev/sda1         191284 16604    174681   9% /boot/efi
+
+ +

This example shows that /dev/sda1 is mounted at /boot/efi, which is a typical configuration. (The ESP can be on another disk or partition, but /dev/sda1 is the most common place for an ESP.) If your output shows /boot or / under the Mounted on column, then your ESP isn't mounted. If you get a df: `/boot/efi': No such file or directory error message, then the /boot/efi directory doesn't even exist. In such cases, you may need to jump through some extra hoops, as described on my EFI Boot Loader Installation page.

+ +

Assuming the ESP is mounted at /boot/efi, you can install the rEFInd files as follows (you must be root to issue these commands, or precede each of them with sudo):

+ +
    + +
  1. Type cp -r refind /boot/efi/EFI/ from the refind-version directory in which the refind directory exists. This copies all the files that rEFInd needs to work.
  2. + +
  3. Type cd /boot/efi/EFI/refind to change into rEFInd's new directory on the ESP.
  4. + +
  5. Type rm refind_ia32.efi to remove the IA32 binary if you're using an x86-64 (64-bit) system; or type rm refind_x64.efi to remove the x86-64 binary if you're using an x86 (32-bit) system. You can optionally rename the binary you keep as refind.efi, but this isn't required.
  6. + +
  7. Rename the configuration file by typing mv refind.conf-sample refind.conf. Consult the Editing the rEFInd Configuration File page for information on how to adjust your options.
  8. + + + + +
  9. On a UEFI-based system, type efibootmgr -c -l \\EFI\\refind\\refind_x64.efi -L rEFInd to add rEFInd to your EFI's list of available boot loaders, which it stores in NVRAM. (Adjust the path to the binary as required if you install somewhere else.) You may need to install this program on some systems; it's a standard part of most distributions' repositories.
  10. +
    + +
  11. If other boot loaders are already installed, you can use efibootmgr to adjust their boot order. For instance, efibootmgr -o 3,7,2 sets the firmware to try boot loader #3 first, followed by #7, followed by #2. (The program should have displayed a list of boot loaders when you added yours in the preceding step.) Place rEFInd's number first to set it as the default boot program.
  12. + +
+ +

Note the use of doubled-up backslashes (\\) rather than forward slashes (/) in the directory separators when using efibootmgr. This command will work on most systems that are already booted into EFI mode; however, it won't work if you're booted in BIOS mode. You may also need to add options if your ESP is in some unusual location or if your system is unusual in some way. Consult the efibootmgr man page if you need help.

+ +

On some systems, efibootmgr won't do what you expect. On such systems, you may have better luck renaming the rEFInd files, as described in the Alternative Naming Options section.

+ + +

Installing rEFInd Using Mac OS X

+
+ + + +

The procedure for installing rEFInd on a Mac is similar to that for installing it under Linux, except that you can install it to the OS X's system directory rather than to the ESP, and you must use the bless utility rather than efibootmgr. To be precise, you should follow these steps:

+ +
    + +
  1. Open a Terminal window in which you'll type the following commands.
  2. + +
  3. If you want to install rEFInd on your ESP, you must first mount it. You can do this by typing mkdir /Volumes/esp followed by sudo mount_msdos /dev/disk0s1 /Volumes/esp. Note that this step is optional. Also, you may need to change /dev/disk0s1 to something else if your ESP is at an unusual location. Use a tool such as my GPT fdisk (gdisk) to examine your partition table to find your ESP if necessary.
  4. + +
  5. Type sudo mkdir -p /efi/refind to create a suitable directory for rEFInd. If you want to place rEFInd on your ESP, you should adjust the pathname appropriately, as in /Volumes/esp/efi/refind if you mounted your ESP as described in the previous step. Alternatively, you can use the Finder to create the directory.
  6. + +
  7. Copy the files in the refind subdirectory of the rEFInd binary package to the like-named directory you've just created. You can do this in the Finder or by typing sudo cp -r refind/* /efi/refind/ in your Terminal window after changing into the rEFInd package's main directory.
  8. + +
  9. Remove the file for the version of rEFInd you're not using, as in sudo rm /efi/refind/refind_ia32.efi on a Mac with a 64-bit EFI or sudo rm /efi/refind/refind_x64.efi on a Mac with a 32-bit EFI.
  10. + +
  11. If this is your first installation, type sudo mv /efi/refind/refind.conf-sample /efi/refind/refind.conf (adjusting the path as necessary) to rename the sample configuration file so that it will serve as a real configuration file. (Again, you can do this with the Finder, if you prefer.)
  12. + +
  13. Type sudo bless --setBoot --folder /efi/refind --file /efi/refind/refind_x64.efi to tell the computer to use rEFInd as the primary boot program. (Adjust the path and filename as necessary if you're placing rEFInd somewhere else or using the 32-bit version.) If you're installing rEFInd to an ESP (or to any partition other than the OS X system partition), you may need to add --mount /Volumes/mounpoint to the command, where /Volumes/mounpoint is the location where you've mounted the partition.
  14. + +
+ +

When you reboot, your Mac should bring up the rEFInd menu, and should continue to do so thereafter. If you make changes that break this association, you can re-run the bless command (if necessary, restoring the rEFInd files first). This might be necessary after installing system updates from Apple.

+ +

If you're replacing rEFIt, you may discover that rEFInd works on the first boot, but the system reverts back to rEFIt or a direct boot to OS X on the second boot. To fix this problem, you can remove the rEFItBlesser program, which is located at /Library/StartupItems/rEFItBlesser. This program attempts to keep rEFIt set as the default boot loader, but it also has the purpose of protecting the computer from launching the wrong OS after waking from sleep. If you want that protection, my suggestion is to install rEFIt and rEFItBlesser and then replace the refit.efi file with refind_x64.efi or refind_ia32.efi (renaming it to refit.efi. Used in this way, rEFInd will still look for its own configuration file, refind.conf, so you'll need to move it but not rename it. If you don't move the icons from the rEFInd package, your icons will continue to look like rEFIt icons, and you'll be missing the new icons for specific Linux distributions that rEFInd provides.

+ +

If you want to remove rEFInd from your system, you can delete its files. The Mac will revert to booting using whatever standard boot loader it can find. Alternatively, you can use bless to bless another EFI boot loader. The GUI Startup Disk utility in System Preferences provides a simplified interface that enables you to select which OS X installation to boot, but it doesn't look for non-Apple boot loaders, so you can't use it to enable rEFInd.

+ + +

Installing rEFInd Using Windows

+
+ +

To install rEFInd under Windows, you must first find a way to access the ESP, which Windows normally hides from view. One way to accomplish this goal, and to proceed forward once the ESP is accessible, is as follows:

+ +
    + +
  1. Locate Command Prompt in the Start menu, right-click it, and select Run as Administrator. This action opens a Command Prompt window with administrative privileges.
  2. + +
  3. Type mountvol S: /S in the Administrator Command Prompt window. This makes the ESP accessible as drive S: from that window. (You can use a drive identifier other than S: if you like.)
  4. + +
  5. Change into the main rEFInd package directory, so that the refind subdirectory is visible when you type dir.
  6. + +
  7. Type xcopy /E refind S:\EFI\refind\ to copy the refind directory tree to the ESP's EFI directory. If you omit the trailing backslash from this command, xcopy will ask if you want to create the refind directory. Tell it to do so.
  8. + +
  9. Type cd S: to change to the ESP.
  10. + +
  11. Type cd EFI\refind to change into the refind subdirectory
  12. + +
  13. Type del refind_ia32.efi to delete the unused 32-bit version of rEFInd. (Windows only supports EFI boots on 64-bit EFI implementations and in 64-bit versions of Windows.)
  14. + +
  15. Type rename refind.conf-sample refind.conf to rename rEFInd's configuration file.
  16. + +
+ +

Unfortunately, I know of no Windows tool that's equivalent to efibootmgr under Linux or bless under OS X. (Such a tool must exist, but I don't know what it is. If you do, please e-mail me a pointer!) This can make adding rEFInd to your system a bit tricky, particularly if your firmware provides few boot options. In the best of all possible worlds, you'll be able to use your firmware's user interface to add rEFInd to your firmware's own boot manager; however, far too many EFI implementations lack even this modest capability. If you're stuck in this boat, you have several options, such as:

+ +
    + +
  • You can rename files on the ESP. as described in the next section, Alternative Naming Options.
  • + +
  • You can boot from an optical disc into an emergency OS to do the job. Ubuntu, for instance, provides an EFI-bootable installer with a "try before installation" mode. You'll need to type sudo apt-get install efibootmgr to install efibootmgr, but you can then use that program as described earlier. (If you're using Ubuntu, you'll need to precede the command with sudo.
  • + +
  • You may be able to use rEFInd's bootable CD image to use rEFInd to boot an OS that's been installed but rendered inoperable because of changes to your boot order. You can then use efibootmgr, bless, or some other tool to restore rEFInd as the default boot loader.
  • + +
+ + +

Alternative Naming Options

+
+ +

Some EFI implementations do a poor job of honoring the boot options set via Linux's efibootmgr or other tools. You may also lack access to such utilities, such as if you must install rEFInd in Windows. In such cases, you may need to change the boot loader's name so that the EFI will see it as the default boot loader. rEFInd should then boot when your NVRAM lacks information on specific boot loaders to use. To do this, follow these steps:

+ +
    + +
  1. Access your ESP and install rEFInd to it, as described in earlier sections.
  2. + +
  3. Look for an existing directory called EFI/BOOT or EFI/Microsoft/BOOT. If neither of these directories exist, skip the next step. (Note that FAT is case-insensitive, so the name may vary in case.)
  4. + +
  5. Rename the existing directory to something else. For EFI/BOOT, try renaming it to EFI/Oldboot. For EFI/Microsoft/BOOT, rename the Microsoft directory—say, to MS. Thus, you'll have EFI/MS and its contents, including EFI/MS/BOOT.
  6. + +
  7. Rename/move your EFI/refind directory to EFI/BOOT (or EFI/Microsoft/BOOT, if that directory existed and you've renamed it—but you'll first need to create a new EFI/Microsoft directory).
  8. + +
  9. Rename EFI/BOOT/refind_x64.efi to the name of the boot loader it's replacing—it should become EFI/BOOT/bootx64.efi or EFI/Microsoft/BOOT/bootmgfw.efi.
  10. + +
+ +

When you reboot, rEFInd should come up. With any luck, it will detect your old boot loader as an option, if one was installed before.

+ + +

Installing Additional Components

+
+ +

rEFInd includes the ability to launch any EFI program; however, rEFInd detects only certain programs. These include boot loaders in traditional locations and a handful of other programs. To launch these other programs, you must download and install them separately from rEFInd:

+ +
    + +
  • shell.efi—This + file, placed in the ESP's efi/tools directory, adds the + ability to launch a text-mode EFI shell from rEFInd. Note that the + download link is to a 64-bit binary that must be renamed before rEFInd + will recognize it.
  • + +
  • gptsync.efi—This program creates a hybrid MBR from + your regular GPT disk. A hybrid MBR is a dangerous hack that enables + Windows and OS X to coexist on a Macintosh disk. If you're using a + UEFI-based PC, a hybrid MBR will be useless at best, so you shouldn't + create one, and it's safest to not install gptsync.efi. If + you're using a hybrid MBR to enable dual-booting Windows and OS X on a + Mac, though, placing this program file in the ESP's or Mac boot + partition's efi/tools directory will enable you to regenerate + your hybrid MBR should some other tool convert the MBR to a standard + protective MBR. You can obtain the file from the original rEFIt package.
  • + +
  • diskpart.efi—This is a disk partitioning utility that's + similar to one of the same name in Microsoft Windows. You can obtain it + from Intel's + site as part of a package with a few other tools. Place it in the + efi/tools subdirectory of the ESP and rEFInd will detect it + and give you the option to use it.
  • + +
  • Rescue Linux—If the file efi/rescue/elilo.efi + exists, it will be given a special entry in the boot list. The intent + seems to be to launch Linux in a rescue mode, but I've not gotten it to + work.
  • + +
+ +

I've seen links to other versions of these tools from time to time on the Web, so if you try one of these programs and it crashes or behaves strangely, try performing a Web search; you may turn up something that works better for you than the one to which I've linked.

+ +
+ +

copyright © 2012 by Roderick W. Smith

+ +

This document is licensed under the terms of the GNU Free Documentation License (FDL), version 1.3.

+ +

If you have problems with or comments about this Web page, please e-mail me at rodsmith@rodsbooks.com. Thanks.

+ +

Go to the main rEFInd page

+ +

Learn how to use rEFInd

+ +

Return to my main Web page.

+ + diff --git a/docs/refind/linux.html b/docs/refind/linux.html new file mode 100644 index 0000000..a0023ef --- /dev/null +++ b/docs/refind/linux.html @@ -0,0 +1,195 @@ + + + + + + The rEFInd Boot Manager: Methods of Booting Linux + + + + +

The rEFInd Boot Manager:
Methods of Booting Linux

+ +

by Roderick W. Smith, rodsmith@rodsbooks.com

+ +

Originally written: 3/19/2012; last Web page update: 3/23/2012, referencing rEFInd 0.2.2

+ + +

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!

+ + + + + + + + + + + + + + + +
Donate $1.00Donate $2.50Donate $5.00Donate $10.00Donate another value
+ + + + + + +
+ +
+ + + + + + +
+ +
+ + + + + + +
+ +
+ + + + + + +
+ +
+
+ + + + + + + + +Donate with PayPal +
+
+ +
+ +

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 main page.

+ +
+ +

Windows and Mac OS X both provide relatively simple EFI boot loader programs. Launch them, and if they're launched from the correct locations and have the correct files in place, they'll boot their respective OSes. This makes rEFInd's job easy; it just locates the boot loader program files and runs them.

+ +

Under Linux, by contrast, things can get complicated. As detailed on my Managing EFI Boot Loaders for Linux page, several different EFI boot loaders for Linux exist, and all of them require configuration. If you're lucky, your distribution will have set up a Linux boot loader in a sensible way, in which case rEFInd should detect it and it will work as easily as a Windows or Mac OS X boot loader. If you're not lucky, though, you may need to configure it further. rEFInd offers options to help out with this task. Specifically, you can use a traditional Linux boot loader or configure an EFI stub loader.

+ +

Using a Traditional Linux Boot Loader

+ +

I consider ELILO, GRUB Legacy, and GRUB 2 to be traditional Linux boot loaders. These programs all exist as EFI programs that are independent of the Linux kernel, but that can load a kernel and hand off control to it. All three programs have their own configuration files that reside in the same directory as the boot loader itself (or optionally elsewhere, in the case of GRUB 2).

+ +

Ordinarily, rEFInd will detect these traditional boot loaders and provide main menu entries for them. If the boot loader exists in a directory with a name that matches a Linux distribution's icon filename, you'll automatically get a distribution-specific icon to refer to the boot loader.

+ +

If you prefer, you can disable automatic scanning and create an entry in refind.conf for your distribution, as described on the Configuring the Boot Manager page. This method is harder to set up but can be preferable if you want to customize your options.

+ +

Using the EFI Stub Loader

+ +

The Linux EFI stub loader is a way to turn a Linux kernel into an EFI application. In a sense, the kernel becomes its own boot loader. This approach to booting Linux is very elegant in some ways, but as described on the page to which I just linked, it has its disadvantages, too. One challenge to booting in this way is that modern Linux installations typically require that the kernel be passed a number of options at boot time. These tell the kernel where the Linux root (/) filesystem is, where the initial RAM disk is, and so on. Without these options, Linux won't boot. These options are impossible for a generic boot loader to guess without a little help. For this reason, rEFIt, rEFInd's parent program, could not boot a Linux kernel with EFI stub support. rEFInd, however, goes a little further....

+ +

With all versions of rEFInd, you can create manual boot loader stanzas in the refind.conf file to identify a Linux kernel and to pass it all the options it needs. This approach is effective and flexible, but it requires editing a single configuration file. If a computer boots two different Linux distributions, and if both were to support rEFInd, problems might arise as each one tries to modify its own rEFInd configuration; or the one that controls rEFInd might set inappropriate options for another distribution. This is a problem that's been a minor annoyance for years under BIOS, since the same potential for poor configuration applies to LILO, GRUB Legacy, and GRUB 2 on BIOS. The most reliable solution there is to chainload one boot loader to another. The same solution is possible under EFI, but rEFInd offers another possibility.

+ +

rEFInd 0.2.1 and later supports semi-automatic Linux EFI stub loader detection. This feature works as part of the standard boot loader scan operation, but it extends it as follows:

+ +
    + +
  1. rEFInd looks for boot loaders whose names include the strings bzImage or vmlinuz and that end in .efi. For instance, bzImage-3.3.0.efi or vmlinuz-3.3.0-fc17.efi would match, and trigger subsequent steps in this procedure. Note that to use this system, you must give your kernel file a .efi extension, at least on the ESP!
  2. + + + +
  3. rEFInd looks for an initial RAM disk in the same directory as the kernel file. A matching initial RAM disk has a name that begins with init and that includes the same version string as the kernel. The version string is defined as the part of the filename from the first digit to the last digit, inclusive. Note that the version string can include non-digits. For instance, the version string for bzImage-3.3.0.efi is 3.3.0, which matches initramfs-3.3.0.bz; and vmlinuz-3.3.0-fc17.efi's version string is 3.3.0-fc17, which matches initrd-3.3.0-fc17.img. Many other matches are possible. If an initial RAM disk is identified, rEFInd passes a suitable initrd= option to the kernel when it boots.
  4. + +
  5. rEFInd looks for a file called linux.conf in the same directory as the kernel file. This file is a practical requirement for booting from an auto-detected kernel. It consists of a series of lines, each of which consists of a label followed by a series of kernel options. The first line sets default options, and subsequent lines set options that are accessible from the main menu tag's submenu screen.
  6. + +
+ +

The intent of this system is that distribution maintainers can place their kernels, initial RAM disks, and a linux.conf file in their own subdirectory on the ESP. rEFInd will detect their kernels and create one main menu entry for each kernel. Each entry will implement as many options as there are lines in the linux.conf file. In this way, two or more distributions can each maintain their boot loader entries, without being too concerned for who maintains rEFInd as a whole.

+ +

As an example, consider the following file configuration:

+ +
+$ ls -l /boot/efi/EFI/ubuntu/
+total 17943
+-rwxr-xr-x 1 root root  4781632 2012-03-18 12:01 bzImage-3.3.0.efi
+-rwxr-xr-x 1 root root   131072 2011-10-14 04:10 grubx64.EFI
+-rwxr-xr-x 1 root root 13459936 2012-03-18 12:02 initrd.img-3.3.0
+-rwxr-xr-x 1 root root      266 2012-03-18 19:39 linux.conf
+
+ +

When rEFInd scans this directory, it will find two EFI boot loaders in EFI/ubuntu: grubx64.EFI and bzImage-3.3.0.efi. rEFInd will create two main-menu tags for these two loaders, one of which will launch Ubuntu's standard GRUB and the other of which will launch the 3.3.0 kernel file directly. The linux.conf file contains a list of labels and options:

+ +
+"Boot with defaults"         "root=/dev/sda3 ro quiet splash vt.handoff=7"
+"Boot into single-user mode" "root=UUID=1cd95082-bce0-494c-a290-d2e642dd82b7 ro single"
+"Boot without graphics"      "root=UUID=1cd95082-bce0-494c-a290-d2e642dd82b7 ro"
+# "Boot alternate install"   "root=/dev/sdb9 ro quiet splash vt.handoff=7"
+
+ +

Ordinarily, both fields in this file must be enclosed in quotes. You can include as much white space as you like between options. You can also place comments in the file, or remove an option by commenting it out with a leading hash mark (#), as in the fourth line in this example.

+ +

In the preceding example, the first line sets the options that rEFInd passes to the kernel by default (along with the name of the initrd.img-3.3.0 file, since its version string matches that of the kernel). The next two lines set options that you can obtain by pressing Insert, F2, or + on the main menu, as shown here:

+ +
rEFInd can load Linux boot options from
+    a linux.conf file in the Linux kernel's directory.

+ +

Note that the first entry shown here takes a name that's set in rEFInd rather than the one specified in the linux.conf file. The remaining names match those specified in the file, though.

+ +

From a user's perspective, the submenus defined in this way work just like submenus defined via the submenuentry options in refind.conf, or like the submenus that rEFInd creates automatically for Mac OS X or ELILO. There are, however, limitations in what you can accomplish with this method:

+ +
    + +
  • Your kernels must be compiled with EFI stub loader support.
  • + +
  • You can't set an option to boot via a different boot loader, such as ELILO or GRUB; all the options apply to a single boot loader—that is, a single kernel.
  • + +
  • If an installation includes two or more kernel files, each one receives its own main-menu entry; you can't combine them together in one menu item. This is essentially a corollary of the preceding limitation. The result can be an overburdened main menu if your system has many kernels.
  • + +
  • All the kernels in a given directory use the same linux.conf file. If you need to set different options for different kernels, you'll need to place those kernels in different directories.
  • + +
  • You must place your kernels in a directory other than the one that holds the main rEFInd .efi file. This is because rEFInd does not scan its own directory for boot loaders.
  • + +
+ +

On the whole, this method of configuration has a lot going for it. For distribution maintainers, if you place your Linux kernel files (with EFI stub support) on the ESP, with suitable filenames, matching initial RAM disk files, and a linux.conf file, then any rEFInd 0.2.1 or later installation should detect your files, even if the user installs another distribution with another rEFInd that takes over from yours. (If the user, or this other rEFInd installation, disables auto-detection, this won't work.)

+ +

For end users, this method is simpler than maintaining manual configurations in refind.conf (or equivalents for ELILO or GRUB). To install a new kernel, you need only copy it and its initial RAM disk, under suitable names, to a scanned directory on the ESP. There's no need to touch any configuration file, provided you've already set up linux.conf in your kernel's directory. You will, however, have to adjust linux.conf if you make certain changes, such as if your root directory identifier changes.

+ +
+ +

copyright © 2012 by Roderick W. Smith

+ +

This document is licensed under the terms of the GNU Free Documentation License (FDL), version 1.3.

+ +

If you have problems with or comments about this Web page, please e-mail me at rodsmith@rodsbooks.com. Thanks.

+ +

Go to the main rEFInd page

+ +

Learn about rEFInd's history

+ +

Return to my main Web page.

+ + diff --git a/docs/refind/manual-submenu.png b/docs/refind/manual-submenu.png new file mode 100644 index 0000000000000000000000000000000000000000..7cf756e82fc00f304425fc01fca50effcc09547b GIT binary patch literal 20152 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

&OlYiyo$Lq$&$Cm#dVR?t##6h;N%lYq0 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�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 VHab(#6@mZ&002ovPDHLkV1j5E#lrvq literal 0 HcmV?d00001 diff --git a/docs/refind/refind.png b/docs/refind/refind.png new file mode 100644 index 0000000000000000000000000000000000000000..230dbb20be30792a8d080a370399fe9852f2d74e GIT binary patch literal 91382 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 literal 0 HcmV?d00001 diff --git a/docs/refind/revisions.html b/docs/refind/revisions.html new file mode 100644 index 0000000..be8214d --- /dev/null +++ b/docs/refind/revisions.html @@ -0,0 +1,118 @@ + + + + + + The rEFInd Boot Manager: Revisions + + + + +

The rEFInd Boot Manager:
Revisions

+ +

by Roderick W. Smith, rodsmith@rodsbooks.com

+ +

Last Web page update: 3/23/2012

+ + +

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!

+ + + + + + + + + + + + + + + +
Donate $1.00Donate $2.50Donate $5.00Donate $10.00Donate another value
+ + + + + + +
+ +
+ + + + + + +
+ +
+ + + + + + +
+ +
+ + + + + + +
+ +
+
+ + + + + + + + +Donate with PayPal +
+
+ +
+ +

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 main page.

+ +
+ +

The following summarizes changes in rEFInd's public releases:

+ +
    + +
  • 0.2.2 (3/23/2012)—This version fixes three bugs: One caused submenus to not appear on systems with screens of 800x600 or smaller; another caused rEFInd to hang when boot loader names were too long; and the third caused the program to fail when Linux kernels and their initial RAM disk files lacked version numbers.
  • + +
  • 0.2.1 (3/19/2012)—This version adds the ability to auto-scan Linux kernels with EFI stub loader support, provided a suitable linux.conf file exists in the kernel's directory. It also adds support for manual specification of submenus in refind.conf.
  • + +
  • 0.2.0 (3/14/2012)—This is the program's initial public release. It's based on rEFIt 0.14 plus a large number of patches taken from Debian's Linux-compilable rEFIt package. I then added UEFI-specific fixes, support for OS definition stanzas in the configuration file, a scrolling icon list on the main menu, and other minor improvements. This release has quite a few known bugs and limitations.
  • + +
+ +
+ +

copyright © 2012 by Roderick W. Smith

+ +

This document is licensed under the terms of the GNU Free Documentation License (FDL), version 1.3.

+ +

If you have problems with or comments about this Web page, please e-mail me at rodsmith@rodsbooks.com. Thanks.

+ +

Go to the main rEFInd page

+ +

Learn about problems with and the future of rEFInd

+ +

Return to my main Web page.

+ + diff --git a/docs/refind/submenu.png b/docs/refind/submenu.png new file mode 100644 index 0000000000000000000000000000000000000000..8d9d3fcd018365efcef98bf908bc8a45afd39540 GIT binary patch literal 19145 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 v|8 + + + + + The rEFInd Boot Manager: The Future of rEFInd + + + + +

The rEFInd Boot Manager:
The Future of rEFInd

+ +

by Roderick W. Smith, rodsmith@rodsbooks.com

+ +

Originally written: 3/14/2012; last Web page update: 3/23/2012, referencing rEFInd 0.2.2

+ + +

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!

+ + + + + + + + + + + + + + + +
Donate $1.00Donate $2.50Donate $5.00Donate $10.00Donate another value
+ + + + + + +
+ +
+ + + + + + +
+ +
+ + + + + + +
+ +
+ + + + + + +
+ +
+
+ + + + + + + + +Donate with PayPal +
+
+ +
+ +

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 main page.

+ +
+ +

rEFInd is far from perfect. It's based on rEFIt, which has an list of active bugs on its project page on Sourceforge. I have not studied this bug list in detail for rEFInd's first release, although I've probably fixed a few of those bugs because I encountered them myself. Other bugs I may never fix because I lack the necessary hardware for testing.

+ +

This page exists to document some of rEFInd's known bugs and limitations, as well as features I hope to add in the future. Some of the items on this list are things that you may be able to help with, so if you'd like to contribute, feel free to drop me a line!

+ +

Without further ado, then, and in no particular order:

+ +
    + +
  • Testing! rEFIt was complex enough that changes such as the ones I've made have the potential to disrupt the program's operation in unexpected ways. I can only test on a handful of systems with a limited number of configurations. Therefore, if you try rEFInd and run into bugs, please report them to me!
  • + +
  • I have little talent with graphics manipulation programs, so rEFInd's boot logo, such as it is, is pretty weak. If you have artistic talent and would like to create a rEFInd logo, please feel free to send it to me. I won't make any final decision about changes until at least June 30 of 2012.
  • + +
  • rEFIt's original design, and hence rEFInd's design, enables easy +theming by replacing icon files. If you'd like to design a new theme for +rEFInd, feel free to submit it. I might or might not replace the icons it +uses now (most of which come from the Oxygen Icons package), but I may +provide a way to make selecting a theme from one of several installed +themes easy, and provide links to themes on this Web site (or even host +them on the project's Sourceforge page). Note that rEFInd currently +supports only BMP format and ICNS format graphics files, and the former +aren't very useful for icons because they lack transparency support. ICNS +is an Apple format, and many Mac tools support it. In Linux, you can +convert PNG images to ICNS format by using the libicns library's png2icns +program. I'm not sure what you'd use in Windows to create ICNS files.
  • + +
  • The code could be more flexible in its handling of the sizes of various graphical elements, and particularly drawn text. Prior to version 0.2.2, submenu text was invisible on UEFI-based PCs with 800x600 and smaller displays because of an inability to properly crop the graphics fields that hold the text. With version 0.2.2, I've put a band-aid on this problem by reducing the field size so that it now works on 800x600 displays, but smaller displays still suffer from this problem. This is just an example of the inflexibility of certain layout issues within rEFInd.
  • + +
  • I want to be able to specify the volume on which a boot loader resides in refind.conf. (As it is, manually-defined options can only launch boot loader files on the same volume as rEFInd.)
  • + +
  • It would be useful to be able to specify paths to boot loaders and/or initial RAM disks relative to the rEFInd directory (or the boot loader's directory, in the case of initrds).
  • + +
  • I don't like the disable and hideui options in refind.conf. I'd like to replace them with a positive option listing for utilities, similar to scanfor (which in fact replaces other "hide" options in rEFIt).
  • + +
  • There's currently no way to create a manual boot stanza for a BIOS-booted OS. This isn't a big priority for me personally, but I can see how it could be for some people.
  • + +
  • The Page Up and Page Down keys work in a rather strange way—a result of an admittedly quick fix on my part to a problem with a data structure that makes implementation of scrolling harder than it ought to be.
  • + +
  • I'd like to find a way to enable users to enter customizations for boot options and then save them to the refind.conf file.
  • + +
  • It should be possible to override specific auto-detected boot loader settings—say, to disable one specific boot loader or change its icon.
  • + +
  • A way to read boot options set via efibootmgr, bless, or similar options from NVRAM to add to the boot set would be useful.
  • + +
  • A way to examine and change the NVRAM settings could be useful. This would enable a CD-based boot of rEFInd to fix a broken disk boot. Perhaps this could be done via a separate tool that could be launched much like the shell or gptsync.
  • + +
  • I'd like to find a way to get rEFInd to launch BIOS boot loaders on UEFI-based systems. This option currently works only on Macs—or at least, I've not gotten it to work on any of my UEFI-based PCs.
  • + +
  • I'd like to find a way to have rEFInd re-scan removable media when they're inserted.
  • + +
  • The code is in need of review to search for memory leaks and similar problems.

    + +
+ +
+ +

copyright © 2012 by Roderick W. Smith

+ +

This document is licensed under the terms of the GNU Free Documentation License (FDL), version 1.3.

+ +

If you have problems with or comments about this Web page, please e-mail me at rodsmith@rodsbooks.com. Thanks.

+ +

Go to the main rEFInd page

+ +

Learn about problems with and the future of rEFInd

+ +

Return to my main Web page.

+ + diff --git a/docs/refind/using.html b/docs/refind/using.html new file mode 100644 index 0000000..54794e4 --- /dev/null +++ b/docs/refind/using.html @@ -0,0 +1,232 @@ + + + + + + The rEFInd Boot Manager: Using rEFInd + + + + +

The rEFInd Boot Manager:
Using rEFInd

+ +

by Roderick W. Smith, rodsmith@rodsbooks.com

+ +

Originally written: 3/14/2012; last Web page update: 3/23/2012, referencing rEFInd 0.2.2

+ + +

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!

+ + + + + + + + + + + + + + + +
Donate $1.00Donate $2.50Donate $5.00Donate $10.00Donate another value
+ + + + + + +
+ +
+ + + + + + +
+ +
+ + + + + + +
+ +
+ + + + + + +
+ +
+
+ + + + + + + + +Donate with PayPal +
+
+ +
+ +

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 main page.

+ +
+ +

Using Basic rEFInd Features

+ +

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.

+ +

Assuming rEFInd starts up correctly, you should see its main screen, which resembles the following:

+ +
rEFInd presents a GUI menu for selecting your boot
+    OS.

+ +

If you don't press any key before the timeout (shown on the last 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 SUSE loader, which is further identified by text above the timeout as Linux 3.3.0-rc7 from ESP.)

+ +

This display is dominated by the central set of icons, which in this example includes icons for OS X, Windows, Ubuntu, a generic Linux installation (ELILO, in fact), SUSE, 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 in the lower-right corner of the OS icons.

+ +

In this example, the SUSE tag is selected. You can move the selection left by pressing the left or down arrow key and right by pressing the right or up arrow key. If your system has many boot loaders, an arrow icon will appear to the right of the boot loader list, indicating that the boot loader list will scroll when you move off the right edge. If you do this, an arrow icon will appear to the left of the icon list, indicating that you can scroll back in a similar manner. Moving past the final selection or using the Page Down key moves the selection to the second row of small icons, which launch ancillary programs or perform special actions. In this figure, these five icons are present:

+ +
    + + + +
  • Launch the EFI shell
  • + +
  • Launch the gptsync utility
  • + +
  • Produce an information page
  • + +
  • Shut down the computer
  • + +
  • Reboot the computer
  • + +
+ +

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. If you install gptsync.efi, its icon will appear, as well.

+ +

To launch an OS or utility, you should select its icon and then press the Enter key. If you press the Insert key, rEFInd will show a menu that may hold additional options, depending on the OS type. 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 Return to Main Menu to return to the main menu.

+ +
rEFInd submenus enable you to set session-specific
+    options.

+ + +

Using Keyboard Shortcuts

+ +

Although most rEFInd features can be activated via fairly obvious keyboard actions, some are not obvious. Table 1 summarizes the keystrokes that rEFInd accepts, and the action that each keystroke invokes.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Table 1: rEFInd Keyboard Shortcuts
KeystrokeExplanation
left arrow or up arrowMoves the selection one icon to the left (or up the list in text mode)
right arrow or down arrowMoves the selection one icon to the right (or down the list in text mode)
Page Up or HomeMoves the selection to the first item on the OS row
Page Down or EndMoves the selection to the last item on the utilities row
EscReturns from a sub-menu or redraws the screen
Insert, F2, or +Opens the selection's submenu, which is most useful for Mac OS X and ELILO
F10Saves an image of the current screen in the file screenshot.bmp in the ESP's root directory
Enter or spacebarLaunches the currently-selected OS, utility, or built-in feature
0Launches the Linux rescue entry
1 through 9Launches the specified boot loader by number
ELaunches the EFI shell
LLaunches the first Linux ELILO boot loader
MLaunches the first Mac OS boot loader
PLaunches gptsync
UShuts down the computer (but note that this is buggy and reboots most UEFI-based PCs)
WLaunches the first Windows boot loader
Other lettersLaunch OSes whose names begin with those letters, as described below
+ +

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 /EFI/debian/elilo.efi, rEFInd attempts to assign it a shortcut letter of D. rEFInd overrides this default for Mac OS X, Windows, and for Linux ELILO 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 M shortcut key. In practice, which works depends on the order in which rEFInd detects the OSes.

+ +
+ +

copyright © 2012 by Roderick W. Smith

+ +

This document is licensed under the terms of the GNU Free Documentation License (FDL), version 1.3.

+ +

If you have problems with or comments about this Web page, please e-mail me at rodsmith@rodsbooks.com. Thanks.

+ +

Go to the main rEFInd page

+ +

Learn how to Configure rEFInd

+ +

Return to my main Web page.

+ + diff --git a/docs/refind/windows-gpt.png b/docs/refind/windows-gpt.png new file mode 100644 index 0000000000000000000000000000000000000000..4c7ce06a70c0f47da6ef4ea7809df865de4cbfd9 GIT binary patch literal 36284 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

@$u7y+ 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 DY{uZ1 literal 0 HcmV?d00001 diff --git a/docs/refind/windows8-on-mac-efi.txt b/docs/refind/windows8-on-mac-efi.txt new file mode 100644 index 0000000..160919f --- /dev/null +++ b/docs/refind/windows8-on-mac-efi.txt @@ -0,0 +1,6 @@ +http://forums.macrumors.com/showpost.php?p=13346205&postcount=73 + +http://forums.macrumors.com/showpost.php?p=13381781&postcount=82 + +http://forums.macrumors.com/showpost.php?p=14026284&postcount=170 + -- 2.39.2