Boot - jasper-zanjani/dotfiles GitHub Wiki
Bootloaders like GRUB (GRand Unified Bootloader) or u-boot turns on power supplies and scans buses and interfaces to locate the kernel image and the root filesystem. LILO (LInux LOader) is also another bootloader that can be found on older Linux systems (LALOS)
Microcontrollers may be listening when the system is nominally off; they typically have their own BIOS and kernels and are inaccessible from the main system
- Baseboard Management Controller (BMC) responds to wake-on-LAN (WOL)
-
Intel Management Engine (IME)
x86_64software suite for remote management of systems; firmware is based onMinixand runs on the Platform Controller Hub processor, not the main CPU - System Management Mode (SMM) launches UEFI software
initrd (Initial RAM disk) is a temporary file system that's loaded into memory when the system boots
Linux kernel is typically named vmlinux (or vmlinuz when compressed). Kernel ring buffer contains messages related to the Linux kernel. A ring buffer is a data structure that is always the same size; old messages are discarded as new ones come in, once the buffer is full. dmesg is used to see its contents, and the messages are also stored in /var/log/dmesg
When GRUB2 is unable to find the GRUB folder or its contents are missing or corrupted, it displays the prompt
grub rescue>
This means it failed to load the normal module. howtoforge.com
From GRUB rescue prompt:
set prefix=(hd0,1)/boot/grub
set root=(hd0,1)
insmod normal
normal
After booting the system, GRUB should be updated and reinstalled:
Update GRUB config file
update-grubReinstall GRUB
grub-install /dev/sdxInstall GRUB as bootloader
grub-install --target=i386-pc /dev/sdbInstall boot images within a directory other than /boot
grub-install --boot-directoryGenerate GRUB configuration
grub-mkconfig -o /boot/grub/grub.cfgSend output of grub2-mkconfig to the correct location for booting
grub2-mkconfig --output=/boot/grub2/grub.cfgDisable the Nouveau display driver while installing the proprietary Nvidia display driver on Fedora linuxconfig.org
grub2-editenv - set "$(grub2-editenv - list | grep kernelopts) nouveau.modeset=0"Update GRUB config file
update-grub