부팅 가능한 파티션이 2개 있는데 ... /dev/sda
그런데 /dev/sda2
PC를 재부팅하면 UEFI 부팅 시스템이 해당 /dev/sda
파티션만 인식합니다.
어떻게 해결할 수 있나요? /dev/sda2
Manjaro ISO를 포함 하도록 boot 및 esp 플래그를 설정했습니다 . /dev/sda
Solus ISO가 포함되어 있습니다. 레거시 부팅이 아닌 UEFI 부팅 시스템을 사용하고 있습니다. /dev/sda2
대신 인식하도록 어떻게 설정할 수 있나요 /dev/sda
?
제가 입력하려는 내용을 더 잘 표현하는 그림이 있습니다.
답변1
UEFI 사양에서는 EFI 시스템 파티셔닝을 위해 FAT32를 지원하는 펌웨어가 필요하지만 다른 파일 시스템 유형도 지원할 수 있습니다. 예를 들어 Apple 장치는 펌웨어 수준에서 HFS+를 지원하며 적어도 일부 Asus 마더보드는 FAT32 외에도 NTFS 및 ISO9660을 지원합니다.
원래는 전체 디스크 장치인 Solus ISO에 쓴 것으로 보입니다 /dev/sda
. 따라서 이미지에는 자체 파티션 테이블이 포함되어 효과적으로 /dev/sda1
생성되어야 합니다. 이것이 isohybrid
바로 준비된 ISO 이미지가 하는 일입니다. 이러한 특별한 준비가 없으면 ISO는 HDD와 같은 저장 장치에 기록될 때 전혀 부팅되지 않습니다.
기술적으로 이 isohybrid
명령은 iso9660 형식의 유연성을 활용하여 파티션 테이블 접두사(MBR 또는 GPT 스타일)를 이미지에 추가한 다음 전체적으로 유효한 ISO 이미지가 되는 것 외에도 구문 분석할 수 있도록 정렬합니다. 원시 디스크 이미지로 여기에는 파티션 테이블과 (일반적으로) ISO9660 파일 시스템이 포함된 단일 파티션이 포함됩니다.
Manjaro ISO도 isohybrid
준비되어 있으면 자체 파티션 테이블도 포함되어 있습니다. ISO를 생성 /dev/sda2
하고 여기에 썼다면 이제 파티션 내부에 파티션 테이블이 있습니다. 이는 확실히 정상이 아닙니다. Linux는 이를 처리할 수 있지만(적어도 losetup
및/또는 kpartx
명령의 도움으로) 시스템 펌웨어가 이를 이해하지 못한다고 해서 전혀 놀라지 않을 것입니다.
(내가 아는 한, ISO 이미지를 기능적 HDD 이미지로도 처리할 수 있도록 하는 배열에는 공식적인 명칭이 없지만 isohybrid
이를 구현하는 최초의 도구인 것 같습니다.)
현재 파티션 구성표는 sda
총 세 가지 방식으로 해석될 수 있습니다.
- "슈퍼 플로피" 구성: 전체 디스크 장치에 유효한 ISO9660 파일 시스템(Solus)을 기록하고
sda
파일 시스템 끝에 정의되지 않은 일부 쓰레기(실제로는 Manjaro ISO)를 씁니다. - 두 개의 파티션, 즉 하나의 ISO9660 파일 시스템(Solus)과 두 번째 ISO9660 파일 시스템(Manjaro)이 있음을 나타내는 유효한 GPT 파티션 테이블입니다.
- 매우 이상한 옵션: GPT 파티션 테이블은 ISO9660 파일 시스템(Solus)과 포함이라는 두 개의 파티션이 있음을 나타냅니다.다른ISO9660 파일 시스템으로 파티션을 정의하는 파티션 테이블(Manjaro)
시스템 펌웨어는 #2 전에 사례 #1을 테스트하는 것으로 나타나므로 설명 #1이 선호됩니다. 불행하게도 이를 재정의하기 위해 할 수 있는 일은 없을 것입니다. 펌웨어에서 UEFI 셸에 액세스할 수 있는 경우 해당 map
명령을 사용하여 펌웨어가 디스크를 어떻게 보는지 확인할 수 있지만 반드시 수정이 허용되는 것은 아닙니다.
내가 아는 한 펌웨어나 운영 체제는 설명 #3을 자동으로 허용하지 않지만 Linux에서는 이러한 작업을 수행해야 하는 경우 kpartx -a /dev/sda2
두 번째 파티션 테이블을 쉽게 구문 분석하고 이에 액세스할 장치를 생성할 수 있습니다./dev/mapper/sda2p1
(파티션된 장치의 VM 시스템 이미지로 설정된 Xen VM을 처리할 때 VM의 시스템 디스크 이미지가 파티션에 있더라도 VM은 이를 전체 디스크로 간주하므로 운영 체제가 중첩된 파티션 구조를 찾을 수 있습니다. 이제 설치 프로그램이 파티션을 분할합니다. 이제 초기 부팅 시 중단된 가상 머신의 일부 파일을 수정하여 다시 성공적으로 부팅해야 하는 경우 지난 주에 했던 것처럼 2차 파티션을 처리할 수 있어야 합니다. . 비슷한 일을 했어요!)