提交 87370a61 编写于 作者: M MikeBeaton

Docs: Update docs

上级 22cfebdf
\documentclass[]{article}
%DIF LATEXDIFF DIFFERENCE FILE
%DIF DEL PreviousConfiguration.tex Fri Sep 3 03:11:13 2021
%DIF ADD ../Configuration.tex Fri Sep 3 04:10:49 2021
%DIF DEL PreviousConfiguration.tex Thu Aug 19 17:51:20 2021
%DIF ADD ../Configuration.tex Sat Sep 4 15:05:00 2021
\usepackage{lmodern}
\usepackage{amssymb,amsmath}
......@@ -3745,7 +3745,8 @@ nvram 4D1FDA02-38C7-4A6A-9CC6-4BCCA8B30102:boot-log |
\item \texttt{GSTT} --- GoptStop
\item \texttt{HDA} --- AudioDxe
\item \texttt{KKT} --- KeyTester
\item \texttt{MMDD} --- MmapDump
\item \DIFaddbegin \texttt{\DIFadd{LNX}} \DIFadd{--- OpenLinuxBoot
}\item \DIFaddend \texttt{MMDD} --- MmapDump
\item \texttt{OCPAVP} --- PavpProvision
\item \texttt{OCRST} --- ResetSystem
\item \texttt{OCUI} --- OpenCanopy
......@@ -3906,14 +3907,13 @@ nvram 4D1FDA02-38C7-4A6A-9CC6-4BCCA8B30102:boot-log |
bless --folder "/Volumes/Macintosh HD/System/Library/CoreServices" \
--bootefi --personalize
\end{lstlisting}
\DIFaddbegin
\DIFadd{On macOS 11 and newer the dedicated }\texttt{\DIFadd{x86legacy}} \DIFadd{model always uses
On macOS \DIFaddbegin \DIFadd{11 and newer the dedicated }\texttt{\DIFadd{x86legacy}} \DIFadd{model always uses
}\texttt{\DIFadd{ApECID}}\DIFadd{. When this configuration setting is left as }\texttt{\DIFadd{0}}
\DIFadd{first 8 bytes of }\texttt{\DIFadd{system-id}} \DIFadd{variable are used instead.
}\DIFaddend
}
On macOS versions before macOS 11, which introduced a dedicated \texttt{x86legacy}
\DIFadd{On macOS }\DIFaddend versions before macOS 11, which introduced a dedicated \texttt{x86legacy}
model for models without the T2 chip, personalised Apple Secure Boot
may not work as expected. When reinstalling the operating system, the macOS Installer
from macOS 10.15 and older will often run out of free memory on the \texttt{/var/tmp}
......@@ -4171,8 +4171,13 @@ rm vault.pub
of EFI System Partition file system.
\item \texttt{0x00000800} (bit \texttt{11}) --- \texttt{OC\_SCAN\_ALLOW\_FS\_NTFS}, allows scanning
of NTFS (Msft Basic Data) file system.
\item \texttt{0x00001000} (bit \texttt{12}) --- \texttt{OC\_SCAN\_ALLOW\_FS\_EXT}, allows scanning
of EXT (Linux Root) file system.
\item \texttt{0x00001000} (bit \texttt{12}) --- \texttt{OC\_SCAN\_ALLOW\_FS\_\DIFdelbegin \DIFdel{EXT}\DIFdelend \DIFaddbegin \DIFadd{LINUX\_ROOT}\DIFaddend }, allows
scanning of \DIFdelbegin \DIFdel{EXT (Linux Root }\DIFdelend \DIFaddbegin \DIFadd{Linux Root file systems.
}\item \texttt{\DIFadd{0x00002000}} \DIFadd{(bit }\texttt{\DIFadd{13}}\DIFadd{) --- }\texttt{\DIFadd{OC\_SCAN\_ALLOW\_FS\_LINUX\_DATA}}\DIFadd{, allows
scanning of Linux Data file systems.
}\item \texttt{\DIFadd{0x00004000}} \DIFadd{(bit }\texttt{\DIFadd{14}}\DIFaddend ) \DIFdelbegin \DIFdel{file system}\DIFdelend \DIFaddbegin \DIFadd{--- }\texttt{\DIFadd{OC\_SCAN\_ALLOW\_FS\_XBOOTLDR}}\DIFadd{, allows
scanning the Extended Boot Loader Partition as defined by the
}\href{https://systemd.io/BOOT\_LOADER\_SPECIFICATION/}{\DIFadd{Boot Loader Specification}}\DIFaddend .
\item \texttt{0x00010000} (bit \texttt{16}) --- \texttt{OC\_SCAN\_ALLOW\_DEVICE\_SATA}, allow
scanning SATA devices.
\item \texttt{0x00020000} (bit \texttt{17}) --- \texttt{OC\_SCAN\_ALLOW\_DEVICE\_SASEX}, allow
......@@ -5981,12 +5986,17 @@ Depending on the firmware, a different set of drivers may be required.
Loading an incompatible driver may lead the system to unbootable state or
even cause permanent firmware damage. Some of the known drivers are listed below:
\begin{tabular}{p{1.3in}p{5.55in}}
\href{https://github.com/acidanthera/OpenCorePkg}{\texttt{AudioDxe}}\textbf{*}
\DIFdelbegin %DIFDELCMD < \begin{tabular}{p{1.3in}p{5.55in}}
%DIFDELCMD < %%%
\DIFdelend \DIFaddbegin \begin{longtable}{p{1.3in}p{5.55in}}
\DIFaddend \href{https://github.com/acidanthera/OpenCorePkg}{\texttt{AudioDxe}}\textbf{*}
& HDA audio support driver in UEFI firmware for most Intel and some other analog audio controllers.
Staging driver, refer to \href{https://github.com/acidanthera/bugtracker/issues/740}{acidanthera/bugtracker\#740}
for known issues in AudioDxe. \\
\href{https://github.com/acidanthera/OpenCorePkg}{\texttt{CrScreenshotDxe}}\textbf{*}
\DIFaddbegin \href{https://github.com/acidanthera/OcBinaryData}{\texttt{\DIFadd{btrfs\_x64}}}
& \DIFadd{Open source BTRFS file system driver, required for booting with }\hyperref[uefilinux]{OpenLinuxBoot}
\DIFadd{from a file system which is now quite commonly used with Linux. }\\
\DIFaddend \href{https://github.com/acidanthera/OpenCorePkg}{\texttt{CrScreenshotDxe}}\textbf{*}
& Screenshot making driver saving images to the root of OpenCore partition (ESP) or
any available writeable filesystem upon pressing \texttt{F10}.
This is a modified version of \href{https://github.com/LongSoft/CrScreenshotDxe}{\texttt{CrScreenshotDxe}}
......@@ -5995,7 +6005,10 @@ even cause permanent firmware damage. Some of the known drivers are listed below
& Proprietary ExFAT file system driver for Bootcamp support commonly found in Apple
firmware. For Sandy Bridge and earlier CPUs, the \texttt{ExFatDxeLegacy} driver should be
used due to the lack of \texttt{RDRAND} instruction support. \\
\href{https://github.com/acidanthera/OcBinaryData}{\texttt{HfsPlus}}
\DIFaddbegin \href{https://github.com/acidanthera/OcBinaryData}{\texttt{\DIFadd{ext4\_x64}}}
& \DIFadd{Open source EXT4 file system driver, required for booting with }\hyperref[uefilinux]{OpenLinuxBoot}
\DIFadd{from the file system most commonly used with Linux. }\\
\DIFaddend \href{https://github.com/acidanthera/OcBinaryData}{\texttt{HfsPlus}}
& Recommended. Proprietary HFS file system driver with bless support commonly found in Apple
firmware. For Sandy Bridge and earlier CPUs, the \texttt{HfsPlusLegacy} driver should be
used due to the lack of \texttt{RDRAND} instruction support. \\
......@@ -6017,7 +6030,11 @@ even cause permanent firmware damage. Some of the known drivers are listed below
& \hyperref[ueficanopy]{OpenCore plugin} implementing graphical interface. \\
\href{https://github.com/acidanthera/OpenCorePkg}{\texttt{OpenRuntime}}\textbf{*}
& \hyperref[uefiruntime]{OpenCore plugin} implementing \texttt{OC\_FIRMWARE\_RUNTIME} protocol. \\
\href{https://github.com/acidanthera/OpenCorePkg}{\texttt{OpenUsbKbDxe}}\textbf{*}
\DIFaddbegin \href{https://github.com/acidanthera/OpenCorePkg}{\texttt{\DIFadd{OpenLinuxBoot}}}\textbf{\DIFadd{*}}
& \hyperref[uefilinux]{OpenCore plugin} \DIFadd{implementing }\texttt{\DIFadd{OC\_BOOT\_ENTRY\_PROTOCOL}}
\DIFadd{to allow direct detection and booting of Linux distributiuons from OpenCore, without
chainloading via GRUB. }\\
\DIFaddend \href{https://github.com/acidanthera/OpenCorePkg}{\texttt{OpenUsbKbDxe}}\textbf{*}
& USB keyboard driver adding support for \texttt{AppleKeyMapAggregator} protocols
on top of a custom USB keyboard driver implementation. This is an alternative to
builtin \texttt{KeySupport}, which may work better or worse depending on the firmware. \\
......@@ -6047,7 +6064,10 @@ even cause permanent firmware damage. Some of the known drivers are listed below
& XHCI USB controller support driver from \texttt{MdeModulePkg}. This driver is
included in most types of firmware starting with the Sandy Bridge generation. For earlier firmware
or legacy systems, it may be used to support external USB 3.0 PCI cards.
\end{tabular}
\DIFdelbegin %DIFDELCMD < \end{tabular}
%DIFDELCMD < %%%
\DIFdelend \DIFaddbegin \end{longtable}
\DIFaddend
Driver marked with \textbf{*} are bundled with OpenCore.
To compile the drivers from UDK (EDK II) the same command used for
......@@ -6223,7 +6243,189 @@ functioning. Feature highlights:
mapping (e.g. \texttt{EnableWriteUnprotector}).
\end{itemize}
\subsection{Properties}\label{uefiprops}
\DIFaddbegin \subsection{\DIFadd{OpenLinuxBoot}}\label{uefilinux}
\texttt{\DIFadd{OpenLinuxBoot}} \DIFadd{is an OpenCore plugin implementing }\texttt{\DIFadd{OC\_BOOT\_ENTRY\_PROTOCOL}}\DIFadd{.
It detects and boots Linux distros which are installed according to the
}\href{https://systemd.io/BOOT_LOADER_SPECIFICATION/}{\DIFadd{Boot Loader Specification}}
\DIFadd{or to the closely related (but not identical, see next paragraph)
}\href{https://fedoraproject.org/wiki/Changes/BootLoaderSpecByDefault}{\DIFadd{systemd BootLoaderSpecByDefault}}\DIFadd{.
In effect this means Linux distributions where the available boot options are found in
}\texttt{\DIFadd{\{ESP\}/loader/entries/*.conf}} \DIFadd{files (for instance }\texttt{\DIFadd{/boot/efi/loader/entries/*.conf}}\DIFadd{)
or in }\texttt{\DIFadd{\{boot\}/loader/entries/*.conf}} \DIFadd{files (for instance }\texttt{\DIFadd{/boot/loader/entries/*.conf}}\DIFadd{).
The former layout -- pure Boot Loader Specification, using kernel files on the EFI System Partition or
Extended Boot Loader Partition -- is specific to systemd-boot, the latter
layout with kernel files typically on the partition which will be mounted as }\texttt{\DIFadd{/boot}}
\DIFadd{applies to most Fedora-related distros including Fedora itself, RHEL and variants.
}
\DIFadd{BootLoaderSpecByDefault includes the possibility of expanding GRUB variables
in its }\texttt{\DIFadd{*.conf}} \DIFadd{files -- and this is used in practice in certain distros such as CentOS.
In order to correctly handle this, }\texttt{\DIFadd{OpenLinuxBoot}} \DIFadd{extracts all variables from
}\texttt{\DIFadd{\{boot\}/grub2/grubenv}} \DIFadd{and any unconditionally set variables from }\texttt{\DIFadd{\{boot\}/grub2/grub.cfg}}\DIFadd{.
This has proved sufficient in practice to extract the required variables seen so far in distros which use this
GRUB-specific feature.
}
\DIFadd{For distributions which do not use either of the above schemes, }\texttt{\DIFadd{OpenLinuxBoot}} \DIFadd{will autodetect and
boot }\texttt{\DIFadd{\{boot\}/vmlinuz*}} \DIFadd{kernel files directly, after linking these automatically -- based on the
kernel version in the filename -- to their associated }\texttt{\DIFadd{\{boot\}/init*}} \DIFadd{ramdisk files, and after
searching in }\texttt{\DIFadd{/etc/default/grub}} \DIFadd{for kernel boot options and }\texttt{\DIFadd{/etc/os-release}} \DIFadd{for the
distro name.
This layout applies to most Debian-related distros, including Debian itself, Ubuntu and variants.
}
\DIFadd{The method of starting the kernel relies on it being compiled with EFISTUB, however this applies
to almost all modern distros, particularly those which use systemd. Most modern distros
use systemd as their system manager (even though at the same time most do }\emph{\DIFadd{not}} \DIFadd{use systemd-boot as
their bootloader).
}
\DIFadd{The latest kernel version of a given install is always shown in the boot menu. Additional versions,
recovery versions, etc. are added as auxiliary boot entries, so depending on OpenCore's
}\texttt{\DIFadd{HideAuxiliary}} \DIFadd{setting may not be shown until the space key is pressed.
}
\emph{\DIFadd{Note 1}}\DIFadd{: }\texttt{\DIFadd{OpenLinuxBoot}} \DIFadd{requires filesystem drivers that may not be available in
firmware such as EXT4 and BTRFS drivers. These drivers can be obtained from external sources.
Drivers tested in basic scenarios can be downloaded from }\href{https://github.com/acidanthera/OcBinaryData}{\DIFadd{OcBinaryData}}\DIFadd{.
Be aware that these drivers are neither tested for reliability in all scenarious, nor underwent any
tamper-resistance testing, therefore have may carry potential security or data-loss risks.
}
\DIFadd{Most Linux distributions keep their boot files on the EXT4 file system even when the distribution's
main filesystem is something else such as BTRFS, therefore a suitable UEFI EXT4 file system
driver such as }\href{https://github.com/acidanthera/OcBinaryData}{\texttt{\DIFadd{ext4\_x64}}} \DIFadd{is normally required.
A BTRFS driver such as }\href{https://github.com/acidanthera/OcBinaryData}{\texttt{\DIFadd{btrfs\_x64}}}
\DIFadd{will be required in a somewhat less standard setup where the boot files are on a BTRFS partition,
e.g. as by default in openSUSE.
}
\DIFadd{Pure Boot Loader Spec (e.g. as implemented by systemd-boot) keeps all kernel and ramdisk images directly
on the EFI System Partition (or an Extended Boot Loader Partition), therefore it requires no additional
filesystem driver - but it is not widely used except in Arch Linux.
}
\emph{\DIFadd{Note 2}}\DIFadd{: systemd-boot users (probably almost exclusively Arch Linux users) should be aware that }\texttt{\DIFadd{OpenLinuxBoot}}
\DIFadd{does not support the systemd-boot--specific }\href{https://systemd.io/BOOT\_LOADER\_INTERFACE/}{\DIFadd{Boot Loader Interface}}\DIFadd{;
therefore use }\texttt{\DIFadd{efibootmgr}} \DIFadd{rather than }\texttt{\DIFadd{bootctl}} \DIFadd{for any low-level Linux command line interaction with
the boot menu.
}
\DIFadd{The default parameter values should work well, but if you need to parameterise this driver the following
options may be specified in }\texttt{\DIFadd{UEFI/Drivers/Arguments}}\DIFadd{:
}
\begin{itemize}
\tightlist
\item \texttt{\DIFadd{flags}} \DIFadd{- Default: all flags except }\texttt{\DIFadd{LINUX\_BOOT\_ADD\_DEBUG\_INFO}} \DIFadd{are set. }\medskip
\DIFadd{Available flags are: }\medskip
\begin{itemize}
\tightlist
\item \texttt{\DIFadd{0x00000001}} \DIFadd{(bit }\texttt{\DIFadd{0}}\DIFadd{) --- }\texttt{\DIFadd{LINUX\_BOOT\_SCAN\_ESP}}\DIFadd{,
Allows scanning for entries on EFI System Partition.
}\item \texttt{\DIFadd{0x00000002}} \DIFadd{(bit }\texttt{\DIFadd{1}}\DIFadd{) --- }\texttt{\DIFadd{LINUX\_BOOT\_SCAN\_XBOOTLDR}}\DIFadd{,
Allows scanning for entries on Extended Boot Loader Partition.
}\item \texttt{\DIFadd{0x00000004}} \DIFadd{(bit }\texttt{\DIFadd{2}}\DIFadd{) --- }\texttt{\DIFadd{LINUX\_BOOT\_SCAN\_LINUX\_ROOT}}\DIFadd{,
Allows scanning for entries on Linux Root filesystems.
}\item \texttt{\DIFadd{0x00000008}} \DIFadd{(bit }\texttt{\DIFadd{3}}\DIFadd{) --- }\texttt{\DIFadd{LINUX\_BOOT\_SCAN\_LINUX\_DATA}}\DIFadd{,
Allows scanning for entries on Linux Data filesystems.
}\item \texttt{\DIFadd{0x00000080}} \DIFadd{(bit }\texttt{\DIFadd{7}}\DIFadd{) --- }\texttt{\DIFadd{LINUX\_BOOT\_SCAN\_OTHER}}\DIFadd{,
Allows scanning for entries on file systems not matched by any of the above. }\medskip
\DIFadd{The following notes apply to all of the above options: }\medskip
\emph{\DIFadd{Note 1}}\DIFadd{: Apple filesystems APFS and HFS are never scanned.
}\medskip
\emph{\DIFadd{Note 2}}\DIFadd{: Regardless of the above flags, a file system must first be
allowed by }\texttt{\DIFadd{Misc/Security/ScanPolicy}} \DIFadd{before it can be seen by
}\texttt{\DIFadd{OpenLinuxBoot}} \DIFadd{or any other }\texttt{\DIFadd{OC\_BOOT\_ENTRY\_PROTOCOL}} \DIFadd{driver.
}\medskip
\emph{\DIFadd{Note 3}}\DIFadd{: It is recommended to enable scanning }\texttt{\DIFadd{LINUX\_ROOT}} \DIFadd{and }\texttt{\DIFadd{LINUX\_DATA}}
\DIFadd{in both }\texttt{\DIFadd{OpenLinuxBoot}} \DIFadd{flags and }\texttt{\DIFadd{Misc/Security/ScanPolicy}} \DIFadd{in order to be sure
to detect all valid Linux installs.
}\medskip
\item \texttt{\DIFadd{0x00000100}} \DIFadd{(bit }\texttt{\DIFadd{8}}\DIFadd{) --- }\texttt{\DIFadd{LINUX\_BOOT\_ALLOW\_AUTODETECT}}\DIFadd{,
If set allows autodetecting and linking }\texttt{\DIFadd{vmlinuz*}} \DIFadd{and }\texttt{\DIFadd{init*}} \DIFadd{ramdisk files
when }\texttt{\DIFadd{loader/entries}} \DIFadd{files are not found.
}\item \texttt{\DIFadd{0x00000200}} \DIFadd{(bit }\texttt{\DIFadd{9}}\DIFadd{) --- }\texttt{\DIFadd{LINUX\_BOOT\_USE\_LATEST}}\DIFadd{,
When a Linux entry generated by }\texttt{\DIFadd{OpenLinuxBoot}} \DIFadd{is selected as the default boot entry
in OpenCore, automatically switch to the latest kernel when a new version is installed. }\medskip
\DIFadd{When this option is set, an internal menu entry id is shared between kernel versions from the same install
of Linux. Linux boot options are always sorted highest kernel version first, so this means that
the latest kernel version of the same install always shows as the default, with this option set. }\medskip
\emph{\DIFadd{Note}}\DIFadd{: This option is recommended on all systems. }\medskip
\item \texttt{\DIFadd{0x00000400}} \DIFadd{(bit }\texttt{\DIFadd{10}}\DIFadd{) --- }\texttt{\DIFadd{LINUX\_BOOT\_ADD\_RO}}\DIFadd{,
This option applies to autodetected Linux only (i.e. to Debian-style distrubutions, not to BLSpec and
Fedora-style distributions with }\texttt{\DIFadd{/loader/entries/*.conf}} \DIFadd{files).
Some distrubtions run a filesystem check on loading which requires the root
filesystem to initially be mounted read-only via the }\texttt{\DIFadd{ro}} \DIFadd{kernel option. Set this bit to add this
option on autodetected distros; should be harmless but very slightly slow down boot time (due to requried
remount as read-write) on distros which do not require it. To specify this option for specific
distros only, use }\texttt{\DIFadd{partuuidopts:\{partuuid\}+=ro}} \DIFadd{instead of this flag.
}\item \texttt{\DIFadd{0x00008000}} \DIFadd{(bit }\texttt{\DIFadd{15}}\DIFadd{) --- }\texttt{\DIFadd{LINUX\_BOOT\_ADD\_DEBUG\_INFO}}\DIFadd{,
Adds a human readable file system type, followed by the first eight characters of the
partition's unique partition uuid, to each generated entry name. Can help with debugging
the origin of entries generated by the driver when there are multiple Linux installs on
one system.
}\end{itemize} \medskip
\DIFadd{Flag values can be specified in hexadecimal beginning with }\texttt{\DIFadd{0x}} \DIFadd{or in decimal,
e.g. }\texttt{\DIFadd{flags=0x80}} \DIFadd{or }\texttt{\DIFadd{flags=128}}\DIFadd{. }\medskip
\item \texttt{\DIFadd{partuuidopts:\{partuuid\}[+]="\{options\}"}} \DIFadd{- Default: not set. }\medskip
\DIFadd{Allows specifying kernel options for a given partition only. If specified with }\texttt{\DIFadd{+=}} \DIFadd{then
these are used in addition to autodetected options, if specified with }\texttt{\DIFadd{=}} \DIFadd{they are used instead.
Used for autodetected Linux only. Values specified here are never used for entries created from
}\texttt{\DIFadd{/loader/entries/*.conf}} \DIFadd{files.
}\medskip
\emph{\DIFadd{Note}}\DIFadd{: The }\texttt{\DIFadd{partuuid}} \DIFadd{value to be specified here is typically the same as the }\texttt{\DIFadd{PARTUUID}}
\DIFadd{seen in }\texttt{\DIFadd{root=PARTUUID=...}} \DIFadd{in the Linux kernel boot options (view using
}\texttt{\DIFadd{cat /proc/cmdline}}\DIFadd{) for autodetected Debian-style distros, but is NOT the same for
Fedora-style distros booted from }\texttt{\DIFadd{/loader/entries/*.conf}} \DIFadd{files. }\medskip
\DIFadd{Typically you should not need this option in the latter case, but in case you do, to find out the unique
partition uuid to use, look for }\texttt{\DIFadd{LNX:}} \DIFadd{entries in the OpenCore debug log file. Alternatively, and
for more advanced scenarios, you may wish to examine how your drives are mounted using the
Linux }\texttt{\DIFadd{mount}} \DIFadd{command, and then find out the partuuid of relevant mounted drives by examining the
output of }\texttt{\DIFadd{ls -l /dev/disk/by-partuuid}}\DIFadd{. }\medskip
\item \texttt{\DIFadd{autoopts}[\DIFadd{+}]\DIFadd{="\{options\}"}} \DIFadd{- Default: None specified. The kernel options to use
for autodetected Linux only. The value here is never used for entries created from
}\texttt{\DIFadd{/loader/entries/*.conf}} \DIFadd{files. }\texttt{\DIFadd{partuuidopts}} \DIFadd{may be more suitable where there are multiple
distros, but }\texttt{\DIFadd{autoopts}} \DIFadd{with no PARTUUID required is more convenient for just one distro.
If specified with }\texttt{\DIFadd{+=}} \DIFadd{then these are used in addition to autodetected options, if specified
with }\texttt{\DIFadd{=}} \DIFadd{they are used instead. As example usage, it is possible to use }\texttt{\DIFadd{+=}} \DIFadd{format to add
a }\texttt{\DIFadd{vt.handoff}} \DIFadd{options, such as }\texttt{\DIFadd{autopts+="vt.handoff=7"}} \DIFadd{or }\texttt{\DIFadd{autopts+="vt.handoff=3"}}
\DIFadd{(check }\texttt{\DIFadd{cat /proc/cmdline}} \DIFadd{when booted via your existing bootloader) on Ubuntu and related distros,
in order to add the }\texttt{\DIFadd{vt.handoff}} \DIFadd{option to the auto-detected GRUB defaults, and avoid a flash of text
showing before the distro splash screen.
}\medskip
\DIFadd{Users may wish to compare their Linux boot options (shown with }\texttt{\DIFadd{cat /proc/cmdline}}\DIFadd{) seen when booting via
}\texttt{\DIFadd{OpenLinuxBoot}} \DIFadd{and via their distro's original bootloader, which is normally GRUB (but might also be e.g.
systemd-boot or EXTLINUX). Expect the options generated by }\texttt{\DIFadd{OpenLinuxBoot}} \DIFadd{not to
contain a }\texttt{\DIFadd{BOOT\_IMAGE=...}} \DIFadd{value where GRUB options do, and to contain an
}\texttt{\DIFadd{initrd=...}} \DIFadd{value where the GRUB options do not, since GRUB hands over ramdisks in a different way.
All remaining parameters should match, however -- perhaps excluding less important graphics handover options,
such as in the Ubuntu example given in }\texttt{\DIFadd{autoopts}}\DIFadd{.
}\texttt{\DIFadd{OpenLinuxBoot}} \DIFadd{will not start a distro unless it can find some configured options to use, therefore in
the hopefully unlikely case where no auto-detectable options are available, the user will need to specify the correct options
with }\texttt{\DIFadd{partuuidopts}} \DIFadd{or }\texttt{\DIFadd{autoopts}} \DIFadd{before the distro will boot. Examine the OpenCore debug log
for }\texttt{\DIFadd{LNX:}} \DIFadd{entries containing further information about what was found.
}\end{itemize}
\DIFaddend \subsection{Properties}\label{uefiprops}
\begin{enumerate}
\item
......@@ -6293,14 +6495,17 @@ functioning. Feature highlights:
\item
\texttt{Drivers}\\
\textbf{Type}: \texttt{plist\ array}\\
\textbf{Type}: \texttt{plist\ \DIFdelbegin \DIFdel{array}\DIFdelend \DIFaddbegin \DIFadd{dict}\DIFaddend }\\
\textbf{Failsafe}: None\\
\textbf{Description}: Load selected drivers from \texttt{OC/Drivers}
directory.
directory \DIFaddbegin \DIFadd{using the settings specified in the
}\hyperref[uefidriversprops]{Drivers Properties} \DIFadd{section below}\DIFaddend .
To be filled with string filenames meant to be loaded as UEFI drivers.
\DIFdelbegin \DIFdel{To be filled with string filenames meant to be loaded as UEFI drivers.
}%DIFDELCMD <
\item
%DIFDELCMD < %%%
\DIFdelend \item
\texttt{Input}\\
\textbf{Type}: \texttt{plist\ dict}\\
\textbf{Failsafe}: None\\
......@@ -6742,10 +6947,40 @@ functioning. Feature highlights:
RawVolume &= MIN(\frac{SystemAudioVolume * VolumeAmplifier}{100}, 100)
\end{align*}
\emph{Note}: the transformation used in macOS is not linear, but it is very close
and this nuance is thus ignored.
and this nuance is thus ignored\DIFaddbegin \DIFadd{.
}
\end{enumerate}
\subsection{\DIFadd{Drivers Properties}}\label{uefidriversprops}
\begin{enumerate}
\item
\texttt{\DIFadd{Path}}\\
\textbf{\DIFadd{Type}}\DIFadd{: }\texttt{\DIFadd{plist\ string}}\\
\textbf{\DIFadd{Failsafe}}\DIFadd{: Empty}\\
\textbf{\DIFadd{Description}}\DIFadd{: Path of file to be loaded as a UEFI driver
from }\texttt{\DIFadd{OC/Drivers}} \DIFadd{directory.
}
\item
\texttt{\DIFadd{Enabled}}\\
\textbf{\DIFadd{Type}}\DIFadd{: }\texttt{\DIFadd{plist\ boolean}}\\
\textbf{\DIFadd{Failsafe}}\DIFadd{: }\texttt{\DIFadd{false}}\\
\textbf{\DIFadd{Description}}\DIFadd{: If }\texttt{\DIFadd{false}} \DIFadd{this driver entry will be ignored.
}
\item
\texttt{\DIFadd{Arguments}}\\
\textbf{\DIFadd{Type}}\DIFadd{: }\texttt{\DIFadd{plist\ string}}\\
\textbf{\DIFadd{Failsafe}}\DIFadd{: Empty}\\
\textbf{\DIFadd{Description}}\DIFadd{: Some OC plugins accept optional additional arguments
which may be specified as a string here}\DIFaddend .
\end{enumerate}
\subsection{Input Properties}\label{uefiinputprops}
\begin{enumerate}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册