Jak zmienić jądro Arch Linuksa na jądro LTS?

Uruchamiam bezgłową instalację serwera arch linux. Wysoki wskaźnik aktualizacji jądra przyprawił mnie o ból głowy i dlatego chcę przełączyć się na jądro lts .

Już zainstalowałem linux-lts i linux-lts-headers. Teraz mam zainstalowane oba jądra, ale nie mam pojęcia, jak kontynuować od tego miejsca. Dokumenty wyjaśniające :

[…] trzeba będzie zaktualizować plik konfiguracyjny programu ładującego do używania jądra LTS i dysku RAM: vmlinuz-linux-lts i initramfs-linux-lts.img.

Znalazłem je już w sekcji rozruchowej:

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 

Teraz znalazłem już wpisy wskazujące na jądro inne niż lts w grub.cfg, ale nagłówek mówi mi, żebym nie edytować tego pliku. Wskazuje mi zamiast tego narzędzie grub-mkconfig, ale nie mogę się tego dowiedzieć jak użyć tego narzędzia, aby powiedzieć grubowi, którego jądra i ramdysku użyć.

Jak przełączyć archlinuxa z grubem na jądro lts? Na co jeszcze muszę uważać przy zmianie jądra?

Komentarze

  • to to najprostsze wywołanie. Narzędzie powinno automatycznie zlokalizować istniejące jądra ( plus dodatkowe bity, takie jak ramdysk, mikrokod itp.) i dodaj je automatycznie. to daje ładny przegląd tego, jak skonfigurować wynikowy plik grub.cfg.
  • także , możesz dodawać wpisy do plików w /etc/grub.d – zobacz tutaj
  • Uruchom grub-mkconfig , sprawdź, czy widzisz sekcję linux-lts w grub.cfg i uruchom ponownie.

Odpowiedz

OK, po tym, jak Joe wskazał mi właściwy kierunek w komentarzach, tak to zrobiłem:

  1. po prostu zainstaluj pacman -S linux-lts

  2. (opcjonalnie) sprawdź, czy jądro, ramdysk i awaryjne są dostępne w ls -lsha /boot

  3. usuń standardowe jądro pacman -R linux

  4. zaktualizuj konfigurację grub grub-mkconfig -o /boot/grub/grub.cfg

  5. reboot

Uwaga, dla syslinux musisz „edytować konfigurację syslinux plik w /boot/syslinux/syslinux.cfg odpowiednio, po prostu wskaż wszystko na -lts jądro.

Komentarze

  • Zauważ, że może być konieczne zastąpienie dowolnych modułów jądra ich odpowiednikami lts . na przykład jeśli acpi_call był wcześniej zainstalowany, ' prawdopodobnie najlepiej jest zainstalować również acpi_call-lts, w przeciwnym razie moduł nie został załadowany ' t.
  • FWIW możesz pominąć krok 3 i zainstalować oba jądra na raz. Dla mnie lts zostało wybrane domyślnie po ponownym uruchomieniu, ale mogłem też przejść do grub ' s advanced options i zamiast tego wybierz standardowe jądro.
  • Mój utknął podczas rozruchu initramfs i musiałem ręcznie uruchomić sudo mkinitcpio -p linux-lts.
  • i jak mam się przełączyć z powrotem?
  • krok 4 jest krytyczny, w przeciwnym razie musisz ręcznie edytować grub podczas rozruchu, aby uruchomić poprawne jądro.

Odpowiedź

Odpowiedź z Afri działa dobrze w GRUB, ale ja używając bezpośrednio UEFI , który jest lżejszy i w pełni wykorzystuje płytę główną UEFI.

  1. Zainstaluj linux-lts
  2. (opcjonalnie) Sprawdź, czy wersja LTS jądra, ramdysku i rezerwy są dostępne w folderze /boot.
  3. Wygeneruj wpis EFI w ten sam sposób, w jaki wygenerowałeś zwykły Linux, ale zastępując pamięć RAM dysk i ładowarkę z LTS. Na przykład:

    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 

    Zwróć uwagę na --loader wartość i initrd wartość. Te pliki powinny znajdować się w folderze /boot.

  4. Uruchom ponownie. Możesz chcieć dostosować kolejność rozruchu na płycie głównej przed uruchomieniem systemu operacyjnego, na przykład naciskając klawisz F12 (w zależności od płyty głównej). Właściwie używam Hyper-V, który umożliwia konfigurację kolejności rozruchu w „Menedżerze Hyper-V”.

  5. (opcjonalnie) Po pomyślnym załadowaniu do jądra LTS (sprawdź to za pomocą uname -r), usuń standardowe jądro za pomocą pacman -R linux.

Odpowiedź

  1. Zainstaluj linux-lts (lub dowolne inne jądro):

    pacman -S linux-lts 
  2. Zaktualizuj wpis programu ładującego:

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

    i zmień:

    linux /vmlinuz-linux initrd /initramfs-linux.img ↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ linux /vmlinuz-linux-lts initrd /initramfs-linux-lts.img 
  3. Uruchom ponownie i potwierdź za pomocą uname -r

Odpowiedź

Podobnie jak Franklin Yu, jestem również w systemie bez GRUB-a. trzeba było przełączyć się na inne jądro i nie korzystałem wcześniej z efibootmgr. Zapytałem o to bardziej znającego się na rzeczy znajomego i zasugerował narzędzie rEFInd , który automatyzuje kroki, które zasugerował Franklin i prezentuje podczas uruchamiania ładne menu z dostępnymi jądrami. Instalacja była całkowicie prosta i mogłem łatwo zmieniać wersje jądra.

Komentarze

  • Na moim komputerze (podwójny rozruch Arch Linux z Windows + rEFInd ), po zainstalowaniu jądra lts muszę również edytować refind_linux.conf: change initrd=/boot/initramfs-linux.img do initrd=/boot/initramfs-linux-lts.img.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *