rEFInd是macOS系统上的EFI启动管理器,它具备漂亮的图形界面和自动识别操做系统的功能。固然,它也可以在Linux系统上安装运行。python
准备工做:git
一、一台安装有Ubuntu 64位系统(必须用UEFI方式安装,本文用的是16.04.3版本)的计算机或虚拟机github
二、必须安装build-essential软件包bash
三、下载软件(源代码):UDK 2017/gnu-efi 3.0.6/rEFInd 0.11.2ui
rEFInd有两种编译方法,一是UDK+rEFInd,二是gnu-efi+rEFInd。操作系统
编译安装gnu-efi+rEFInd(先从最简单的开始):.net
一、编译gnu-efi。文件解压缩过程就不讲了。打开终端,输入如下命令:线程
cd ~/Downloads/gnu-efi-3.0.6 make all sudo make install
这样gnu-efi就编译安装好了。code
二、准备编译rEFInd。ip
这里要改一个文件才能正常编译,不然会报错。
咱们打开rEFInd目录下的Make.common文件,能够看到以下内容:
EFIINC = /usr/include/efi
GNUEFILIB = /usr/lib
EFILIB = /usr/lib
EFICRT0 = /usr/lib# Comment out above and uncomment below if using locally-compiled GNU-EFI....
#EFIINC = /usr/local/include/efi
#GNUEFILIB = /usr/local/lib
#EFILIB = /usr/local/lib
#EFICRT0 = /usr/local/lib
咱们把上面四行注释掉,而后把最下面四行取消注释,保存文件。
三、编译安装rEFInd。
最后咱们输入如下命令,编译安装rEFInd:
cd ~/Downloads/refind-0.11.2 make all sudo make install
rEFInd被安装到/boot/efi/EFI/refind目录下了,咱们能够经过修改其中的refind.conf配置文件来定制一些启动选项。
至此,gnu-efi+rEFInd就编译安装好了。重启计算机或虚拟机看一下效果吧。
编译安装UDK+rEFInd:
一、编译UDK 2017。把UDK 2017解压到/usr/local目录下。解压过程也不讲了。输入如下命令:
cd /usr/local/edk2-vUDK2017 source edksetup.sh BaseTools
而后咱们须要修改Conf/target.txt文件。 把文件里面的一些参数改为下面这样:
ACTIVE_PLATFORM = MdePkg/MdePkg.dsc
TARGET = RELEASE
TARGET_ARCH = X64
TOOL_CHAIN_TAG = GCC5
MAX_CONCURRENT_THREAD_NUMBER = 4
最后一个参数MAX_CONCURRENT_THREAD_NUMBER = 4,这个4指的是并行线程数,有几个逻辑CPU就改为几个吧,这样编译会快些。
再输入命令(这里咱们先安装必须的python和uuid-dev软件包):
sudo apt-get install python uuid-dev make -C BaseTools/Source/C build
过一段时间就编译好了。
二、编译rEFInd。输入如下命令:
cd ~/Downloads/refind-0.11.2 make all sudo make install
至此,UDK+rEFInd就编译安装好了。