Como mudar o arch linux para o kernel lts?

Estou executando uma instalação de servidor headless do arch linux. A alta taxa de atualizações do kernel me causou algumas dores de cabeça de manutenção e, portanto, desejo mudar para o kernel lts .

Já instalei o linux-lts e o linux-lts-headers pacotes. Agora, eu tenho os dois kernels instalados, mas não tenho a menor ideia de como continuar a partir daqui. Os documentos explicam :

[…] você precisará atualizar seu arquivo de configuração do bootloader para usar o kernel LTS e o disco RAM: vmlinuz-linux-lts e initramfs-linux-lts.img.

Já os localizei na seção de inicialização:

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 

Agora, já encontrei entradas apontando para o kernel não-lts no grub.cfg, mas o cabeçalho me diz para não editar este arquivo. Ele me aponta para o utilitário grub-mkconfig, mas não consigo descobrir como usar esta ferramenta para dizer ao grub qual kernel e ramdisk usar.

Como trocar o archlinux com o grub para o kernel lts? O que mais eu preciso ter cuidado ao trocar o kernel?

Comentários

Resposta

Ok, depois que joe me indicou a direção certa nos comentários, foi assim que eu fiz:

  1. basicamente, basta instalar pacman -S linux-lts

  2. (opcional) verifique se kernel, ramdisk e fallback estão disponíveis em ls -lsha /boot

  3. remova o kernel padrão pacman -R linux

  4. atualize a configuração do grub grub-mkconfig -o /boot/grub/grub.cfg

  5. reboot

Nota, para syslinux você precisará editar a configuração do syslinux arquivo em /boot/syslinux/syslinux.cfg adequadamente, basta apontar tudo para o -lts kernel.

Comentários

  • Observe que também pode ser necessário substituir quaisquer módulos do kernel por seus equivalentes lts . por exemplo. se acpi_call foi instalado anteriormente, é ' provavelmente melhor instalar também acpi_call-lts, caso contrário o módulo ' não foi carregado.
  • FWIW você pode pular a etapa 3 e ter os dois kernels instalados ao mesmo tempo. Para mim, lts foi selecionado por padrão após a reinicialização, mas eu também poderia ir para grub ' s advanced options e selecione o kernel padrão.
  • O meu travou na inicialização do initramfs e tive que executar manualmente sudo mkinitcpio -p linux-lts.
  • e como faço para voltar?
  • a etapa 4 é crítica, caso contrário, você terá que editar manualmente o grub no momento da inicialização para inicializar o kernel correto.

Resposta

A resposta de Afri funciona bem para o GRUB, mas eu sou usando UEFI diretamente , que é mais leve e faz uso total da placa-mãe UEFI.

  1. Instale linux-lts
  2. (opcional) Verifique se a versão LTS do kernel, ramdisk e fallback estão disponíveis na pasta /boot.
  3. Gere a entrada EFI, da mesma maneira que você gerou o Linux regular, mas substituindo a ram disco e carregador com os LTS. Por exemplo:

    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 

    Observe o valor --loader e initrd valor. Esses arquivos devem estar na pasta /boot.

  4. Reinicialize. Você pode querer ajustar a ordem de inicialização na placa-mãe antes de inicializar no sistema operacional, por exemplo, pressionando F12 (dependendo da sua placa-mãe). Na verdade, eu uso o Hyper-V, que permite a configuração da ordem de inicialização no “Gerenciador Hyper-V”.

  5. (opcional) Depois de inicializar com sucesso no kernel LTS (verifique-o com uname -r), remova o kernel padrão com pacman -R linux.

Resposta

  1. Instale linux-lts (ou qualquer outro kernel):

    pacman -S linux-lts 
  2. Atualize a entrada do carregador de inicialização:

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

    e alterar:

    linux /vmlinuz-linux initrd /initramfs-linux.img ↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ linux /vmlinuz-linux-lts initrd /initramfs-linux-lts.img 
  3. Reinicialize e confirme com uname -r

Resposta

Como Franklin Yu, também estou em um sistema sem GRUB. precisava mudar para um kernel diferente e nunca usei o efibootmgr antes. Perguntei a um amigo com mais conhecimento sobre isso e ele sugeriu a ferramenta rEFInd , que automatiza os passos que Franklin sugeriu e apresenta um menu interessante no momento da inicialização com os kernels disponíveis. A instalação foi totalmente direta e fui capaz de mudar as versões do kernel facilmente.

Comentários

  • Na minha máquina (inicialização dupla do Arch Linux com Windows + rEFInd ), depois de instalar o kernel lts, também preciso editar refind_linux.conf: change initrd=/boot/initramfs-linux.img para initrd=/boot/initramfs-linux-lts.img.

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *