최고의 교사-심승현 선생님편

windows XP와 우분투를 멀티부팅하다 보면 XP가 깨지거나 바이러스에 못쓰게 되어 다시 윈도우즈 엑수피를 다시 설치해야 하는 경우가 있습니다. 그런데 윈도우즈 엑수피를 다시 설치하면 MBR에 설치되어 있던 GRUB도 함께 지워져서 우분투를 띄울 수 없게 됩니다. 예전에는 XP를 다시 설치해야 할 일이 생기면 Grub만 별도로 설치하는 방법을 알 수가 없어서 우분투도 다시 깔아 써야만 했습니다.


며칠 전에도 Windows XP가 깨져서 엑수피를 설치하고 나니 grub가 사라졌지 뭡니까. Grub를 다시 설치하기 귀찮아서 구글의 여러 군데를 찾아다니면서 알아봤는데, 손쉬운 방법을 알아냈습니다. 필요한 분들은 참고하시길.


아래 글 을 2009.10.14자로 수정하였습니다. 이 방법은 GRUB2에도 적용됩니다.


1. 우분투 라이브 시디로 부팅합니다.

2. 터미널 띄웁니다.


~$ sudo fdisk -l


저의 경우 이렇게 나오네요.


Disk /dev/sda: 320.0 GB, 320072933376 bytes
255 heads, 63 sectors/track, 38913 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x223c223b

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1       19122   153597433+   7  HPFS/NTFS
/dev/sda2           19123       38912   158963175    f  W95 Ext'd (LBA)
/dev/sda5           19123       38912   158963143+   7  HPFS/NTFS

Disk /dev/sdb: 160.0 GB, 160041885696 bytes
255 heads, 63 sectors/track, 19457 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x83ba83ba

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1       12748   102398278+   7  HPFS/NTFS
/dev/sdb2           12749       19336    52918110   83  Linux
/dev/sdb3           19337       19457      971932+  82  Linux swap / Solaris


3. 저는 여기에서 우분투가 인스톨되어 있는 /dev/sdb2 를 마운트시키려 합니다. 물론, 대부분이 그렇듯이 마스터 HDD는 sdb1 이겠죠? 당연 마스터 HDD의 MBR에 GRUB를 설치해야 하고요.^^ 여러분의 경우엔 어떻게 해야 하는지 확인해 보세요. 


~$ sudo mount /dev/sdb2 /mnt
~$ sudo mount --bind /dev /mnt/dev
~$  sudo mount --bind /proc /mnt/proc


4.  resolv.conf 라는 파일을 복사합니다.


~$ sudo cp /etc/resolv.conf /mnt/etc/resolv.conf


5. 루트(root)로 들어갑니다.(루트로 들어간 이후엔 더이상 sudo 라는 명령이 필요치 않은 것 아시죠^^)


~$ sudo chroot /mnt


6. 만약 /etc/default/grub 파일을 편집할 필요가 있다면 편집합니다.(대부분은 편집할 일이 없을테니 이 단계는 넘어가도 좋을 듯 합니다. 그래도, GRUB2의 편집에 대해 궁금하신 분은 여기로!)


~# nano -w /etc/default/grub


7. 이제 GRUB를 복구합니다.


~# grub-install /dev/sda


만약 설치가 안되고 에러가 나면


~# grub-install --recheck /dev/sda


8. 마운트된 볼륨들을 해제하고 종료합니다.


~# exit
~$ sudo umount /mnt/dev
~$ sudo umount /mnt/proc
~$ sudo umount /mnt


9. 재부팅 합니다.


~$ sudo reboot


*참고한 페이지(전적으로 복사한 페이지입니다.)

- 우분투 블로그


  • 참특수교육
  • 심돌이네
  • 특수교육 자료실
  • 우분투
  • 커뮤니티
  • 차름


XE Login