/boot 파티션을 재설정하는 방법

/boot 파티션을 재설정하는 방법

Ubuntu 20.04가 설치된 부팅 가능한 USB가 있습니다. 어제 Arch Linux로 듀얼부팅을 시도했는데 성공했습니다.

먼저 Arch Linux를 설치하고 부팅 파티션을 /mnt/boot. 그 후 아치리눅스 파티션을 포맷하고 다시 설치했는데 부트파티션이 설치되지 않더군요.

이제 GRUB의 첫 번째 Ubuntu 옵션은 Arch Linux 옵션과 마찬가지로 Arch Linux 부팅을 시도하고 실패합니다. Ubuntu로 부팅하려면 고급 옵션을 사용하고 5.15.0-46-generic 커널을 지정하는 옵션을 선택해야 했습니다.

amd-ucode.img이 문제를 해결하려면 Arch Linux에서 만든 것을 삭제 하고 Grub 옵션을 편집하는 것이 안전할 것이라고 생각했습니다 intel-ucode.img(Arch로 부팅하고 실패한 첫 번째 옵션을 제거하고 Ubuntu로 부팅하는 옵션을 맨 위로 이동). 하지만 Arch 실행 옵션을 어떻게 수정합니까?vmlinux-linuxgrub-customizer

(우분투로 부팅)

출력 ls /boot -lah:

drwxr-xr-x  5 root root 4,0K Ağu 31 20:37 .
drwxr-xr-x 20 root root 4,0K Ağu 29 23:56 ..
-rw-r--r--  1 root root  50K Tem 15 13:16 amd-ucode.img
-rw-r--r--  1 root root 252K Haz  3 01:48 config-5.13.0-48-generic
-rw-r--r--  1 root root 257K Ağu  4 21:44 config-5.15.0-46-generic
drwxr-xr-x  5 root root 4,0K Eyl  1 11:59 grub
drwxr-xr-x  5 root root 4,0K Ağu 31 14:00 grub.bak
-rw-------  1 root root  34M Ağu 31 20:38 initramfs-linux-fallback.img
-rw-------  1 root root 8,7M Ağu 31 20:37 initramfs-linux.img
lrwxrwxrwx  1 root root   28 Ağu 30 23:25 initrd.img -> initrd.img-5.15.0-46-generic
-rw-r--r--  1 root root  62M Ağu 26 11:34 initrd.img-5.13.0-48-generic
-rw-r--r--  1 root root  67M Ağu 30 23:27 initrd.img-5.15.0-46-generic
lrwxrwxrwx  1 root root   28 Ağu 30 23:25 initrd.img.old -> initrd.img-5.13.0-48-generic
-rw-r--r--  1 root root 5,0M Ağu  9 21:43 intel-ucode.img
drwx------  2 root root  16K Kas  9  2021 lost+found
-rw-r--r--  1 root root 179K Ağu 18  2020 memtest86+.bin
-rw-r--r--  1 root root 181K Ağu 18  2020 memtest86+.elf
-rw-r--r--  1 root root 181K Ağu 18  2020 memtest86+_multiboot.bin
-rw-------  1 root root 5,7M Haz  3 01:48 System.map-5.13.0-48-generic
-rw-------  1 root root 6,0M Ağu  4 21:44 System.map-5.15.0-46-generic
lrwxrwxrwx  1 root root   25 Ağu 30 23:25 vmlinuz -> vmlinuz-5.15.0-46-generic
-rw-------  1 root root 9,8M Haz  3 01:50 vmlinuz-5.13.0-48-generic
-rw-------  1 root root  11M Ağu  4 21:47 vmlinuz-5.15.0-46-generic
-rw-r--r--  1 root root  11M Ağu 31 20:37 vmlinuz-linux
lrwxrwxrwx  1 root root   25 Ağu 30 23:25 vmlinuz.old -> vmlinuz-5.13.0-48-generic

grub-customizer의 부팅 옵션:

grub-customizer의 부팅 옵션

답변1

너는 운이 좋아. 나는 게시 된 답변에 동의하지 않습니다GRUB은 Ubuntu 및 Arch Linux 설치의 커널/initramfs를 혼동합니다.그리고 Arch와 Ubuntu는 /boot공유 파티션을 통해 완전히 공존할 수 있다고 주장합니다.

에서 /boot이러한 파일은 Arch(커널 및 initramfs)에 속합니다.

initramfs-linux-fallback.img
initramfs-linux.img
vmlinuz-linux

다음 파일은 Ubuntu에 속합니다.

initrd.img
initrd.img-*-generic
vmlinuz
vmlinuz-*-generic

보시다시피 겹치는 부분이 없습니다. 두 시스템이 경쟁하는 유일한 것은 GRUB 구성입니다 /boot/grub/grub.cfg.

sudo update-grub내가 아는 한 Ubuntu를 부팅하고 실행하는 것이 좋습니다 . 이렇게 하면 Arch 커널이 Ubuntu 커널로 착각되어 잘못된 항목이 생성됩니다. 이런 일이 발생하는 것을 방지할 수 있는 방법이 없다는 것을 알고 있으므로 무시해야 한다고 생각합니다.

계속해서 새 파일을 추가 /boot/grub/custom.cfg하고 Arch 시작을 위한 새 항목을 수동으로 정의할 수 있습니다.

menuentry 'Arch Linux' {
  insmod gzio
  insmod ext2
  search --no-floppy --fs-uuid --set=root <SOMEUUID> ← copy this line from one of the autogenerated Ubuntu entries
  linux /boot/vmlinuz-linux rw root=UUID=<SOMEOTHERUUID> ← put the UUID of your arch linux installation here
  initrd    /boot/initramfs-linux.img
}

를 실행하여 UUID를 찾을 수 있습니다 sudo blkid.

새로운 릴리스를 즐겨보세요!

참고: Arch를 실행한 경우에도 동일한 일이 발생합니다. 그렇다면 동일한 문제가 발생할 수 있지만 그 반대입니다. update-grubArch에서 실행할 때 Ubuntu 커널에 대해 사용할 수 없는 항목이 생성될 수 있습니다. 만약을 대비해 사용 가능한 Ubuntu 항목 중 하나를 grub.cfg에서 으로 복사하는 것이 좋습니다 .custom.cfg

관련 정보