외장 usb에 11.10을 설치했는데.. 외장 hdd를 제거하면 기존것도 부팅이 안됩니다

노트북에 우분투 11.04를 설치해서 사용중입니다.
11.10베타가 나왔길래, usb 외장HDD를 연결해서 여기에 11.10을 설치했습니다.

그런데 이 외장 HDD를 제거하면 기존에 사용하던 리눅스(11.04)도 부팅이 안되네요.
(외장 HDD를 연결하면, 부팅을 선택할수 있는 메뉴가 나타납니다…)

어떻게 하면 기존처럼 노트북만으로 부팅이 가능할까요?

USB를 꽃으신 채로 11.04로 부팅하신 다음 update-grub를 통해서 11.10부트 엔트리를 11.04의 grub설정에 추가하신 다음 grub-install을 통해서 해당 설정을 이용한 grub를 부트섹터에 다시 설치하시면 됩니다.

[code:3bolbsi8]

update-grub

grub-install /dev/sda (자신의 부트디스크에 맞춰서)

[/code:3bolbsi8]

grub-install 명령 등으로 GRUB이 설치될때…
사실은 읽어들일 디스크는 하드코딩됩니다.
설정파일이 아니라 바이너리 코드내에 존재 한다는 것이죠.
grub.cfg라는 부트설정파일을 어디서 읽을지를 결정할 수 없기 때문에…
MBR코드에 이것이 내장되게 되는것입니다.

일단 grub.cfg파일을 읽어 들이게 되면 그담엔 설정된 내용에 따라
부팅할 디스크를 결정하고, 그곳으로 부팅하게 되는것이죠.

예를 들어 grub-install /dev/sdb라고 명령을 입력하여
외장디스크에 GRUB을 설치한다고 했을때…
부팅우선순위가 내장디스크가 높다고 한다면…
내장디스크의 GRUB에서 설정파일을 외장디스크에서 읽게 될 것입니다.
물론 GRUB모듈및 관련파일들도 외장디스크에서 읽게 되겠지요.

헌데… 외장디스크를 꽂지 않았다면…
내장디스크로 부팅하여 외장하드의 설정파일을 읽는 과정에서 실패하게 될 것입니다.
이것이 제가 생각하는 부팅실패의 과정입니다.

그러니까 외장하드의 우선순위를 높여서 내장디스크의 grub이 아닌
외장디스크의 GRUB를 로드하게 하셔야 하지 않을 까 싶습니다.