Jeg kjører en hodeløs serverinstallasjon av arch linux. Den høye frekvensen av kjerneoppgraderinger førte til at jeg opprettholdt hodepine, og jeg ønsker derfor å bytte til lts kjerne .
Jeg har allerede installert linux-lts
og linux-lts-headers
-pakker. Nå har jeg fått begge kjernene installert, men jeg er litt klar over hvordan jeg kan fortsette herfra. docs forklarer :
[…] du må oppdatere bootloader konfigurasjonsfil for å bruke LTS-kjernen og RAM-disken:
vmlinuz-linux-lts
oginitramfs-linux-lts.img
.
Jeg har allerede lokalisert dem i oppstartsseksjonen:
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
Nå fant jeg allerede oppføringer som peker til ikke-lts-kjernen i grub.cfg
men overskriften forteller meg at jeg ikke skal redigere denne filen. Den peker meg på verktøyet grub-mkconfig
i stedet, men jeg kan ikke finne ut hvordan bruker jeg dette verktøyet for å fortelle grub hvilken kjerne og ramdisk du skal bruke.
Hvordan bytte archlinux med grub til lts-kjernen? Hva mer må jeg være forsiktig med når jeg bytter kjernen?
Kommentarer
Svar
Ok, etter at joe pekte meg riktig retning i kommentarer, så gjorde jeg det:
-
Grunnleggende bare installer
pacman -S linux-lts
-
(valgfritt) sjekk om kjerne, ramdisk og reserve er tilgjengelig i
ls -lsha /boot
-
fjern standardkjernen
pacman -R linux
-
oppdater grub-konfigurasjonen
grub-mkconfig -o /boot/grub/grub.cfg
-
reboot
Merk, for syslinux
må du redigere syslinux-konfigurasjonen filen i /boot/syslinux/syslinux.cfg
deretter, bare pek alt til -lts
kjerne.
Kommentarer
- Vær oppmerksom på at det kan være nødvendig å erstatte alle kjernemoduler med deres lts-ekvivalente . f.eks. hvis
acpi_call
tidligere var installert, er det ' sannsynligvis best å også installereacpi_call-lts
modulen vant ' t belastes. - FWIW du kan hoppe over trinn 3 og ha begge kjernene installert samtidig. For meg ble
lts
valgt som standard etter omstart, men jeg kunne også gå inn i grub ' sadvanced options
og velg standardkjernen i stedet. - Mine ble sittende fast ved oppstart av initramfs, og jeg måtte kjøre
sudo mkinitcpio -p linux-lts
manuelt. - og hvordan bytter jeg tilbake?
- trinn 4 er kritisk, ellers må du redigere grub manuelt ved oppstart for å starte riktig kjerne.
Svar
Svaret fra Afri fungerer bra for GRUB, men jeg er bruker UEFI direkte , som er lettere og gjør full bruk av UEFI-hovedkortet.
- Installer
linux-lts
- (valgfritt) Sjekk om LTS-versjonen av kjerne, ramdisk og reserve er tilgjengelig i
/boot
-mappen. -
Generer EFI-oppføringen, på samme måte som du genererte den vanlige Linux-en, men erstatt ram disk og laster med LTS-ene. For eksempel:
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
Legg merke til
--loader
-verdien oginitrd
verdi. Disse filene skal være i/boot
-mappen. -
Start på nytt. Det kan være lurt å justere oppstartsrekkefølgen i hovedkortet før du starter opp i operativsystemet, for eksempel ved å trykke på F12 (avhengig av hovedkortet). Jeg bruker faktisk Hyper-V, som tillater konfigurasjon av oppstartsordre i «Hyper-V Manager».
-
(valgfritt) Etter vellykket oppstart i LTS-kjernen (bekreft med
uname -r
), fjern standardkjernen medpacman -R linux
.
Svar
-
Installer
linux-lts
(eller en hvilken som helst annen kjerne):pacman -S linux-lts
-
Oppdater oppføringen for opplasteren:
$ sudo vim /boot/loader/entries/arch.conf
og endre:
linux /vmlinuz-linux initrd /initramfs-linux.img ↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ linux /vmlinuz-linux-lts initrd /initramfs-linux-lts.img
- Start på nytt og bekreft med
uname -r
Svar
Som Franklin Yu, er jeg også på et system uten GRUB. Jeg trengte å bytte til en annen kjerne og ikke brukte efibootmgr før. Jeg spurte en mer kunnskapsrik venn om dette og han foreslo verktøyet rEFInd , som automatiserer trinnene som Franklin foreslo, og presenterer deg en fin meny ved oppstart av hvilke kjerner du har tilgjengelig. Installasjonen var helt grei, og jeg kunne enkelt bytte kjerneversjoner.
Kommentarer
- I maskinen min (Arch Linux dual boot med Windows + rEFInd ), etter at jeg har installert
lts
-kjernen, må jeg også redigererefind_linux.conf
: endreinitrd=/boot/initramfs-linux.img
tilinitrd=/boot/initramfs-linux-lts.img
.
grub.cfg
-filen./etc/grub.d
– se her