mirror of
https://github.com/rancher/os.git
synced 2025-08-10 11:03:16 +00:00
Revert "Add EFI live boot support"
This commit is contained in:
parent
94fd38c358
commit
ddbedb9b31
@ -20,7 +20,6 @@ RUN apt-get update && \
|
||||
gccgo \
|
||||
genisoimage \
|
||||
git \
|
||||
grub-efi \
|
||||
isolinux \
|
||||
less \
|
||||
libblkid-dev \
|
||||
|
28
efi.txt
28
efi.txt
@ -1,28 +0,0 @@
|
||||
To install with EFI:
|
||||
|
||||
A: install grub-efi
|
||||
|
||||
apt install grub-efi
|
||||
|
||||
B: Add to the installation process in scripts/package-iso
|
||||
|
||||
1. Make directories ${CD}/boot/grub and ${CD}/EFI/BOOT
|
||||
2. Install the various grub modules from /usr/lib/grub/x86_64-efi/ to ${CD}/boot/grub/x86_64-efi/
|
||||
3. Copy scripts/grub.cfg to ${CD}/boot/grub/grub.cfg
|
||||
4. Run grub-mkimage to create the grub image:
|
||||
|
||||
(cd ${CD} && grub-mkimage -O x86_64-efi -o EFI/BOOT/BOOTX64.EFI --config=boot/grub/grub.cfg --compression=auto --prefix='()/boot/grub' disk part_msdos fat iso9660 )
|
||||
|
||||
NOTE: do *NOT* try to install the linux module directly in the grub image; it causes command-line options not to be passed and is a known bug.
|
||||
|
||||
5. Add the following xorriso options
|
||||
|
||||
-eltorito-alt-boot -e EFI/BOOT/BOOTX64.EFI -no-emul-boot \
|
||||
-isohybrid-gpt-basdat \
|
||||
|
||||
This installation includes *no* additional icons or drivers. It is just meant to get RancherOS booted on an EFI system.
|
||||
If you want to add support for graphical installations, additional filesystems, and everything else.... you will need a lot more
|
||||
|
||||
|
||||
|
||||
|
@ -1,14 +0,0 @@
|
||||
set default="0"
|
||||
set timeout=10
|
||||
|
||||
set gfxmode=auto
|
||||
insmod efi_gop
|
||||
insmod efi_uga
|
||||
|
||||
|
||||
menuentry "Rancher" {
|
||||
set gfxpayload=keep
|
||||
linux /boot/vmlinuz quiet rancher.autologin=tty1 rancher.autologin=ttyS0
|
||||
initrd /boot/initrd
|
||||
}
|
||||
|
@ -9,7 +9,7 @@ CD=${BUILD}/cd
|
||||
ISO=${ARTIFACTS}/$(echo ${DISTRIB_ID} | tr '[:upper:]' '[:lower:]').iso
|
||||
CHECKSUM=iso-checksums.txt
|
||||
|
||||
## TRADITIONAL MBR BOOT
|
||||
mkdir -p ${CD}/boot/isolinux
|
||||
mkdir -p ${CD}/boot/isolinux
|
||||
|
||||
if [ ! -f ${ARTIFACTS}/vmlinuz ] || [ ! -f ${ARTIFACTS}/initrd ]; then
|
||||
@ -21,42 +21,12 @@ cp ${ARTIFACTS}/vmlinuz ${CD}/boot
|
||||
cp scripts/isolinux.cfg ${CD}/boot/isolinux
|
||||
cp /usr/lib/ISOLINUX/isolinux.bin ${CD}/boot/isolinux
|
||||
cp /usr/lib/syslinux/modules/bios/ldlinux.c32 ${CD}/boot/isolinux
|
||||
|
||||
|
||||
## EFI BOOT
|
||||
mkdir -p ${CD}/EFI/BOOT
|
||||
mkdir -p ${CD}/boot/grub
|
||||
cp scripts/grub.cfg ${CD}/boot/grub
|
||||
cp -r /usr/lib/grub/x86_64-efi/ ${CD}/boot/grub
|
||||
|
||||
(cd ${CD} && grub-mkimage -O x86_64-efi -o EFI/BOOT/BOOTX64.EFI --config=boot/grub/grub.cfg --compression=auto --prefix='()/boot/grub' disk part_msdos fat iso9660 )
|
||||
|
||||
# make the EFI FAT filesystem to boot
|
||||
EFIIMG=boot/efiboot.img
|
||||
CDEFI=${CD}/${EFIIMG}
|
||||
rm -f ${CDEFI}
|
||||
dd if=/dev/zero of=${CDEFI} bs=4k count=1000
|
||||
mkfs.vfat ${CDEFI}
|
||||
mkdir -p tmp/
|
||||
mount -o loop ${CDEFI} tmp/
|
||||
cp -r ${CD}/EFI tmp/
|
||||
umount tmp/
|
||||
rmdir tmp/
|
||||
|
||||
rm -rf ${CD}/EFI
|
||||
|
||||
|
||||
## BUILD THE ISO IMAGE
|
||||
|
||||
cd ${CD} && xorriso \
|
||||
-as mkisofs \
|
||||
-l -J -R -V "${DISTRIB_ID}" \
|
||||
-no-emul-boot -boot-load-size 4 -boot-info-table \
|
||||
-b boot/isolinux/isolinux.bin -c boot/isolinux/boot.cat \
|
||||
-isohybrid-mbr /usr/lib/ISOLINUX/isohdpfx.bin \
|
||||
-eltorito-alt-boot \
|
||||
-e ${EFIIMG} -no-emul-boot \
|
||||
-isohybrid-gpt-basdat \
|
||||
-o $ISO ${CD}
|
||||
|
||||
cd $(dirname $ISO)
|
||||
|
17
scripts/run
17
scripts/run
@ -41,21 +41,6 @@ while [ "$#" -gt 0 ]; do
|
||||
--kvm)
|
||||
KVM=1
|
||||
;;
|
||||
--efi)
|
||||
# set where our EFI firmware binary is
|
||||
EFIFIRMWARE="./build/OVMF.fd"
|
||||
# create the command-line to pass to qemu
|
||||
EFI="--bios $EFIFIRMWARE"
|
||||
# if the firmware does not yet exist, download it
|
||||
if [[ ! -e "$EFIFIRMWARE" ]]; then
|
||||
echo "Downloading OVMF EFI firmware"
|
||||
# because unzip does not support streaming from stdin...
|
||||
curl --location http://downloads.sourceforge.net/project/edk2/OVMF/OVMF-X64-r15214.zip > ./build/ovmf.zip
|
||||
unzip ./build/ovmf.zip -d ./build OVMF.fd
|
||||
rm -f ./build/ovmf.zip
|
||||
echo "Download OVMF EFI firmware complete"
|
||||
fi
|
||||
;;
|
||||
--no-format)
|
||||
FORMAT=0
|
||||
;;
|
||||
@ -153,7 +138,6 @@ if [ "$QEMU" == "1" ]; then
|
||||
${CPU} \
|
||||
${machine["$ARCH"]} \
|
||||
-m 2048 \
|
||||
${EFI} \
|
||||
${network["$ARCH"]} \
|
||||
$(eval "${hd["$ARCH"]} ${HD}") \
|
||||
${SECOND_DRIVE_ENABLE} \
|
||||
@ -176,7 +160,6 @@ if [ "$QEMU" == "1" ]; then
|
||||
-kernel ${KERNEL} \
|
||||
-initrd ${INITRD} \
|
||||
-m 2048 \
|
||||
${EFI} \
|
||||
${network["$ARCH"]} \
|
||||
$(eval "${hd["$ARCH"]} ${HD}") \
|
||||
${SECOND_DRIVE_ENABLE} \
|
||||
|
Loading…
Reference in New Issue
Block a user