GNU/Linux >> Znalost Linux >  >> Cent OS

CentOS / RHEL 7:Vysvětlení konfiguračního souboru GRUB2 /boot/grub2/grub.cfg

Konfigurační soubor GRUB2 /boot/grub2/grub.cfg

– Spuštění RHEL 7 GRUB 2 je bootloader. Konfigurační soubor GRUB 2 je /boot/grub2/grub.cfg .
– Tento soubor přímo neupravujte. Použijte grub2-mkconfig příkaz ke generování grub.cfg. Tento příkaz používá skripty šablony v /etc/grub.d a nastavení konfigurace nabídky převzato z /etc/default/grub při generování grub.cfg.
– Soubor /etc/grub2.cfg soubor je symbolický odkaz na /boot/grub2/grub.cfg.

Níže je ukázkový konfigurační soubor GRUB2.

..... (skiped for breivity)
### BEGIN /etc/grub.d/10_linux ###
menuentry 'CentOS Linux (3.10.0-514.el7.x86_64) 7 (Core)' --class centos --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-3.10.0-514.el7.x86_64-advanced-10bac86a-a9be-478c-b63f-46d3ca061e03' {
	load_video
	set gfxpayload=keep
	insmod gzio
	insmod part_msdos
	insmod xfs
	set root='hd0,msdos1'
	if [ x$feature_platform_search_hint = xy ]; then
	  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 --hint='hd0,msdos1'  a52207e4-01fd-4f12-98b7-681d56f21dc5
	else
	  search --no-floppy --fs-uuid --set=root a52207e4-01fd-4f12-98b7-681d56f21dc5
	fi
	linux16 /vmlinuz-3.10.0-514.el7.x86_64 root=/dev/mapper/cl-root ro crashkernel=auto rd.lvm.lv=cl/root rd.lvm.lv=cl/swap rhgb quiet LANG=en_US.UTF-8
	initrd16 /initramfs-3.10.0-514.el7.x86_64.img
}
menuentry 'CentOS Linux (0-rescue-9cdb9ab3246a4b3f9c0849ecd597f25e) 7 (Core)' --class centos --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-0-rescue-9cdb9ab3246a4b3f9c0849ecd597f25e-advanced-10bac86a-a9be-478c-b63f-46d3ca061e03' {
	load_video
	insmod gzio
	insmod part_msdos
	insmod xfs
	set root='hd0,msdos1'
	if [ x$feature_platform_search_hint = xy ]; then
	  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 --hint='hd0,msdos1'  a52207e4-01fd-4f12-98b7-681d56f21dc5
	else
	  search --no-floppy --fs-uuid --set=root a52207e4-01fd-4f12-98b7-681d56f21dc5
	fi
	linux16 /vmlinuz-0-rescue-9cdb9ab3246a4b3f9c0849ecd597f25e root=/dev/mapper/cl-root ro crashkernel=auto rd.lvm.lv=cl/root rd.lvm.lv=cl/swap rhgb quiet
	initrd16 /initramfs-0-rescue-9cdb9ab3246a4b3f9c0849ecd597f25e.img
}
.......

Soubor /etc/default/grub

Nastavení konfigurace menu GRUB 2 jsou převzata z /etc/default/grub při generování grub.cfg. Následuje seznam obsahu souboru /etc/default/grub:

# cat /etc/default/grub
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=cl/root rd.lvm.lv=cl/swap rhgb quiet"
GRUB_DISABLE_RECOVERY="true"

Pokud jsou provedeny změny v kterémkoli z těchto parametrů, musíte spustit grub2-mkconfig a znovu vygenerovat soubor /boot/grub2/grub.cfg. Například:

# grub2-mkconfig –o /boot/grub2/grub.cfg

