설치용 usb에 있는 부트로더(grub)의 복구방법

안녕하세요 usb를 ext4와 fat32 두 파티션으로 나눠서 부팅디스크로 사용 중입니다

어제까지만 해도 첫 파티션(ext4)에 두 개의 이미지를 넣어 두고 grub1으로 선택 가능했었는데요

우분투(코분투 12.04 lts) 부팅디스크를 윈도우에서 두 번째 파티션 쪽에 설치했습니다

그 이후에는 usb로 부팅하면 우분투만 나와서요

어떻게 하면 첫 번째 파티션에 있던 grub1을 복구하고 그 메뉴에 우분투를 추가해줄 수 있을까요?

정 안되면 두번째 파티션을 지우고 첫 파티션에 우분투 이미지를 넣고 싶은데

우분투는 grub2가 기본으로 되어 있는 것 같아서 가능한지도 잘 모르겠어요

도움 좀 부탁 드려요

grub1의 경우, 현재에는 안쓰이거나, 특수한 상황(grub4dos)의 경우에나 사용됩니다.

grub1의 대부분의 기능은 grub2에서 사용하거나, 대체 가능하고, 추가 기능들도 많기 때문이죠.

사실 부트매니져는 운영체제를 선택하거나, 부팅옵션을 지정하는 용도로 사용하기에,
운영체제 보다 먼저 호출되어 사용되고, 운영체제에 덜 종속적입니다.

예를들어, 윈도우즈 부트매니져는 윈도우즈로 부팅하기 위한 제반기능들만을 포함하고 있지만,
grub4dos의 체인로딩으로 리눅스로 진입할 수 있듯, 방법을 찾아보면 운영체제에 독립적으로 다른 운영체제를 로드할 수 있는 방법이 존재합니다.

깊이 들어가 보자면 grub2에서 윈도우즈를 찾지 못한다면, 곰곰히 생각해보세요.
내가 GRUB2라면 윈도우즈가 설치되었는지 어떻게 체크하고 확인할 수 있겠습니까?
/Windows디렉토리가 존재하면 윈도우즈가 설치된 것일까요?
기본적으로 GRUB2에서는 /bootmgr, /ntldr, /io.sys등을 찾아보고,
해당 파일이 존재하면 윈도우즈 Vista이상, NT이상, DOS호환으로 분류하게 됩니다.
이렇게 판단하기 위해서는 디렉토리및 파일을 검색하고, 확인하는 절차가 필요하기에,
파일시스템을 해석할 기능이 필요합니다.
GRUB2는 기본적으로 이러한 기능을 제공하지만, 윈도우즈에서 NTFS가 아닌 다른 파일시스템으로 포맷되어 있거나(예를 들어 시스템 예약파티션이나 Bitlocker암호화 파티션),
GRUB2가 제대로 해석하지 못할 경우, 윈도우즈를 인식하지 못하거나, 설치되지 않았다고 판단하게 됩니다.

/boot/grub/custom.cfg파일을 다음과 같은 내용으로 만드시고, 리부팅 해보세요.

[code:ciov6c72]
menuentry "Find Windows Vista/7" {
insmod ntfs
insmod ntldr
search -s -f /bootmgr
ntldr /bootmgr
}

menuentry "Find Windows XP/2000/NT" {
insmod ntfs
insmod ntldr
search -s -f /ntldr
ntldr /ntldr
}
[/code:ciov6c72]

리부팅이나 부팅시 부트메뉴의 제일 밑 부분에 Find Windows xxxxxxx 항목이 나올 것입니다.
이것은 /etc/grub.d/41_custom에서 /boot/grub/custom.cfg를 읽게끔 되어 있기에, 다른 것들보다 우선순위가 낮아
맨 나중에 나오게 됩니다.
원하시면 번호를 10_linux보다 빠르게 09등으로 바뀌시고, sudo update-grub 명령을 하시면,
리눅스보다 Find Widnows xxxxxx 항목이 먼저 나오게 될 것입니다.

리눅스는 보통의 경우, 사용자가 원하는 데로 설정할 수 있게 해줍니다.
위의 예도 그러한 배려이지요.

고맙습니다, 좀 더 grub에 대해 찾아보고 공부해봐야겠네요