반응형




보통 컴퓨터에 리눅스를 쓸때 윈도우와 함께 쓰는 경우가 많습니다. 저도 대부분은 리눅스를 사용하지만 국내 특성상 리눅스만 쓰기는 어렵죠. 또 게임은 아무래도 윈도우즈로 나오는 경우가 더 많고요.

문제는 윈도우 설치후 리눅스를 설치할 경우는 문제가 없지만 리눅스 설치후에 윈도우를 설치하면 윈도우가 부팅영역을 다시 써 버려서 리눅스로 부팅을 할 수 없게 된다는 것입니다.
이럴 경우 grub 을 다시 설치해 줘야 리눅스로 부팅 할 수 있습니다. 윈도우 부트 영역이 망가지면 윈도우 설치씨디를 이용하듯이 리눅스도 설치 라이브 씨디가 있으면 쉽게 복원이 가능 합니다.

저는 우분투에서 작업했지만 다른 리눅스의 경우도 비슷하게 가능할 겁니다.




우선 리눅스 라이브 씨디로 부팅을 합니다. 그리고 부팅이 완료되면 터미널 프로그램을 실행 합니다.

1. "sudo su" 명령으로 root 권한을 얻습니다.

2. "mount /dev/sda(x) /mnt" 명령으로 자신의 리눅스 파티션을 마운트 해 줍니다. sda(x) 부분은 sda2, sda3 이런식으로 자신이 리눅스를 설치한 파티션을 입력해 줘야 합니다. 만일 잘 모르면 "fdisk -l" 명령으로 리눅스 파티션을 확인 해 볼 수 있습니다.


2015.12.10 추가사항


btrfs 파일 시스템을 이용하시는 경우에는 마운트 할때 옵션을 필요로 합니다.


mount -o subvol=@ /dev/sda(x) /mnt

이런식으로 서브볼륨 옵션을 줘야 제대로 작동합니다.


3. "cd /mnt" 명령으로 자신이 마운트한 디렉토리로 이동합니다. 이동후에 "ls" 를 해보면 자신의 리눅스 루트 디렉토리가 보이는 것을 알 수 있습니다. mount 란 개념을 숙지하고 계시다면 이해가 잘 가실텐데 모르시겠다면......음......


4.
mount --bind /proc proc
mount --bind /sys sys
mount --bind /dev dev

위 세 문장을 입력해 줍니다. 대충 이런거 아니겠나 싶지만 솔직히 저 위 세문장에 대한 의미는 저도 정확히는 모릅니다.

5. "chroot ." 을 입력해 줍니다. 루트 디렉토리를 현재 디렉토리로 바꿔주는 겁니다. 바꿔치기라고 할까요?

6. "grub-install /dev/sda" 명령을 입력해 줍니다. 리눅스를 sda2 던 sda3 이던 sda 에 설치했다면 sda 하드디스크에 grub 을 설치하는게 맞겠죠. 즉 sda 부분은 부팅 하드디스크를 선택해 줘야 합니다. 하드디스크가 1개면 일반적으로 sda 라고 생각하시면 됩니다.

7. "update-grub" 명령을 입력해 줍니다.

이제 재부팅 하면 grub 이 다시 실행되고 리눅스로도 부팅이 가능 할것 입니다.




마지막으로 주의할 점이라면......사실 그럴일은 거의 없겠지만 32비트 리눅스를 설치했다면 32비트 라이브 씨디를, 64비트 리눅스를 설치했다면 64비트 라이브 씨디를 이용해야 합니다. chroot  부분을 생각해보면 당연하다고 할 수 도 있겠습니다만.....



+ Recent posts