Arch Linuxをltsカーネルに切り替えるには?

Arch Linuxをltsカーネルに切り替えるには?

私はアーチLinuxのヘッドレスサーバーのインストールを実行しています。カーネルのアップグレード速度が高すぎてメンテナンスに面倒な部分があるので、次に切り替えてみましょう。その中核

インストールlinux-ltsしてlinux-lts-headersパッケージを作成しました。今、私は両方のカーネルをインストールしましたが、ここでどのように進むべきかわかりません。これ文書の説明:

vmlinuz-linux-lts[...] LTSカーネルとRAMディスクを使用するには、ブートローダの設定ファイルを更新する必要があります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に使用するカーネルとRAMディスクを教える方法がわかりません。

grubを使ってArchlinuxをltsカーネルに切り替えるには?カーネルを切り替えるときに何に注意する必要がありますか?

答え1

さて、Joeがコメントで正しい方向を知らせた後、私がしたことは次のとおりです。

  1. 基本的にインストールするだけですpacman -S linux-lts

  2. (オプション)カーネル、RAMディスク、フォールバックが利用可能であることを確認してください。ls -lsha /boot

  3. 標準カーネルの削除pacman -R linux

  4. グラップ構成の更新grub-mkconfig -o /boot/grub/grub.cfg

  5. 再起動

これにより、syslinux設定ファイルを編集し、syslinuxすべてがカーネルを指すようにする必要があります。/boot/syslinux/syslinux.cfg-lts

答え2

アフリカの答えGRUBではうまく動作しますが、私はUEFIを直接使用、より軽く、UEFIマザーボードを最大限に活用します。

  1. インストールするlinux-lts
  2. (オプション)フォルダを確認して、LTSバージョンのカーネル、RAMディスク、および代替バージョンが利用可能であることを確認してください/boot
  3. 通常のLinuxエントリと同じ方法でEFIエントリを作成しますが、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を使用しています。

  5. (オプション)LTSカーネルで正常に起動した後(検証を使用)、uname -r標準カーネルアンインストールを使用しますpacman -R linux

答え3

  1. インストールlinux-lts(または他のカーネル):

    pacman -S linux-lts
    
  2. ブートローダエントリを更新します。

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

    そして変更:

    linux   /vmlinuz-linux
    initrd  /initramfs-linux.img
    ↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
    linux   /vmlinuz-linux-lts
    initrd  /initramfs-linux-lts.img
    
  3. 再起動して確認してくださいuname -r

答え4

ありがとうこの回答、Daniel Shapero再検索Archをサポートし、追加の編集は不要です。 @dmnインストールするには、次の手順を実行しますrefind。特に「extra_kernel_version_strings」が重要です。 EFIディレクトリはあなたのものです。 Windowsまたは他のLinuxディストリビューションがある場合、Windowsも自動的にデュアルブートされます。

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

関連情報