2021-01-21 11:34:06 -05:00
|
|
|
#!/bin/sh
|
|
|
|
# Copy this file to /etc/grub.d/40_custom_grml with mode 0755 and run grub-mkconfig -o /boot/grub/grub.cfg
|
|
|
|
exec tail -n +3 $0
|
|
|
|
# GRML
|
|
|
|
# Project: https://grml.org/
|
|
|
|
# Details:
|
2021-01-21 13:27:31 -05:00
|
|
|
# https://grml.org/docs/
|
|
|
|
# http://grml.org/cheatcodes/
|
2021-01-21 18:15:20 -05:00
|
|
|
submenu 'GRML >' {
|
2021-01-21 11:34:06 -05:00
|
|
|
|
|
|
|
load_video
|
|
|
|
insmod gzio
|
|
|
|
insmod part_gpt
|
|
|
|
insmod part_msdos
|
|
|
|
insmod ext2
|
|
|
|
insmod loopback
|
|
|
|
set gfxpayload=keep
|
|
|
|
search --no-floppy --fs-uuid {{ disk_uuid }} --set=root
|
|
|
|
set isofile='{{ iso_path }}'
|
2021-01-21 18:15:20 -05:00
|
|
|
loopback loop (${root})/${isofile}
|
2021-01-21 11:34:06 -05:00
|
|
|
|
2021-01-21 18:15:20 -05:00
|
|
|
submenu 'GRML Rescue >' {
|
2021-01-21 11:34:06 -05:00
|
|
|
|
2021-01-21 18:15:20 -05:00
|
|
|
set variant={{ variant }}
|
|
|
|
set ver={{ ver_str }}
|
|
|
|
set arch={{ arch }}
|
|
|
|
set bootid=grml${arch}${variant}${ver}
|
|
|
|
set imgdevpath="/dev/disk/by-uuid/{{ disk_uuid }}"
|
2021-01-21 11:34:06 -05:00
|
|
|
|
2021-01-21 18:15:20 -05:00
|
|
|
menuentry 'Default options' {
|
|
|
|
linux (loop)/boot/grml${arch}${variant}/vmlinuz \
|
|
|
|
apm=power-off \
|
|
|
|
boot=live \
|
|
|
|
live-media-path=/live/grml${arch}-${variant}/ \
|
|
|
|
bootid=${bootid} \
|
|
|
|
findiso=${isofile} \
|
|
|
|
nomce \
|
|
|
|
net.ifnames=0
|
|
|
|
initrd (loop)/boot/grml${arch}${variant}/initrd.img
|
|
|
|
}
|
2021-01-21 11:34:06 -05:00
|
|
|
|
2021-01-21 18:15:20 -05:00
|
|
|
menuentry 'Predictable network interface names' {
|
|
|
|
linux (loop)/boot/grml${arch}${variant}/vmlinuz \
|
|
|
|
apm=power-off \
|
|
|
|
boot=live \
|
|
|
|
live-media-path=/live/grml${arch}-${variant}/ \
|
|
|
|
bootid=${bootid} \
|
|
|
|
findiso=${isofile} \
|
|
|
|
nomce
|
|
|
|
initrd (loop)/boot/grml${arch}${variant}/initrd.img
|
|
|
|
}
|
2021-01-21 11:34:06 -05:00
|
|
|
|
2021-01-21 18:15:20 -05:00
|
|
|
menuentry 'Enable persistency' {
|
|
|
|
linux (loop)/boot/grml${arch}${variant}/vmlinuz \
|
|
|
|
apm=power-off \
|
|
|
|
boot=live \
|
|
|
|
live-media-path=/live/grml${arch}-${variant}/ \
|
|
|
|
bootid=${bootid} \
|
|
|
|
findiso=${isofile} \
|
|
|
|
nomce \
|
|
|
|
net.ifnames=0 \
|
|
|
|
persistence
|
|
|
|
initrd (loop)/boot/grml${arch}${variant}/initrd.img
|
|
|
|
}
|
2021-01-21 11:34:06 -05:00
|
|
|
|
2021-01-21 18:15:20 -05:00
|
|
|
menuentry 'Run from RAM' {
|
|
|
|
linux (loop)/boot/grml${arch}${variant}/vmlinuz \
|
|
|
|
apm=power-off \
|
|
|
|
boot=live \
|
|
|
|
live-media-path=/live/grml${arch}-${variant}/ \
|
|
|
|
bootid=${bootid} \
|
|
|
|
findiso=${isofile} \
|
|
|
|
nomce \
|
|
|
|
net.ifnames=0 \
|
|
|
|
toram=grml64-full.squashfs
|
|
|
|
initrd (loop)/boot/grml${arch}${variant}/initrd.img
|
|
|
|
}
|
2021-01-21 11:34:06 -05:00
|
|
|
|
2021-01-21 18:15:20 -05:00
|
|
|
menuentry 'Copy entire ISO to RAM' {
|
|
|
|
linux (loop)/boot/grml${arch}${variant}/vmlinuz \
|
|
|
|
apm=power-off \
|
|
|
|
boot=live \
|
|
|
|
live-media-path=/live/grml${arch}-${variant}/ \
|
|
|
|
bootid=${bootid} \
|
|
|
|
findiso=${isofile} \
|
|
|
|
nomce \
|
|
|
|
net.ifnames=0 \
|
|
|
|
toram
|
|
|
|
initrd (loop)/boot/grml${arch}${variant}/initrd.img
|
|
|
|
}
|
2021-01-21 11:34:06 -05:00
|
|
|
|
2021-01-21 18:15:20 -05:00
|
|
|
menuentry 'Start X' {
|
|
|
|
linux (loop)/boot/grml${arch}${variant}/vmlinuz \
|
|
|
|
apm=power-off \
|
|
|
|
boot=live \
|
|
|
|
live-media-path=/live/grml${arch}-${variant}/ \
|
|
|
|
bootid=${bootid} \
|
|
|
|
findiso=${isofile} \
|
|
|
|
nomce \
|
|
|
|
net.ifnames=0 \
|
|
|
|
startx
|
|
|
|
initrd (loop)/boot/grml${arch}${variant}/initrd.img
|
|
|
|
}
|
|
|
|
|
|
|
|
menuentry 'No framebuffer' {
|
|
|
|
linux (loop)/boot/grml${arch}${variant}/vmlinuz \
|
|
|
|
apm=power-off \
|
|
|
|
boot=live \
|
|
|
|
live-media-path=/live/grml${arch}-${variant}/ \
|
|
|
|
bootid=${bootid} \
|
|
|
|
findiso=${isofile} \
|
|
|
|
nomce \
|
|
|
|
net.ifnames=0 \
|
|
|
|
video=ofonly \
|
|
|
|
radeon.modeset=0 \
|
|
|
|
i915.modeset=0 \
|
|
|
|
nouveau.modeset=0 \
|
|
|
|
cirrus.modeset=0 \
|
|
|
|
mgag200.modeset=0 \
|
|
|
|
nomodeset
|
|
|
|
initrd (loop)/boot/grml${arch}${variant}/initrd.img
|
|
|
|
}
|
|
|
|
|
|
|
|
menuentry 'No kernel modeset' {
|
|
|
|
linux (loop)/boot/grml${arch}${variant}/vmlinuz \
|
|
|
|
apm=power-off \
|
|
|
|
boot=live \
|
|
|
|
live-media-path=/live/grml${arch}-${variant}/ \
|
|
|
|
bootid=${bootid} \
|
|
|
|
findiso=${isofile} \
|
|
|
|
nomce \
|
|
|
|
net.ifnames=0 \
|
|
|
|
radeon.modeset=0 \
|
|
|
|
i915.modeset=0 \
|
|
|
|
nouveau.modeset=0 \
|
|
|
|
cirrus.modeset=0 \
|
|
|
|
mgag200.modeset=0 \
|
|
|
|
nomodeset
|
|
|
|
initrd (loop)/boot/grml${arch}${variant}/initrd.img
|
|
|
|
}
|
|
|
|
|
|
|
|
menuentry 'Forensic mode' {
|
|
|
|
linux (loop)/boot/grml${arch}${variant}/vmlinuz \
|
|
|
|
apm=power-off \
|
|
|
|
boot=live \
|
|
|
|
live-media-path=/live/grml${arch}-${variant}/ \
|
|
|
|
bootid=${bootid} \
|
|
|
|
findiso=${isofile} \
|
|
|
|
nomce \
|
|
|
|
net.ifnames=0 \
|
|
|
|
read-only \
|
|
|
|
nofstab \
|
|
|
|
noraid \
|
|
|
|
nodmraid \
|
|
|
|
nolvm \
|
|
|
|
noautoconfig \
|
|
|
|
noswap \
|
|
|
|
raid=noautodetect
|
|
|
|
initrd (loop)/boot/grml${arch}${variant}/initrd.img
|
|
|
|
}
|
|
|
|
|
|
|
|
menuentry 'Debug mode' {
|
|
|
|
linux (loop)/boot/grml${arch}${variant}/vmlinuz \
|
|
|
|
apm=power-off \
|
|
|
|
boot=live \
|
|
|
|
live-media-path=/live/grml${arch}-${variant}/ \
|
|
|
|
bootid=${bootid} \
|
|
|
|
findiso=${isofile} \
|
|
|
|
nomce \
|
|
|
|
net.ifnames=0 \
|
|
|
|
initcall \
|
|
|
|
verbose \
|
|
|
|
debug=vc \
|
|
|
|
systemd.log_level=debug \
|
|
|
|
systemd.log_target=kmsg \
|
|
|
|
log_buf_len=1M
|
|
|
|
initrd (loop)/boot/grml${arch}${variant}/initrd.img
|
|
|
|
}
|
|
|
|
|
|
|
|
menuentry 'Serial mode' {
|
|
|
|
linux (loop)/boot/grml${arch}${variant}/vmlinuz \
|
|
|
|
apm=power-off \
|
|
|
|
boot=live \
|
|
|
|
live-media-path=/live/grml${arch}-${variant}/ \
|
|
|
|
bootid=${bootid} \
|
|
|
|
findiso=${isofile} \
|
|
|
|
nomce \
|
|
|
|
net.ifnames=0 \
|
|
|
|
video=vesafb:off \
|
|
|
|
console=tty1 \
|
|
|
|
console=ttyS0,9600n8
|
|
|
|
initrd (loop)/boot/grml${arch}${variant}/initrd.img
|
|
|
|
}
|
2021-01-21 11:34:06 -05:00
|
|
|
|
|
|
|
}
|
|
|
|
|
2021-01-21 18:15:20 -05:00
|
|
|
submenu 'GRML Addons >' {
|
|
|
|
|
|
|
|
insmod linux16
|
|
|
|
|
|
|
|
menuentry 'Memtest86+' {
|
|
|
|
linux16 (loop)/boot/addons/memtest
|
|
|
|
}
|
|
|
|
|
|
|
|
menuentry 'iPXE' {
|
|
|
|
linux16 (loop)/boot/addons/ipxe.lkrn
|
|
|
|
}
|
|
|
|
|
|
|
|
menuentry 'Netboot.XYZ' {
|
|
|
|
linux16 (loop)/boot/addons/netboot.xyz.lkrn
|
|
|
|
}
|
|
|
|
|
|
|
|
menuentry 'Grub All-In-One' {
|
|
|
|
linux16 (loop)/boot/addons/allinone.img
|
|
|
|
}
|
|
|
|
|
|
|
|
menuentry 'FreeDOS' {
|
|
|
|
linux16 (loop)/boot/addons/memdisk
|
|
|
|
loopback balder (loop)/boot/addons/balder10.imz
|
|
|
|
initrd (balder)+2880
|
|
|
|
}
|
|
|
|
|
|
|
|
menuentry 'MirOS bsd4grml' {
|
|
|
|
multiboot (loop)/boot/addons/bsd4grml/ldbsd.com
|
|
|
|
module (loop)/boot/addons/bsd4grml/bsd.rd bsd.rd
|
|
|
|
module (loop)/boot/addons/bsd4grml/boot.1 boot.1
|
|
|
|
module (loop)/boot/addons/bsd4grml/boot.2 boot.2
|
|
|
|
module (loop)/boot/addons/bsd4grml/boot.3 boot.3
|
|
|
|
module (loop)/boot/addons/bsd4grml/boot.4 boot.4
|
|
|
|
module (loop)/boot/addons/bsd4grml/boot.5 boot.5
|
|
|
|
module (loop)/boot/addons/bsd4grml/boot.6 boot.6
|
|
|
|
module (loop)/boot/addons/bsd4grml/boot.cfg boot.cfg
|
|
|
|
module (loop)/boot/grub/grub.img grub.img
|
|
|
|
}
|
|
|
|
|
|
|
|
# We don't include the "Boot from first disk" option because presumably you have that in the main menu.
|
|
|
|
|
2021-01-21 11:34:06 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
}
|
2021-01-21 13:20:59 -05:00
|
|
|
|
2021-01-21 18:15:20 -05:00
|
|
|
|