Hodnoty jsou popsány následovně:
GRUB_TIMEOUT :Čas v sekundách po zobrazení nabídky pro spuštění výchozí položky, pokud není stisknuta klávesa. Výchozí hodnota je 5. Nastavte na 0 pro okamžité spuštění bez zobrazení nabídky nebo na -1, chcete-li čekat neomezeně dlouho.
GRUB_DISTRIBUTOR: Nastaveno distributory GRUB a používá se ke generování více informativních názvů položek menu. Příklad je vyhodnocen jako CentOS Linux Server.
GRUB_DEFAULT Výchozí položka nabídky pro spuštění. Hodnota 0 spustí první položku nabídky. Hodnota 1 spustí druhou položku nabídky. Hodnota uložená dává pokyn GRUB 2, aby nahrál poslední úspěšně načtený operační systém.

Hodnota GRUB_DEFAULT uložená také umožňuje použít grub2-set-default a grub2-reboot příkazy k určení výchozí položky. Tyto dva příkazy jsou popsány následovně:
grub2-set-default :Nastaví výchozí položku pro všechna následující restartování
grub2-reboot :Nastaví výchozí položku pouze pro příští restart

Například s GRUB_DEFAULT=uloženo , následující příkaz nastaví výchozí položku pro všechny následující restarty na druhou položku nabídky:

# grub2-set-default 1

GRUB_DISABLE_SUBMENU :Ve výchozím nastavení příkaz grub2-mkconfig vygeneruje položku nabídky nejvyšší úrovně pro jádro s nejvyšším číslem verze a vloží všechna ostatní nalezená jádra nebo alternativní položky nabídky pro režim obnovy do podnabídky. Nastavení GRUB_DISABLE_SUBMENU=true toto zakáže.
GRUB_TERMINAL_OUTPUT :Výstupní zařízení terminálu. Při zadávání více zařízení oddělte platná jména výstupů terminálu mezerami.
GRUB_CMDLINE_LINUX :Parametry spouštění jádra. Další informace o parametrech spouštění jádra jsou uvedeny na dalším snímku.
GRUB_DISABLE_RECOVERY :Ve výchozím nastavení jsou pro každé jádro Linuxu vygenerovány dvě položky nabídky:jedna výchozí položka a jedna položka pro režim obnovení. Nastavení GRUB_DISABLE_RECOVERY=“true” to zakáže.

Vysvětlení položky nabídky

Konfigurační soubor GRUB 2, /boot/grub2/grub.cfg, obsahuje stanzy nabídky, které představují nainstalované linuxové jádro. Každá stanza začíná klíčovým slovem menuentry s volbami. Každá položka nabídky je také jedinou položkou spouštěcí nabídky v nabídce GRUB 2. Přidružený blok kódu je uzavřen ve složených závorkách { }.

Stanza obsahuje direktivu linux16 následovanou cestou k jádru a direktivu initrd16 následovanou cestou k obrazu initramfs. Direktiva linux16 specifikuje číslo verze jádra, které se má zavést, a také parametry zavádění jádra. Byl vytvořen samostatný oddíl /boot; proto jsou cesty k jádru (stejně jako k obrazu initramfs) relativní k /boot.

Direktiva initrd16 musí ukazovat na umístění souboru initramfs odpovídajícího stejné verzi jádra. Jinými slovy, jádro uvedené na řádku linux16 /vmlinuz-[verze_kernelu] musí odpovídat číslu verze obrazu initramfs uvedenému na řádku initrd16 /initramfs-[verze_kernelu].img každé stanzy.


Cent OS
  1. Jak Linux zpracovává více po sobě jdoucích oddělovačů cest (/home////username///soubor)?

  2. Jak vytvořit nový /bootový oddíl v CentOS / RHEL

  3. Jak změnit výchozí oprávnění /var/log/messages v CentOS/RHEL

  1. Jak zakázat NUMA na spouštěcích zavaděčích EFI pomocí GRUB2 (CentOS/RHEL 6)

  2. Spusťte GRUB2 na GRUB nebo GRUB2 na jiném disku

  3. GRUB2:/boot jako podsvazek BTRFS

  1. Debian – Podporuje Grub2 /boot na Lvm na Md-raid?

  2. CentOS / RHEL 7:Jak upravit argumenty GRUB2 pomocí grubby

  3. Vysvětlení konfiguračního souboru DNS /etc/named.conf