BTRFS 파티션에 Manjaro Linux를 설치했고 "부팅"을 위한 별도의 파티션을 만들지 않았습니다. 나는 이중 부팅 중이며 Grub이 나의 마지막 선택을 기억하기를 바랍니다. 이 작업을 수행하기 위해 튜토리얼을 따랐지만 시작 시 "스파스 파일은 허용되지 않습니다"라는 메시지가 표시되기 시작했습니다. 일부 검색 후에는 파티션이 BTRFS일 때 Grub이 설정을 저장할 수 없는 것 같습니다.
이 포럼 페이지(https://archived.forum.manjaro.org/t/solved-grub-btrfs-error-sparse-file-not-allowed/70031/4) 마지막 선택 항목 저장을 비활성화하는 허용되는 답변이 있지만 나는 그것을 원합니다. "예를 들어 Grub 변수의 기본 위치를 /boot/grub...에서 /boot/efi/EFI/Manjaro(Grub 변경 필요)로 변경합니다."라는 또 다른 답변이 있지만 그는 아무 것도 제공하지 않습니다. 추가 정보 세부 사항. 위치를 로 어떻게 변경할 수 있나요 /boot/efi/EFI/Manjaro
?
답변1
이 접근 방식의 결과에 대해 잘 모르겠지만 루트 btrfs 파티션이 있는 Ubuntu 22.04에서 저에게 효과적이었습니다. 시스템이 작동하지 않을 수 있으므로 주의해서 진행하는 것이 좋습니다.
- grub을 ESP 파티션에 복사합니다.
sudo cp -r /boot/grub /boot/efi/grub
- ESP 경로를 가리키도록 업데이트
/boot/efi/EFI/ubuntu/grub.cfg
(이 경로는 Manjaro에서는 다를 수 있습니다. 포함된 폴더를 찾으세요 ).grub.cfg
기존 구성 사용:
search.fs_uuid 1cc8a1e1-9d10-46e9-8e65-3b27047374a4 root
set prefix=($root)'/@/boot/grub'
configfile $prefix/grub.cfg
업데이트 search.fs_uuid
및 prefix
. search.fs_uuid
는 ESP 파티션의 ID여야 합니다.
search.fs_uuid 5494-0F80 root
set prefix=($root)'/grub'
configfile $prefix/grub.cfg
- 마운트를 편집 하고 에
/etc/fstab
바인딩합니다 . 마운트할 항목이 이미 있어야 합니다 ./boot/efi/grub
/boot/grub
/boot/efi
UUID=5494-0F80 /boot/efi vfat umask=0077 0 1
/boot/efi/grub /boot/grub none defaults,bind 0 0
- (선택 사항) 이전
/boot/grub
폴더를 삭제하거나 이름을 바꿉니다.
sudo mv /boot/grub /boot/grub-old
sudo mkdir /boot/grub
- 바인딩 바인딩은
/boot/grub
다음에서 제공됩니다/boot/efi/grub
.
sudo mount /boot/grub
그럽 구성을 재생성합니다. 이 단계에서는 Grub Customizer를 사용하고 이전에 실행된 항목 사용을 활성화했습니다.
재시작