====== Boot Linux ======
Boot process[(https://documentation.suse.com/sles/12-SP5/html/SLES-all/cha-boot.html)]:
- Initialization and Boot Loader Phase
- Kernel Phase
* Initial Ramdisk (initramfs)
* init on initramfs
* Loading Kernel Modules
* Providing Block Special Files
* Managing RAID and LVM Setups
* Managing the Network Configuration
- (userspace) init phase
* usually systemd
===== EFI =====
==== EFISTUB (boot kernel directly) ====
=== Arch Linux ===
[[https://wiki.archlinux.org/index.php/EFISTUB|EFISTUB Arch wiki entry]]
efibootmgr --disk /dev/sdX --part Y --create --label "Arch Linux" --loader /vmlinuz-linux --unicode 'root=PARTUUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX rw initrd=\initramfs-linux.img' --verbose
if you need [[https://wiki.archlinux.org/index.php/microcode|ucode]], add it as first initramfs:
… initrd=/cpu_manufacturer-ucode.img initrd=/initramfs-linux.img
==== Grub2 ====
=== Debian ===
grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=debian --recheck
update-grub
===== dual boot with other systems =====
==== Windows ====
=== Windows gets the time wrong ===
Reason: Clock is set in UTC, Windows thinks it's local time.
Solution:
* Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation]
"RealTimeIsUniversal"=dword:00000001
* Disable Windows time service sc config w32time start= disabled
See also: https://help.ubuntu.com/community/UbuntuTime#Multiple_Boot_Systems_Time_Conflicts
===== Troubleshooting =====
^ show boot options (Kernel command line) | ''cat /proc/cmdline'' |
===== Further reading =====
* [[https://documentation.suse.com/sles/12-SP5/html/SLES-all/cha-boot.html|Introduction to the boot process (SLES 12 SP5)]]