Grub 위치 - MBR로 갔나요, 아니면 다른 곳으로 갔나요?

Grub 위치 - MBR로 갔나요, 아니면 다른 곳으로 갔나요?

저는 Grub을 부트로더로 사용하여 Linux와 Windows 7의 이중 부팅 설정을 가지고 있습니다.

내 파티션 테이블은 다음과 같습니다.

100 MB System Reserved Windows 7
500 GB Windows 7
100 MB /boot - ext2
500 GB linux, swap, etc.

이 설정을 완료한 후 GRUB가 어디에 설치될지 궁금합니다.

시스템 예약 파티션이 Windows 7의 부팅 파티션인 줄 알았는데 Grub이 이를 덮어쓰면(마스터 부트 레코드에서 가정) Windows 7이 실행되지 않는 것처럼 보입니다.

Grub은 어디에 자체적으로 설치되고 여전히 Windows와 Linux를 모두 가리킬 수 있습니까? 파티션 설정 방법에 따라 달라지나요?

답변1

Windows가 자체적으로 설치되면 부트 로더(XP에서는 NT에서 NTLDR로, 그런 다음 winboot)를 마스터 부트 레코드에 배치하여 boot.ini부트 목록을 표시합니다. 이 목록에서 항목을 선택하면 부트로더의 작업이 완료되고 해당 커널이 드라이브의 실제 파티션에서 부팅됩니다.

Grub은 동일한 작업을 수행합니다. 부트로더는 단지 표시 grub.conf/ menu.lst목록용이며, 일단 무언가를 선택하면 제어권이 일반 파티션으로 전송됩니다. 따라서 grub은 MBR의 NTLDR/winboot를 덮어쓰지만 일반 파티션에서는 아무것도 덮어쓰지 않으며 부팅 목록에서 Windows를 선택하면 Windows 파티션으로 제어권을 전송하는 방법을 알고 있습니다.

답변2

Grub은 드라이브의 마스터 부트 레코드에 자체적으로 설치됩니다. 마스터 부트 레코드는 파티션 자체가 아니라 파티션된 드라이브의 첫 번째 섹터라는 점을 인식하는 것이 중요합니다. 바라보다위키피디아더 많은 정보를 알고 싶다면

이 정보를 사용하여 Grub은 기본적으로 Windows 7 설치의 MBR 정보를 덮어쓰지만 Windows 7에서 생성된 "시스템 예약 파티션"은 건드리지 않습니다(사용자가 요청하지 않는 한). 새로운 MBR은 시스템에 GRUB를 로드하라고 지시하고 GRUB는 올바른 운영 체제가 로드되었는지 확인합니다. 이를 통해 운영 체제 간을 쉽게 전환할 수 있습니다.

답변3

MBR이 아닌 위치에 GRUB를 설치한 유일한 경우는 Mac에서였습니다. 전체 이중 부팅 문제가 Mac에서 상당히 복잡해졌습니다. 일반적으로 GRUB는 MBR에 설치되어 NTLDR을 덮어쓰고 Linux 또는 Windows를 부팅할 수 있게 해줍니다.

답변4

여기에 혼란스러운 것이 있습니다. 우선, 디스크가 분할될 때 각 슬라이스(슬라이스 = 주 파티션)에 "파티션 부트 레코드"가 있다는 것을 알아야 합니다. 디스크를 포맷할 때 첫 번째 섹터를 "부트 섹터"라고 합니다. 부팅 섹터는 부팅 가능으로 표시된 파티션에서 로드되고 실행됩니다.

GRUB은 stage1이라는 이 영역에 512바이트만 갖습니다. 1단계에서는 menu.lst 파일과 기타 모듈을 로드하는 파일인 stage2(또는 1.5)만 로드합니다.

Stage1.5(또는 Stage2)는 적은 양의 코드에서 menu.lst를 로드하므로 이는 파일 시스템에 따라 다릅니다(FS에서 찾을 수 있으려면 /boot/menu.lst가 필요함).

구경하다여기자세히 읽어보세요.

간단히 말해서 Stage1은 MBR에 있지만 GRUB는 stage1뿐만 아니라 Stage1을 제외한 모든 것이 /boot에 있습니다.

관련 정보