아치 리눅스를 lts 커널로 전환하는 방법은 무엇입니까?

아치 리눅스를 lts 커널로 전환하는 방법은 무엇입니까?

저는 아치 리눅스의 헤드리스 서버 설치를 실행하고 있습니다. 높은 커널 업그레이드 속도로 인해 유지 관리에 어려움을 겪었기 때문에 커널 업그레이드로 전환하고 싶습니다.lts 커널.

linux-lts이미 및 패키지를 설치했습니다 linux-lts-headers. 이제 두 커널을 모두 설치했지만 여기에서 계속하는 방법을 조금 모르겠습니다. 그만큼문서 설명:

[...] LTS 커널과 램 디스크를 사용하려면 부트로더의 구성 파일 을 업데이트해야 합니다 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에 사용할 커널과 램디스크를 알려주는 방법을 알 수 없습니다.

grub을 사용하여 Archlinux를 lts 커널로 전환하는 방법은 무엇입니까? 커널을 전환할 때 또 무엇을 주의해야 합니까?

답변1

좋습니다. Joe가 댓글에서 올바른 방향을 알려준 후 저는 다음과 같이 했습니다.

  1. 기본적으로 그냥 설치하면 된다pacman -S linux-lts

  2. (선택 사항) 커널, 램디스크 및 폴백을 사용할 수 있는지 확인하세요.ls -lsha /boot

  3. 표준 커널 제거pacman -R linux

  4. 그럽 구성 업데이트grub-mkconfig -o /boot/grub/grub.cfg

  5. 재부팅

그에 따라 syslinuxsyslinux 구성 파일을 편집해야 하므로 /boot/syslinux/syslinux.cfg모든 것을 커널로 지정하면 됩니다 -lts.

답변2

Afri의 답변GRUB에서는 잘 작동하지만 저는UEFI를 직접 사용, 이는 더 가볍고 UEFI 마더보드를 최대한 활용합니다.

  1. 설치하다linux-lts
  2. /boot(선택사항) 폴더 에 LTS 버전의 커널, 램디스크, 폴백이 있는지 확인하세요 .
  3. 일반 Linux 항목을 생성한 것과 동일한 방식으로 EFI 항목을 생성합니다. 단, 램디스크와 로더를 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

에 감사하다이 답변, 다니엘 셰이퍼.다시 찾다추가 편집 없이 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

관련 정보