멀티 부트 시스템을 설정했습니다. 시스템에는 3 개의 드라이브가 있습니다. 멀티 부트는 첫 번째 드라이브에 Windows XP, Windows 7 및 Ubuntu로 구성됩니다. 나는 드라이브에 많은 파티션되지 않은 공간을 남겨두고 다른 OS를 추가하고 나중에 파일을 저장하기 위해 예약했습니다.
어느 날 나는 Partition Wizard를 다운로드하여 Windows 7에서 논리 NTFS 파티션을 만들었지 만 여전히 파티션되지 않은 공간이 남아 있습니다. 며칠 후에 컴퓨터를 재부팅 할 때까지 모든 것이 제대로 작동했습니다.
지금 나는 얻는다 :
error: unknown filesystem.
grub rescue>
우선 다음과 같이 시도하여 어떤 종류의 도움 명령도 찾지 않는 것에 놀랐습니다.
help
, ?
, man
, --help
, -h
, bash
, cmd
, 등
이제 부팅 할 수없는 시스템이 붙어 있습니다. 문제를 조사하고 사람들이 일반적으로 Live CD로 부팅하여 문제를 해결하는 것이 좋습니다. Live CD가 없어도 grub 복구 내에서이 문제를 해결할 수있는 방법이 있습니까?
최신 정보
Persist 명령에서 GRUB rescue로 입력 한 단계를 수행 하여 initramfs 프롬프트로 부팅 할 수있었습니다. 그러나 그 이상은 아닙니다.
지금까지 grub rescue 에 대한 설명서를 읽지 않고 ls
명령을 사용하여 드라이브와 파티션을 볼 수있었습니다 . 첫 번째 하드 드라이브의 경우 다음을 참조하십시오 :
(hd0) (hd0, msdos6) (hd0, msdos5) (hd0, msdos2) (hd0, msdos1)
ls (hd0,msdos6)/
디렉토리를 나열하기 때문에 (hd0, msdos6)에 Linux가 포함되어 있음을 알고 있습니다 . 다른 사람들은 "오류 : 알 수없는 파일 시스템"을 줄 것입니다.
업데이트 2
다음 명령을 수행 한 후 이제 부팅 메뉴로 이동하여 Windows 7 및 Ubuntu로 부팅 할 수 있지만 재부팅시이 단계를 반복해야합니다.
ls
ls (hd0,msdos6)/
set root=(hd0,msdos6)
ls /
set prefix=(hd0,msdos6)/boot/grub
insmod /boot/grub/linux.mod
normal
업데이트 3
감사합니다 Shashank Singh, 귀하의 지시에 따라 다음 단계를 단순화했습니다. 난 그냥 6으로 난 그냥 할 수있는 msdos6 대체 할 수 있다고에서 배운 insmod normal
대신 insmod /boot/grub/linux.mod
. 이제 OS로 부팅하지 않고 grub 자체 에서이 설정을 저장하는 방법을 알아 내야합니다.
set root=(hd0,6)
set prefix=(hd0,6)/boot/grub
insmod normal
normal
업데이트 4
글쎄, 리눅스로 부팅하는 것이 필요해 보인다. 우분투로 부팅 한 후 매뉴얼에 설명 된 다음 단계를 수행했습니다 .
sudo update-grub
sudo grub-install /dev/sda
이 문제는 해결되지 않았습니다. 그래 브 구조 프롬프트가 계속 나타납니다. 영구적으로 수정하려면 어떻게해야합니까?
또한 일부 명령의 경우 hd0에서와 같은 드라이브 번호를 / dev / sda 에서처럼 드라이브 문자로 변환해야한다는 것을 알았습니다. hd1은 sdb, hd2는 sdc 등이됩니다. grub에 (hd0, msdos6)로 나열된 파티션은 / dev / sda6으로 변환됩니다.
업데이트 5
다음이 왜 grub을 수정하지 않았는지 알 수 없었습니다.
sudo update-grub
sudo grub-install /dev/sda
따라서 https://help.ubuntu.com/community/Boot-Repair 게시물 의 답변을 기반으로 부팅 복구 를 다운로드 했습니다. "권장 복구 (가장 자주 발생하는 문제 복구)"옵션을 선택한 후에는 트릭을 수행하는 것 같습니다.