switch over to GRUB 2
The GRUB 1 configuration hasn't been working in a while and-- let's face it-- it's time. So now we have GRUB 2. It should still work with a serial console though I haven't tested it yet.
This commit is contained in:
parent
434d5d6759
commit
4a591cdf3a
17
Makefile
17
Makefile
|
@ -188,16 +188,17 @@ ifeq ($(DASH),YES)
|
||||||
endif
|
endif
|
||||||
touch $(SYSTOOLS)
|
touch $(SYSTOOLS)
|
||||||
|
|
||||||
$(GRUB): $(PREPROOT) configs/grub.conf $(KERNEL) scripts/grub-headless.sed
|
$(GRUB): $(PREPROOT) configs/grub.cfg $(KERNEL) scripts/grub-headless.sed
|
||||||
ifneq ($(EXTERNAL_KERNEL),YES)
|
ifneq ($(EXTERNAL_KERNEL),YES)
|
||||||
@scripts/echo Installing Grub
|
@scripts/echo Installing Grub
|
||||||
$(inroot) $(EMERGE) -nN $(USEPKG) sys-boot/grub-static
|
$(inroot) $(EMERGE) -nN $(USEPKG) sys-boot/grub
|
||||||
cp configs/grub.conf $(CHROOT)/boot/grub/grub.conf
|
mkdir -p $(CHROOT)/boot/grub
|
||||||
|
cp configs/grub.cfg $(CHROOT)/boot/grub/grub.cfg
|
||||||
ifeq ($(VIRTIO),YES)
|
ifeq ($(VIRTIO),YES)
|
||||||
sed -i 's/sda/vda/' $(CHROOT)/boot/grub/grub.conf
|
sed -i 's/sda/vda/' $(CHROOT)/boot/grub/grub.cfg
|
||||||
endif
|
endif
|
||||||
ifeq ($(HEADLESS),YES)
|
ifeq ($(HEADLESS),YES)
|
||||||
sed -i -f scripts/grub-headless.sed $(CHROOT)/boot/grub/grub.conf
|
sed -i -f scripts/grub-headless.sed $(CHROOT)/boot/grub/grub.cfg
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
$(inroot) ln -nsf /run/systemd/resolve/resolv.conf /etc/resolv.conf
|
$(inroot) ln -nsf /run/systemd/resolve/resolv.conf /etc/resolv.conf
|
||||||
|
@ -244,7 +245,7 @@ endif
|
||||||
$(RAW_IMAGE): $(STAGE4_TARBALL) scripts/grub.shell scripts/motd.sh
|
$(RAW_IMAGE): $(STAGE4_TARBALL) scripts/grub.shell scripts/motd.sh
|
||||||
@scripts/echo Installing files to `basename $(RAW_IMAGE)`
|
@scripts/echo Installing files to `basename $(RAW_IMAGE)`
|
||||||
qemu-img create -f raw $(RAW_IMAGE).tmp $(DISK_SIZE)
|
qemu-img create -f raw $(RAW_IMAGE).tmp $(DISK_SIZE)
|
||||||
parted -s $(RAW_IMAGE).tmp mklabel gpt
|
parted -s $(RAW_IMAGE).tmp mklabel msdos
|
||||||
parted -s $(RAW_IMAGE).tmp mkpart primary 1 $(DISK_SIZE)
|
parted -s $(RAW_IMAGE).tmp mkpart primary 1 $(DISK_SIZE)
|
||||||
parted -s $(RAW_IMAGE).tmp set 1 boot on
|
parted -s $(RAW_IMAGE).tmp set 1 boot on
|
||||||
sync
|
sync
|
||||||
|
@ -255,8 +256,8 @@ $(RAW_IMAGE): $(STAGE4_TARBALL) scripts/grub.shell scripts/motd.sh
|
||||||
tar -xf $(STAGE4_TARBALL) --numeric-owner $(COPY_ARGS) -C $(CHROOT)
|
tar -xf $(STAGE4_TARBALL) --numeric-owner $(COPY_ARGS) -C $(CHROOT)
|
||||||
scripts/motd.sh $(EXTERNAL_KERNEL) $(VIRTIO) $(DISK_SIZE) $(SWAP_SIZE) $(DASH) $(ARCH) > $(CHROOT)/etc/motd
|
scripts/motd.sh $(EXTERNAL_KERNEL) $(VIRTIO) $(DISK_SIZE) $(SWAP_SIZE) $(DASH) $(ARCH) > $(CHROOT)/etc/motd
|
||||||
ifneq ($(EXTERNAL_KERNEL),YES)
|
ifneq ($(EXTERNAL_KERNEL),YES)
|
||||||
echo '(hd0) ' $(RAW_IMAGE).tmp > device-map
|
echo '(hd0) ' `cat partitions` > device-map
|
||||||
$(CHROOT)/sbin/grub --device-map=device-map --no-floppy --batch < scripts/grub.shell
|
$(CHROOT)/usr/sbin/grub-install --no-floppy --grub-mkdevicemap=device-map --directory=$(CHROOT)/usr/lib/grub/i386-pc --boot-directory=$(CHROOT)/boot `cat partitions`
|
||||||
endif
|
endif
|
||||||
umount $(CHROOT)
|
umount $(CHROOT)
|
||||||
rmdir $(CHROOT)
|
rmdir $(CHROOT)
|
||||||
|
|
|
@ -0,0 +1,10 @@
|
||||||
|
insmod part_msdos
|
||||||
|
set timeout=2
|
||||||
|
set default=0
|
||||||
|
set fallback=1
|
||||||
|
set graphics=0
|
||||||
|
|
||||||
|
menuentry "Gentoo Linux" {
|
||||||
|
set root=(hd0,1)
|
||||||
|
linux /boot/vmlinuz root=/dev/sda1 rootfstype=ext4 net.ifnames=0 init=/usr/lib/systemd/systemd quiet
|
||||||
|
}
|
|
@ -1,7 +0,0 @@
|
||||||
default 0
|
|
||||||
timeout 5
|
|
||||||
|
|
||||||
title Gentoo Linux
|
|
||||||
root (hd0,0)
|
|
||||||
kernel /boot/vmlinuz root=/dev/sda1 rootfstype=ext4 net.ifnames=0 init=/usr/lib/systemd/systemd quiet
|
|
||||||
|
|
|
@ -1,3 +1,4 @@
|
||||||
1iserial --speed=9600 --unit=0 --word=8 --parity=no --stop=1\
|
1iserial --speed=9600 --unit=0 --word=8 --parity=no --stop=1\
|
||||||
1iterminal --timeout=2 serial console\
|
1iterminal_input serial\
|
||||||
s/^\(kernel .*\)$/\1 console=ttyS0/
|
1iterminal_output serial\
|
||||||
|
s/^\([ \t]*linux .*\)$/\1 console=tty0 console=ttyS0,38400n8/
|
||||||
|
|
Loading…
Reference in New Issue