Wie stellt man Arch Linux auf den LTS-Kernel um?

Wie stellt man Arch Linux auf den LTS-Kernel um?

Ich verwende eine Headless-Serverinstallation von Arch Linux. Die hohe Anzahl an Kernel-Upgrades bereitete mir einige Wartungsprobleme und ich möchte daher auf dielts-Kernel.

Ich habe die Pakete linux-ltsund bereits installiert linux-lts-headers. Jetzt habe ich beide Kernel installiert, aber ich bin nicht ganz sicher, wie ich von hier aus weitermachen soll. DieDokumente erklären:

[...] müssen Sie die Konfigurationsdatei Ihres Bootloaders aktualisieren, um den LTS-Kernel und die RAM-Disk zu verwenden: vmlinuz-linux-ltsund initramfs-linux-lts.img.

Ich habe sie bereits im Boot-Bereich gefunden:

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

Ich habe bereits Einträge gefunden, die auf den Nicht-LTS-Kernel verweisen, grub.cfgaber der Header sagt mir, dass ich diese Datei nicht bearbeiten soll. grub-mkconfigStattdessen werde ich auf das Dienstprogramm verwiesen, aber ich kann nicht herausfinden, wie ich dieses Tool verwenden kann, um Grub mitzuteilen, welcher Kernel und welche Ramdisk verwendet werden soll.

Wie stelle ich Archlinux mit Grub auf den LTS-Kernel um? Was muss ich sonst noch beim Kernelwechsel beachten?

Antwort1

Okay, nachdem Joe mir in den Kommentaren die richtige Richtung gezeigt hatte, habe ich es folgendermaßen gemacht:

  1. im Grunde einfach installierenpacman -S linux-lts

  2. (optional) prüfen, ob Kernel, Ramdisk und Fallback verfügbar sind inls -lsha /boot

  3. Entfernen Sie den Standardkernelpacman -R linux

  4. Aktualisieren Sie die Grub-Konfigurationgrub-mkconfig -o /boot/grub/grub.cfg

  5. Neustart

Beachten Sie, dass syslinuxSie die Syslinux-Konfigurationsdatei entsprechend bearbeiten müssen. /boot/syslinux/syslinux.cfgRichten Sie einfach alles auf den -ltsKernel aus.

Antwort2

Die Antwort von Afrifunktioniert gut für GRUB, aber ich bindirekt über UEFI, das leichter ist und das UEFI-Motherboard voll ausnutzt.

  1. Installierenlinux-lts
  2. (optional) Überprüfen Sie, ob die LTS-Version des Kernels, der Ramdisk und des Fallbacks im /bootOrdner verfügbar sind.
  3. Generieren Sie den EFI-Eintrag auf die gleiche Weise wie den regulären Linux-Eintrag, ersetzen Sie jedoch Ramdisk und Loader durch die LTS-Einträge. Beispiel:

    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
    

    Notieren Sie sich den --loaderWert und initrdden Wert. Diese Dateien sollten sich im /bootOrdner befinden.

  4. Neustart. Möglicherweise möchten Sie die Startreihenfolge im Motherboard anpassen, bevor Sie das Betriebssystem starten, z. B. durch Drücken von F12 (abhängig von Ihrem Motherboard). Ich verwende tatsächlich Hyper-V, das die Konfiguration der Startreihenfolge im „Hyper-V Manager“ ermöglicht.

  5. (optional) Nach dem erfolgreichen Booten in den LTS-Kernel (überprüfen Sie dies mit uname -r), entfernen Sie den Standardkernel mit pacman -R linux.

Antwort3

  1. Installieren Sie linux-lts(oder einen anderen Kernel):

    pacman -S linux-lts
    
  2. Aktualisieren Sie Ihren Bootloader-Eintrag:

    $ sudo vim /boot/loader/entries/arch.conf 
    

    und ändern:

    linux   /vmlinuz-linux
    initrd  /initramfs-linux.img
    ↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
    linux   /vmlinuz-linux-lts
    initrd  /initramfs-linux-lts.img
    
  3. Neustart und bestätigen mituname -r

Antwort4

Danke fürdiese Antwort, Daniel Shapero.wiederfindenunterstützt Arch ohne zusätzliche Änderungen @dmn. Ich führe zur Installation Folgendes aus refind, insbesondere die „extra_kernel_version_strings“ sind wichtig, das EFI-Verzeichnis gehört Ihnen, führt auch automatisch einen Dual-Boot von Windows durch, falls Sie Windows oder andere Linux-Distributionen darauf haben:

pacman -S refind
mkdir -p /efi/EFI/Boot
cp /usr/share/refind/refind_x64.efi /efi/EFI/Boot/bootx64.efi
cp -r /usr/share/refind/drivers_x64/ /efi/EFI/Boot/
echo 'extra_kernel_version_strings linux,linux-hardened,linux-lts,linux-zen,linux-git;' > /efi/EFI/Boot/refind.conf
echo 'fold_linux_kernels false' >> /efi/EFI/Boot/refind.conf
echo 'default_selection "linux from"' >> /efi/EFI/Boot/refind.conf

verwandte Informationen