GRUB 복구,복원하기 (grub rescue)

#이 포스트는 이번에 grub를 복구할일이 생겨서, 아래포스트의 설명대로 실행해서 성공했기에, 
그것을 함께하기 위해 그과정을 녹화하고 자료로 만들어 올린것입니다.
http://www.upubuntu.com/2011/08/how-to-repairreinstall-grub-boot-loader.html

이번엔 ,GRUB를 지워 없애는 제거하기 말고,

어쩌다 보니 GURB 에러가 생겨서 그 황망한 검은 스크린이 떴을때
허허...허허...헛웃음만 나올때 ,어쩌나....라고 말도 안나올때를 위한 방법입니다.
Grub제거 하기는 이글을 참고 하세요
http://bagjunggyu.blogspot.kr/2012/09/grub.html 

Grub복구 패키지를 이용해서 복구하는 방법를 알려드리겠습니다.

시동부터 Live-cd 모드로 가셔야 합니다.
Mint 설치 usb 가지고 계시죠? (혹은 Ubuntu 설치 usb )
그 설치 usb를 가지고,시동을 걸어주세요

Windows에서 Linux Mint booting usb 만들기는 여기,

http://bagjunggyu.blogspot.kr/2012/09/maya_26.html

Linux Mint에서 Booting usb 만들기는 여기에 있습니다.

http://bagjunggyu.blogspot.kr/2012/11/linux-mint-maya-booting-usb.html

자 그럼 시작하겠습니다.


Mint Live-cd 화면입니다.이 live-cd 를 사용하면요,

하드디스크의 드륵드륵 소리가 나지 않아서,조용한 운영체제라고 불러도 되겠어요
어쩜 전기자동차를 타면 이런 기분이려나요?전기자동차와 기름자동차의 운전감?
그리고,속도도 아주 빠르고 좋아요 (설치된것만은 아니지만,빠릅니다.) 
들어가셔서 터미널을 실행해 주세요,Live-cd 모드에서도 단축키 설정 할수 있답니다.

2017-02-13 P.S)
GPT 타입의 장비에서는 bios_grub라는 플래그를 싣는 파티션을 따로 만들어 줘야합니다.
크기는 2MB 정도구요, Gparted 로 만들 땐 파일 시스템은 ext2로 했습니다.
나중에 bios_grub 플래그를 달면 파일 시스템은 미지정으로 바더군요.
GPT 타입의 장비를 이용하시는 분들 꼭! bios_grub 플래그를 위한 파티션 2MB 만드세요.


저장소를 추가해주는 일입니다.터미널에 이렇게 쳐주세요
sudo add-apt-repository ppa:yannubuntu/boot-repair
그리고 ,Enter를 치라고 나오면 Enter를 쳐주세요

저장소가 추가되면 update를 해줍니다.

sudo apt-get update 

업데이트가 되었으면,설치를 시작하겠습니다.

sudo apt-get install boot-repair

다되었습니다.이젠 그 패키지를 찾아서 실행해 주면 됩니다.

여기있군요,Recommended(권장하는) 방법으로 해주세요
Advanced Option 가면 자세히 설정해주는 것이 있지만,
보통(Windows에다, 리눅스를 하나더 이용하는 경우) 권장하는 대로 해야 기본설정대로 복원이 됩니다.

다되면 이런 화면이 나옵니다.

와우 드디어 해결했습니다.

Tutorial은 youtube에 있습니다.480p이상의 큰화면, 전체화면보기를  권장합니다.


P.S)
하지만,여러가지 OS를 사용하는 경우에는 Advanced option에 가서 직접 
Grub를 읽을 os를 결정해주어야 합니다.
혹은,이 작업을 통해 Grub를 읽을 OS를 바꿀 수 있는 것이기도 합니다.
아래 그림처럼 ,Advanced options-고급설정 - GRUB의 위치에 가셔서 Grub를 읽을 os를 정해주세요
grub의 위치는 MBR (/dev/sda)에 자동으로 설정될겁니다.
그리고 적용을 누르면 복구시작합니다. 

2014-06-17 P.S)

우분투 14.04, Linux Mint 17 등 에서는 아직 trusty 버전의 stable 버전이 나오지 않았습니다.
그래서, 그때까지는 이렇게 이용하시면 됩니다.
https://help.ubuntu.com/community/Boot-Repair#A2nd_option_:_install_Boot-Repair_in_Ubuntu

sudo add-apt-repository ppa:yannubuntu/boot-repair

sudo sed 's/trusty/saucy/g' -i /etc/apt/sources.list.d/yannubuntu-boot-repair-trusty.list
sudo apt-get update
sudo apt-get install -y boot-repair

그리고 boot-repair를 실행하세요


2014-11-14 P.S)
Boot-repair 프로그램이 아닌 부팅 USB에서 직접 수동으로 명령어들을 입력해서
Grub를 새로 설치해서 이 문제를 해결하는 방법을 제 경우를 통해서 함께 살펴 보겠습니다. 
Debian에서 이런 문제를 만나신 분들에겐 아주 좋은 해결책이 될거에요
아래 사진을 다운 받으셔서 스마트폰등에 저장해 놓으시면 , 
이후에 사용하게 되실때 편리하게 이용하실 수 있을겁니다. 

그럼 시작해 볼까요? 위의 사진을 함께 보시면서 읽어 보시면 이해하기 쉬우실 거에요
이 내용은 아래 리눅스 민트 커뮤니티의 글을 실행한것입니다.
http://linuxmint.kr/4082 

우선 부팅 USB로 부팅하신후에 , 터미널을 여시고
이렇게 입력합니다.
sudo blkid

이러면, 각가의 파티션의정보가 나옵니다.

그중에서 Grub를 복구하려는 OS가 설치되어 있는 파티션을 살펴봅니다.
제 경우에는 /dev/sda5 에 elementary OS luna가 설치되어 있습니다.

알아둔 파티션을 작업 할 수 있도록 마운트 합니다.

하드웨어가 연결은 되어 있지만 소프트웨어로 연결되어 있지는 않은 상태를 언마운트라고 합니다.
그것을 소프트웨어가 사용할 수 있도록 연결하는 작업을 마운트 라고 합니다.
명령어는 "mount 장치 파티션" 입니다. 그래서 제경우에는 /dev/sda5 를 마운트 합니다.
대개 /mnt 에 연결해서 사용합니다. 다른것으로 바꾸셔도 되지만, 
편리를 위해 주로 사용하는 방식을 따르는 것이 여러가지로 편리합니다.
여러분들의 파티션 정보에 맞추셔서 이용하세요
sudo mount /dev/sda5 /mnt 

그다음, 시스템을 구성하는 정보를 담은 /dev, /proc, /sys , devpts를 /mnt에 함께 묶어서 마운트하고
sudo mount --bind /dev /mnt/dev
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys
sudo mount --bind /dev/pts /mnt/dev/pts

root 사용자로  지금 /mnt 로 마운트한 /dev/sda5 에 진입해서

sudo chroot /mnt

Grub를 MBR에 새로설치하고

grub-install /dev/sda

/dev/sda5 ( /mnt) 에서 나와서

exit

다시 처음 상태로 언마운트해서 되돌린 후에 

sudo umount /mnt/dev/pts
sudo umount /mnt/sys
sudo umount /mnt/proc
sudo umount /mnt/dev
sudo umount /mnt

재부팅하는 순서입니다.

sudo reboot