Tips/VHD

VHD부팅시 자식과 부모의 변화분 충돌

Maximer 2012. 5. 16.
728x90

부모VHD에서 깨끗한 자식VHD를 생성하여 부팅을 하면 당연히 깨끗하기 때문에 그대로 부모에게서 상속을 받는건 아시죠?

그러면 다른 상황을 가정해보죠.

자식은 한개뿐이라고 할때,자식으로 부팅을 해서 무언가 변화를 주고 그다음 

다시 부모로 부팅을 해서 부모에서도 변화를 주고 

자식으로 부팅을 하게 되면 어떻게 될까요? 

자식은 이미 변화분을 가지고 있는데 그상태에서 다시 부모의 변화분을 상속받는 과정에서 충돌이 생겨버립니다.

그래서 부팅과정중 윈도우 부트스크린에서 블루스크린을 보게 됩니다.

그러면 자식으로 부팅만 해서 아무것도 하지 않고 종료하여 다시 부모로 부팅을 하고 똑같이 아무것도 하지 않고

종료를 한다음 자식으로 부팅을 하면 어떻게 될까요?

 

※참고사항

처음 생성한 자식VHD파일의 용량은 90K정도밖에 되지 않지만 자식으로 부팅을 한후 

아무것도 하지 않고 종료를 한후 PE등으로 외부에서 자식VHD파일의 용량을 보면 

200~300MB가량의 용량을 차지하게 됩니다.

 

저같은 경우 부트스크린에서 CHKDSK가 뜨면서 디스크검사를 수행하더군요. 

또 어떤 경우에는 디스크검사조차 뜨지 않고 정상적으로 부팅도 되더군요.

일단 변화분의 성질(파일,레지스트리)에 따라 오류내용이 달라지는것 같습니다.

기존자식(깨끗하지 않은)이 있는 상태에서 부모로 부팅하여 test.txt파일을 생성후 기존자식으로 부팅을 해보니

부팅과정에서 디스크검사를 수행할지 여부를 묻는 창이 뜨지만 취소하고 이어서 부팅하니 정상적으로 부팅이 되어

자식에서도 test.txt파일이 있더군요.

이상태에서 다시 부모로 부팅하여 test.txt파일을 지우고 자식으로 부팅하면 

이미 그 변화분(test.txt)은 자식에게 축적되어 있으므로 여전히 존재하게 됩니다

이러한 점으로 미루어 볼때 단순 파일의 유무에 따른 차이로 인해서는 기존자식이 부모한테 상속받아 부팅할때 

블루스크린이 뜨는 경우는 없다고 봐야할것같습니다. 물론 정밀하게 여러번 테스트를 못했기 때문에 

100% 신뢰해서는 안되구요.

 

그런데 레지스트리일 경우에는 거의 100% 부팅과정중 블루스크린이 뜨게됩니다.

기존자식(깨끗하지 않은)이 있는 상태에서 부모로 부팅하여 

[HKEY_LOCAL_MACHINE\SOFTWARE\maximer] 이렇게 로컬머쉰 레지에 키값만 단순하게 추가를 하고

다시 자식으로 부팅하니 심각한 데미지가 있다며 블루스크린이 뜹니다.

 

결국,

윈도우 업데이트나 어떤 프로그램을 설치한다는 것은 거의 99% 레지스트리가 변경되기 때문에

부모에서 위와같은 작업을 한 다음에는 기존자식으로 부팅할 경우에는 블루스크린이 뜬다고 봐야합니다.

부모VHD로 부팅을 한 뒤에는 부팅조차하지 않은 깨끗한 자식VHD로 부팅을 해야 

정상적으로 부모로부터 상속을 받아 부팅을 완료할 수 있게 됩니다. 

이런 이유때문에 보통 손자VHD를 추천하지 않게 됩니다. 부모VHD로 부팅을 해서 변화를 주게 되면 

자식과 손자까지 다시 세팅을 해야하기 때문이죠. 

그래서 손자VHD까지 운용을 할 경우에는 부모VHD는 손도대지말고 

자식과 손자로만 운용을 하는것이 좋습니다.

그러면 부모에 변화를 준 뒤에는 항상 자식을 새로 생성해야하는가?

그건 아닙니다. 처음 자식VHD를 생성해서 따로 백업해 놓으면 굳이 자식을 새로 생성하지 않고

백업된 깨끗한 자식을 복사해서 활용만 하면 됩니다.

예를 들어 CHILD.VHD라는 자식VHD로 계속 사용하다가 부모에서 업데이트를 한뒤에에는

CHILD.VHD 파일은 지워버리고  백업해둔 CLEAN.VHD를 CHILD.VHD로 복사하여 그것으로 부팅을 하면 됩니다.

깨끗한 자식이기때문에 부팅과정에서 정상적으로 부모로부터 모든 것을 상속받을 수 있습니다.

 

자식을 1개만 운용하여 VHD를 활용할 경우에는

CHILD.VHD,CLEAN.VHD 이렇게 두개를 생성하여 CHILD.VHD로 계속 사용하다가

부모에서 업데이트를 한후 CLEAN.VHD를 CHILD.VHD에 덮어씌우고 다시 자식으로 부팅하면 됩니다.

 

자동교차 Differecing VHD를 활용할 경우에는 

이런 문제를 걱정할 것이 없습니다.

왜냐하면 부팅할때마다 깨끗한 자식으로 부팅이 되기 때문이죠.

현재 포스팅은 기존자식이 있는경우 부모에 변화를 줬을때 상황에 대한 것입니다.

donaricano-btn
커피 한 잔 값으로 블로그를 후원하실 수 있습니다.

 

728x90

댓글