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
iinitramfs-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
Odpowiedz
OK, po tym, jak Joe wskazał mi właściwy kierunek w komentarzach, tak to zrobiłem:
-
po prostu zainstaluj
pacman -S linux-lts
-
(opcjonalnie) sprawdź, czy jądro, ramdysk i awaryjne są dostępne w
ls -lsha /boot
-
usuń standardowe jądro
pacman -R linux
-
zaktualizuj konfigurację grub
grub-mkconfig -o /boot/grub/grub.cfg
-
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 ' sadvanced 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.
- Zainstaluj
linux-lts
- (opcjonalnie) Sprawdź, czy wersja LTS jądra, ramdysku i rezerwy są dostępne w folderze
/boot
. -
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ść iinitrd
wartość. Te pliki powinny znajdować się w folderze/boot
. -
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”.
-
(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ź
-
Zainstaluj
linux-lts
(lub dowolne inne jądro):pacman -S linux-lts
-
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
- 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
: changeinitrd=/boot/initramfs-linux.img
doinitrd=/boot/initramfs-linux-lts.img
.
grub.cfg
./etc/grub.d
– zobacz tutaj