Spouštím bezhlavou serverovou instalaci arch linuxu. Vysoká rychlost upgradů jádra mi způsobila určité bolesti hlavy při údržbě, a proto bych chtěl přepnout na lts kernel .
Již jsem nainstaloval linux-lts
a linux-lts-headers
balíčky. Nyní jsem nainstaloval obě jádra, ale jsem trochu bezradný, jak odtud pokračovat. Dokumenty vysvětlují :
[…] budete muset aktualizovat konfigurační soubor bootloaderu pro použití jádra LTS a RAM disku:
vmlinuz-linux-lts
ainitramfs-linux-lts.img
.
Už jsem je našel v zaváděcí sekci:
0 ✓ root@host ~ $ ll /boot/ total 85M 4,0K drwxr-xr-x 4 root root 4,0K 21. Mai 13:46 ./ 4,0K drwxr-xr-x 17 root root 4,0K 4. Apr 15:08 ../ 4,0K drwxr-xr-x 6 root root 4,0K 4. Apr 14:50 grub/ 27M -rw-r--r-- 1 root root 27M 20. Mai 17:01 initramfs-linux-fallback.img 12M -rw-r--r-- 1 root root 12M 20. Mai 17:01 initramfs-linux.img 27M -rw-r--r-- 1 root root 27M 21. Mai 13:46 initramfs-linux-lts-fallback.img 12M -rw-r--r-- 1 root root 12M 21. Mai 13:46 initramfs-linux-lts.img 16K drwx------ 2 root root 16K 4. Apr 14:47 lost+found/ 4,3M -rw-r--r-- 1 root root 4,3M 11. Mai 22:23 vmlinuz-linux 4,2M -rw-r--r-- 1 root root 4,2M 19. Mai 21:05 vmlinuz-linux-lts
Nyní jsem již našel položky ukazující na jiné jádro než lts v grub.cfg
ale záhlaví mi říká, abych tento soubor neupravoval. Místo toho mě to ukazuje na utilitu grub-mkconfig
, ale nemohu přijít na to jak pomocí tohoto nástroje říct grubovi, které jádro a ramdisk použít.
Jak přepnout archlinux s grubem na lts jádro? Co jiného musím být při přepínání jádra opatrný?
Komentáře
Odpovědět
Dobře, poté, co mi Joe ukázal správný směr v komentářích, jsem to udělal takto:
-
v zásadě stačí nainstalovat
pacman -S linux-lts
-
(volitelně) zkontrolujte, zda jsou jádra, ramdisky a záložní zdroje k dispozici v
ls -lsha /boot
-
odebrat standardní jádro
pacman -R linux
-
aktualizovat konfiguraci grub
grub-mkconfig -o /boot/grub/grub.cfg
-
reboot
Poznámka: pro syslinux
budete muset upravit konfiguraci syslinuxu soubor v /boot/syslinux/syslinux.cfg
odpovídajícím způsobem, stačí nasměrovat vše na -lts
jádro.
Komentáře
- Pamatujte, že bude možná nutné nahradit všechny moduly jádra jejich ekvivalentem lts . např. pokud
acpi_call
byl dříve nainstalován, je ' pravděpodobně nejlepší nainstalovat takéacpi_call-lts
, jinak modul se ' nenačte. - FWIW můžete přeskočit krok 3 a nechat si nainstalovat obě jádra najednou. Pro mě byla po restartu ve výchozím nastavení vybrána
lts
, ale také jsem mohl přejít do grub ' sadvanced options
a místo toho vyberte standardní jádro. - Můj uvízl při zavádění systému initramfs a musel jsem ručně spustit
sudo mkinitcpio -p linux-lts
. - a jak se přepnu zpět?
- Krok 4 je zásadní, jinak musíte grub v době bootování ručně upravit, abyste mohli spustit správné jádro.
Odpověď
Odpověď od Afri funguje dobře pro GRUB, ale já jsem přímé použití rozhraní UEFI , které je lehčí a plně využívá základní desku UEFI.
- Nainstalujte
linux-lts
- (volitelně) Zkontrolujte, zda je ve složce
/boot
k dispozici verze LTS jádra, ramdisku a záložní. -
Vygenerujte položku EFI stejným způsobem, jako jste vygenerovali běžný linuxový, ale nahradíte RAM disk a zavaděč s LTS. Například:
efibootmgr --disk /dev/sdX --part Y --create --label "Arch Linux LTS" --loader /vmlinuz-linux-lts --unicode "root=PARTUUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX rw initrd=\initramfs-linux-lts.img" --verbose
Všimněte si hodnoty
--loader
ainitrd
hodnota. Tyto soubory by měly být ve složce/boot
. -
Restartujte. Možná budete chtít upravit pořadí zavádění na základní desce před zavedením do operačního systému, například stisknutím klávesy F12 (v závislosti na vaší základní desce). Vlastně používám Hyper-V, který umožňuje konfiguraci pořadí zavádění v „Správci Hyper-V“.
-
(volitelně) Po úspěšném zavedení do jádra LTS (ověřte jej pomocí
uname -r
), odstraňte standardní jádro pomocípacman -R linux
.
Odpověď
-
Nainstalovat
linux-lts
(nebo jiné jádro):pacman -S linux-lts
-
Aktualizujte položku zavaděče:
$ sudo vim /boot/loader/entries/arch.conf
a změna:
linux /vmlinuz-linux initrd /initramfs-linux.img ↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ linux /vmlinuz-linux-lts initrd /initramfs-linux-lts.img
- Restartujte a potvrďte pomocí
uname -r
Odpověď
Stejně jako Franklin Yu, i já používám systém bez GRUBu. I bylo potřeba přejít na jiné jádro a předtím jsem nepoužíval efibootmgr. Zeptal jsem se na to znalého přítele a navrhl nástroj rEFInd , který automatizuje kroky, které navrhl Franklin, a při spuštění vám nabídne pěkné menu, která jádra máte k dispozici. Instalace byla naprosto přímočará a já jsem mohl snadno přepínat verze jádra.
Komentáře
- V mém stroji (Arch Linux dual boot s Windows + rEFInd ), po instalaci jádra
lts
musím také upravitrefind_linux.conf
: changeinitrd=/boot/initramfs-linux.img
doinitrd=/boot/initramfs-linux-lts.img
.
grub.cfg
soubor./etc/grub.d
– viz zde