Як переключити арку linux на ядро ​​lts?


24

Я запускаю безголову серверну установку arch linux. Висока швидкість оновлення ядра викликала у мене певний головний біль у підтримці, і тому я хочу перейти на ядро lts .

Я вже встановив linux-ltsі linux-lts-headersпакети. Тепер я встановив обидва ядра, але я трохи не зрозумів, як продовжувати звідси. У документах пояснюють :

[...] вам потрібно буде оновити файл конфігурації завантажувача, щоб використовувати ядро ​​LTS та диск ram: vmlinuz-linux-ltsі initramfs-linux-lts.img.

Я вже розмістив їх у розділі завантаження:

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

Тепер я вже знайшов записи, які вказують на не-lts ядро ​​в, grub.cfgале заголовок каже мені не редагувати цей файл. grub-mkconfigНатомість це вказує мені на утиліту, але я не можу зрозуміти, як за допомогою цього інструменту сказати grub, яке ядро ​​та ramdisk використовувати.

Як переключити archlinux з grub на ядро ​​lts? Що ще я повинен бути обережним при переключенні ядра?


1
це найпростіший виклик. інструмент повинен автоматично розмістити наявні ядра (плюс додаткові біти, такі як ramdisk, мікрокод тощо) та автоматично додати їх. це дає хороший огляд того, як можна налаштувати отриманий grub.cfgфайл.
Джо

також ви можете додавати записи до файлів у /etc/grub.d- дивіться тут
Джо

Запустіть grub-mkconfig, переконайтеся, що ви бачите строфу для linux-lts у grub.cfg та перезавантажте.
fpmurphy

Відповіді:


23

Добре, після того, як Джо вказав мені правильний напрямок у коментарях, ось так я це зробив:

  1. в основному просто встановити pacman -S linux-lts

  2. (необов’язково) перевірте, чи доступні ядро, ramdisk та резервна копія ls -lsha /boot

  3. видаліть стандартне ядро pacman -R linux

  4. оновити конфігурацію grub grub-mkconfig -o /boot/grub/grub.cfg

  5. перезавантажити

Зауважте, syslinuxщо вам потрібно буде відповідно відредагувати конфігураційний файл syslinux /boot/syslinux/syslinux.cfg, просто вкажіть все на -ltsядро.


1
Зауважте, що вам може знадобитися замінити будь-які модулі ядра на їх еквівалент lts. Наприклад, якщо acpi_callраніше було встановлено, можливо, найкраще також встановити acpi_call-lts, інакше модуль не завантажиться.
Ponkadoodle

4
FWIW ви можете пропустити крок 3 і встановити обидва ядра одночасно. Для мене ltsбув вибраний за замовчуванням після перезавантаження, але я також міг зайти в grub advanced optionsі вибрати замість нього стандартне ядро.
Sparhawk

Моя застрягла під час завантаження initramfs, і мені довелося запускати вручну sudo mkinitcpio -p linux-lts.
leetNightshade

і як я перемикаюся назад?
Бендж

3

Відповідь Afri добре працює для GRUB, але я використовую UEFI безпосередньо , що є більш легким і в повній мірі використовує материнську плату UEFI.

  1. Встановити linux-lts
  2. (необов’язково) Перевірте, чи доступні в /bootпапці версії LTS ядра, ramdisk та резервного копіювання .
  3. Створіть запис EFI так само, як ви створили звичайний Linux, але замінивши ramdisk та завантажувач на LTS. Наприклад:

    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
    

    Зверніть увагу на --loaderзначення та initrdзначення. Ці файли повинні бути в /bootпапці.

  4. Перезавантажте. Ви можете скоригувати порядок завантаження в материнській платі перед завантаженням в операційну систему, наприклад, натиснувши F12 (залежно від вашої материнської плати). Я фактично використовую Hyper-V, що дозволяє конфігурацію порядку завантаження в "Hyper-V Manager".

  5. (необов’язково) Після успішного завантаження в ядро ​​LTS (перевірте це uname -r), видаліть стандартне ядро ​​за допомогою pacman -R linux.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.