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

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

저는 아치 리눅스의 헤드리스 서버 설치를 실행하고 있습니다. 커널 업그레이드 속도가 너무 높아 유지 관리에 골치 아픈 부분이 있어서 다음으로 전환해 볼까 합니다.그 핵심.

설치 linux-lts하고 linux-lts-headers패키지를 만들었습니다. 이제 두 커널을 모두 설치했지만 여기에서 어떻게 진행해야 할지 잘 모르겠습니다. 이것문서 설명:

vmlinuz-linux-lts[...] 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. 재시작

이에 따라 syslinux 구성 파일을 편집 syslinux해야 하며 모든 것이 커널을 가리키도록 해야 합니다./boot/syslinux/syslinux.cfg-lts

답변2

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

  1. 설치하다linux-lts
  2. (선택 사항) 폴더를 확인하여 LTS 버전의 커널, 램디스크 및 대체 버전이 사용 가능한지 확인하세요 /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

관련 정보