< BIOS, EFI시스템 윈도우와 리눅스 멀티부팅 구성 - 리눅스 이미지 백업과 복원1 >
I. EFI시스템
교육장등 다수의 PC가 있을때에 각 PC마다 OS를 설치하는 일은 여간 쉬운일이 아니다.
윈도우의 경우 네트워크 복사툴을 사용하여 1대 다수PC로 복사를 돌린다. 100대를 복사하지만 , 1대 복사하는 시간과 같기때문에 아주 효율적이다.
때로는 리눅스와 멀티부팅이 필요할때가 있다. 리눅스를 일일이 USB에 구워서 1대씩 설치할 것인가? 쉬운일이 아니다.
이번에도 네트워크 복사툴을 돌려서 복제하면 된다.
그러나 EFI시스템에서 주의 해야할 것은 바로 EFI 파티션에 설치되는 부팅파일들이다. 3번에 언급하겠다.
1. 리눅스 파티션 마스트본 만들기와 백업
마스터 본을 만드는 이유.
실제DISK에 바로 작업해도 되지만, 디스크가 서로다른 교육장이 있다고 하자.
예를 들어 A실 300G, B실 500G, C실 1TB
리눅스는 파티션 복사할때 , 복사대상디스크(파티션이 아니다) 가 원본디스크보다 같거나 커야한다.
즉, 대상디스크 >= 원본디스크
그래서, 마스터본을 만들때 최소한의 디스크 를 잡고 전체 파티션으로 작업하여. 이 마스터본의 이미지를 디스크가 다른 PC에 복원하면
그만큼 설치시간을 절약할 수 있다.
얼마나?
리눅스를 설치하면 최소 30분이다. 세팅까지 다시 일일이 까지 한다면 1시간은 되야할듯하지 않은가?
그러나 이렇게 이미지를 만들고 복원하면 3분이면 된다. 세팅? 이미 세팅이 다된 마스터본이니 간단히 IP정도 바꿔주면 될것이다.
우분투를 최소로 설치해보면, 2기가도 못미친다. 초기 설치후 업데이트를 좀하고 약간의 프로그램설치를 마치더라도 5G가 되지 않을 것이다.
그래서 대략 그냥 10G로 여유있게 만든다.
그래서 먼저, 윈도우처럼 리눅스 베이스를 만든다.
DISK2 는 vmware에서 10G로 하나 만들었다.
이렇게 설치후 EFI 파티션에는 우분투의 부트로더인 grub2 efi 가 설치가 된다.
위의 EFI파티션을 열어보면,
ubuntu 폴더가 자동으로 생겨있고,
grub2의 설정파일을 볼 수 있다.
[ 두번째디스크에 우분투가 설치되어있고, GPT 첫파티션이라는 표시로, hd1,gpt1 로 되어있다.
그래서 나중에라도 우분투 디스크를 1번 SATA에 물리게 된다면, hd0, gpt1로 변경해야할 것이다. ]
이 파티션 이미지를 백업한다.
백업은 클론질라 리눅스사용
https://clonezilla.org/downloads/download.php?branch=alternative
백업방법은 생략한다.
자 이제 마스터본을 잘 만들었는가?
2. 마스터 이미지의 복원
리눅스 세팅한 이미지를 vmware에서 백업했다면, 이 이미지를 복원할 PC가 아래와 같다고 해보자.
1에서 만든 10G정보를 가진 우분투이미지를 새PC의 500G 디스크에 복원한다.
복원은 클론질라를 사용해서 DISK2 500G 의 파티션에 복원한다.
2번디스크의 파티션 크기는 원하는대로 조정하면된다.
예를 들어 100G / 400G 로 나눠놨다면,
100G 파티션에 복원시키면된다.
복원했으니 부팅되나??
아마 그냥 윈도우로 부팅될것이다. 왜냐하면 우분투 설치과정을 거치지 않았기때문에,
1에서 언급했던, 1번 윈도우디스크의 EFI파티션에 ubuntu 폴더가 생성되지 않았기 때문이다.
3. 리눅스와의 멀티부팅을 위한 세팅마무리
우분투 부팅이 되도록 하기위해서,
1) EFI ubuntu 폴더 복사
1에서 언급했던 EFI파티션의 ubuntu 폴더를,
새PC의 EFI파티션에 넣어주면 된다.
그리고 우분투 디스크가 2번의 첫번째 파티션이 아니라면, grub.cfg 파일도 수정하라.
2) CMOS 설정
첫번째 부트로더를 windows bootmanager 로 할지, ubuntu EFI 로 할지 선택
멀티부팅을 할 것이므로 ubuntu EFI로 선택해주자.
그러면 이제 우분투의 grub2 화면이 멋지게 나올 것이다.
여기서 윈도우로 가려면 윈도우 부팅메뉴를 선택해주면된다.
3) EFI 파티션이 있는 디스크가 원본디스크와 다를경우(디스크 및 파티션크기)
우분투 메뉴로 부팅후 로고만 맴돌다가 콘솔로 빠지게 된다.
이 이유는 우분투가 , EFI파티션을 제대로 찾지 못해서이다.
정확히 말하자면, 이 파티션 정보는 /etc/fstab 에 정보를 담고 있고, EFI 파티션의 uuid 값이 틀려서이다.
왜 틀린가?
vmware에서 만들때 윈도우가 설치되었던 디스크는 120G디스크의 일정량의 EFI파티션이고,
새 PC의 윈도우 디스크는 250G의 일정량의 EFI 파티션이다.
정보가 다른셈이다.
그래서
emergency mod 라고 요런 화면으로 빠지게 된다.
이때, : 화면에서 처음 만든 계정의 암호(root 암호)를 넣어주고 엔터.
그럼 # 으로 나오게 된다.
이제 EFI파티션의 UUID를 수정해주자.
먼저, 새PC의 EFI 파티션의 uuid 값을 알기 위해서
blkid 를 입력하고 엔터 (# 쉘이 아니라 $ 라면 sudo blkid 라고 해야한다)
그러면 대략
ubuntu@ubuntu:~$ sudo blkid /dev/sda1: LABEL="ESP"
UUID="4EA6-03B9"
TYPE="vfat" PARTLABEL="EFI system partition"
요런 내용이 나올것이다.
8자리 저 값을 잘 메모하고,
이제
vi /etc/fstab
명령으로 수정한다.
fstab 파일의 내용중
UUID=6620-B0D0 /boot/efi vfat defaults 0 2
이런부분있다.
위에서 찾은 것으로 , 이 값을 변경해주면 된다.
이렇게해서 마스터본을 EFI시스템환경의 새PC에 복원하는 과정을 설명했다.
이 100대 교육장의 PC 하드웨어 상황, 특히 디스크 구성이 동일하다면, 이 새PC를 마스터로 해서 100대에 네트워크 복사로 2번디스크를 밀어넣으면 된다.
그리고 1번디스크에는 EFI 수정을 했으므로 ubuntu efi 폴더만 100대에 밀어넣어주면된다. 혹은 efi파티션도 네트워크로 복사하든가.
다음편에는 efi에서 만든 우분투 마스터본을 BIOS(MBR) 환경의 새PC에 복원하는 방법을 적어보겠다.