Grub 항목이 시작되지 않았습니다.

Grub 항목이 시작되지 않았습니다.

최근에 grub 설치가 중단되었습니다. Ubuntu 배포판과 Arch Linux 배포판에서 다음 명령을 실행하여 문제를 해결하려고 했습니다.

sudo os-prober
sudo grub-mkconfig /boot/grub/grub.cfg
sudo grub-install --efi-directory=/boot/EFI /dev/nvme0n1

이제 grub은 설치된 모든 운영 체제를 다시 표시하며 이를 사용하여 설치된 두 운영 체제 모두로 부팅할 수 있습니다. 그러나 한 메뉴 항목에서는 여전히 해당 Linux 배포판을 부팅할 수 없습니다. 선택하면 노트북의 시작 화면(큰 Lenovo 아이콘)이 나타나고 그 이후에는 아무 일도 일어나지 않습니다. 이 문제를 해결하는 방법에 대한 팁이 있거나 문제가 시작되지 않는 이유에 대한 추가 정보를 수집할 수 있습니까?

다음에서 로드되지 않은 grub 메뉴 항목 /boot/grub/grub.cfg:

menuentry 'Arch Linux (rolling) (on /dev/nvme0n1p2)' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'osprober-gnulinux-simple-c53daa31-996c-468d-bd57-df5b73cb87cc' {
        savedefault
        insmod part_gpt
        insmod fat
        if [ x$feature_platform_search_hint = xy ]; then
          search --no-floppy --fs-uuid --set=root  0DD8-ECF1
        else
          search --no-floppy --fs-uuid --set=root 0DD8-ECF1
        fi
        linux /vmlinuz-linux root=UUID=c53daa31-996c-468d-bd57-df5b73cb87cc rw loglevel=3 quiet
        initrd /intel-ucode.img
}

UUID가 53daa31-996c-468d-bd57-df5b73cb87cc올바른 드라이브( /dev/nvme0n1p5)에 해당하고 명령의 UUID가 EFI Boot search에 해당하는지 blkid로 다시 확인했습니다./dev/nvme0n1p1

편집하다:@Recct가 제안한 대로 "quiet"을 제거하고 로그 수준을 7로 높였습니다. 그러면 아래 그림에서 오류가 발생합니다. 가장 관련성이 높은 부분은 다음과 같습니다.

No filesystem could mount root, tried:

Kernell panic - not syncing VFS: Unable to mount root fs on unknown-block(0, 0)

잘못된 이미지

편집 2:

이제 두 번째로 grub.cfg 파일에 다른 배포판을 성공적으로 추가했고 이번에는 부팅되었으므로(내가 무엇을 했는지 잘 모르겠습니다) initrd 명령에 /initramfs-linux.img를 추가하는 것은 본질적으로 변경입니다.

내가 이해한 바로는 이 파일은 /etc/grub.d 및 /etc/default/grub을 기반으로 grub-mkconfig에 의해 자동으로 생성되어야 합니다. 이 문제를 영구적으로 해결하려면 /etc/grub.d의 설정을 어떻게 변경해야 합니까?

menuentry 'Arch Linux' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-c53daa31-996c-468d-bd57-df5b73cb87cc' {
    savedefault
    load_video
    set gfxpayload=keep
    insmod gzio
    insmod part_gpt
    insmod fat
    search --no-floppy --fs-uuid --set=root 0DD8-ECF1
    echo    'Loading Linux linux ...'
    linux   /vmlinuz-linux root=UUID=c53daa31-996c-468d-bd57-df5b73cb87cc rw  loglevel=7 
    echo    'Loading initial ramdisk ...'
    initrd  /intel-ucode.img /initramfs-linux.img
}
submenu 'Advanced options for Arch Linux' $menuentry_id_option 'gnulinux-advanced-c53daa31-996c-468d-bd57-df5b73cb87cc' {
    menuentry 'Arch Linux, with Linux linux' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-advanced-c53daa31-996c-468d-bd57-df5b73cb87cc' {
    savedefault
        load_video
        set gfxpayload=keep
        insmod gzio
        insmod part_gpt
        insmod fat
        search --no-floppy --fs-uuid --set=root 0DD8-ECF1
        echo    'Loading Linux linux ...'
        linux   /vmlinuz-linux root=UUID=c53daa31-996c-468d-bd57-df5b73cb87cc rw  loglevel=3 quiet
        echo    'Loading initial ramdisk ...'
        initrd  /intel-ucode.img /initramfs-linux.img
    }
    menuentry 'Arch Linux, with Linux linux (fallback initramfs)' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-fallback-c53daa31-996c-468d-bd57-df5b73cb87cc' {
    savedefault
        load_video
        set gfxpayload=keep
        insmod gzio
        insmod part_gpt
        insmod fat
        search --no-floppy --fs-uuid --set=root 0DD8-ECF1
        echo    'Loading Linux linux ...'
        linux   /vmlinuz-linux root=UUID=c53daa31-996c-468d-bd57-df5b73cb87cc rw  loglevel=3 quiet
        echo    'Loading initial ramdisk ...'
        initrd  /intel-ucode.img /initramfs-linux-fallback.img
    }
    menuentry 'Arch Linux, with Linux linux (recovery mode)' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-recovery-c53daa31-996c-468d-bd57-df5b73cb87cc' {
        load_video
        set gfxpayload=keep
        insmod gzio
        insmod part_gpt
        insmod fat
        search --no-floppy --fs-uuid --set=root 0DD8-ECF1
        echo    'Loading Linux linux ...'
        linux   /vmlinuz-linux root=UUID=c53daa31-996c-468d-bd57-df5b73cb87cc rw single 
        echo    'Loading initial ramdisk ...'
        initrd  /intel-ucode.img /initramfs-linux-fallback.img
    }
}

관련 정보