윈도우 7 F8 컴퓨터 복구 모드가 없는 경우 2탄
이 글은 윈도우 7 F8 컴퓨터 복구 모드가 없는 경우 글에서 소개했던 reagentc.exe 파일로 문제가 해결되지 않는 분들을 위해 수동으로 복구 모드를 등록시켜주기 위해 작성했습니다. 제가 스크립트 짜봤는데 VMware에서 몇차례 테스트 결과 별 문제는 없었습니다. 이거 만들면서 알게된 점은 boot.sdi 파일이 윈도우 폴더에도 들어있다는 사실 ;; 전 지금껏 윈도우 7 DVD의 Boot 폴더에서 복사해왔는데 말이죠 ㅠㅠ boot.sdi 파일까지 첨부해서 올리려다 혹시나 싶어 파일 검색해보니 윈도우 폴더에 들어있더군요 ^^;;
다운로드
위 첨부파일을 받아서 우클릭 - 관리자 권한으로 실행 해주시면 됩니다.
아래는 스크립트 내용입니다. 고수님들 문제점이 발견되면 지적해주세요.
일반적으로 대부분 현재 OS의 identifier 가 {current} 이지만 가끔 {default} 인 경우도 있어서 이렇게 작성했습니다.
@echo off
:general
set REID={572bcd56-ffa7-11d9-aae0-0007e994107d}
set SD=%systemdrive%
md %SD%\Recovery
copy %windir%\system32\recovery\winre.wim %SD%\recovery\
if exist %windir%\system32\boot.sdi copy %windir%\system32\boot.sdi %SD%\recovery\
if not exist %windir%\system32\boot.sdi copy %windir%\syswow64\boot.sdi %SD%\recovery\
attrib %SD%\Recovery +h +s
:case1
set OSID=current
bcdedit /set {%OSID%} recoverysequence %REID%
if errorlevel 1 goto case2
bcdedit /set {%OSID%} recoveryenabled yes
goto continue
:case2
set OSID=default
bcdedit /set {%OSID%} recoverysequence %REID%
bcdedit /set {%OSID%} recoveryenabled yes
goto continue
:continue
bcdedit /create {ramdiskoptions}
bcdedit /set {ramdiskoptions} ramdisksdidevice partition=%SD%
bcdedit /set {ramdiskoptions} ramdisksdipath \Recovery\boot.sdi
bcdedit /create %REID% /d "Windows Recovery Environment" /application OSLOADER
bcdedit /set %REID% device ramdisk=[%SD%]\Recovery\winre.wim,{ramdiskoptions}
bcdedit /set %REID% osdevice ramdisk=[%SD%]\Recovery\winre.wim,{ramdiskoptions}
bcdedit /set %REID% path \windows\system32\winload.exe
bcdedit /set %REID% systemroot \windows
bcdedit /set %REID% detecthal yes
bcdedit /set %REID% nx optin
bcdedit /set %REID% winpe yes
:exit
exit
위 스크립트로 VMware에 32/64비트 둘다 msoobe.exe 강종으로 설치하고 테스트 해보니 잘 생성되었습니다.
아래 내용은 VHD + PE 멀티부팅 유저들만 참고하세요.
제 컴퓨터에서 수차례 테스트해본 결과 저처럼 VHD 부팅하시는 분들 중에 boot.sdi 파일의 경로가 새로 지정됨으로 인해 기존에 등록해두었던 PE로의 부팅이나 VHD 파일 교체하기 메뉴 등 {ramdiskoptions} 를 사용하는 PE 메뉴들로의 진입에 문제가 발생할 소지가 있음을 확인했습니다. 왜냐하면 VHD 부팅 유저들이 이 스크립트를 사용하면 boot.sdi 파일의 경로가 VHD 안에 있는 것으로 지정되는데 만약 VHD 파일을 기존 것으로 교체해버리면 boot.sdi 파일이 들어있지 않은 기존 VHD 파일에 당연히 boot.sdi 경로는 없을테니 {ramdiskoptions} 를 사용하는 다른 PE 부팅 메뉴들로는 부팅이 되지 않겠지요. 따라서 저처럼 Differencing VHD 기능을 사용하시는 분들은 이 스크립트로 F8 복구모드를 등록시키기 전에 먼저 부모 VHD 파일로 부팅한 다음 작업을 해주셔야 합니다. 아니면 위 스크립트에서 {ramdiskoptions} 생성하는 3줄을 빼버리셔도 됩니다.
bcdedit /set {ramdiskoptions} ramdisksdidevice partition=%SD%
bcdedit /set {ramdiskoptions} ramdisksdipath \Recovery\boot.sdi
왜냐하면 어차피 boot.sdi 파일과 {ramdiskoptions} 에 대한 정보는 PE 부팅을 사용하시던 분들이라면 이미 BCD에 등록되어 있기 때문에 새로이 등록할 필요가 없고 바로 복구모드 항목을 생성해도 되기 때문입니다. 제가 스크립트 짤 때 bcdedit /create {ramdiskoptions} 에서 항목이 있다고 나오면 바로 boot.sdi 단계는 넘기고 아래쪽으로 내려가도록 만들까 생각도 해봤는데 그래도 혹시나 항목이 있음에도 불구하고 boot.sdi 파일의 경로가 잘못 지정되어 있는 상태이거나 아니면 {ramdiskoptions} 항목만 존재하고 boot.sdi 파일의 경로는 지정되어 있지 않은 경우도 만에 하나 있을 수 있으므로 함부로 그렇게 짤 수도 없었습니다. 또한 이 문제는 VHD 부팅 + 램디스크 PE 부팅 이라는 조합을 동시에 사용하는 저같은 극히 일부 유저들에만 국한되는 문제이고 더욱이 그 유저들 중에 F8 복구모드가 없는 경우는 더더욱 소수일 것이고 또한 설령 F8 복구모드가 없다고 해도 이 스크립트보단 reagentc.exe 파일로 간단히 해결될 가능성이 높고, 또한 PE로 부팅하는 분들은 어차피 F8 복구모드의 필요성을 별로 느끼지 못하실 것이라 생각하기 때문에 스크립트에 따로 {ramdiskoptions} 항목에 대한 체크는 넣지 않았습니다.
다시 말씀드리지만 이 추가 내용은 VHD + PE 부팅 유저들만 참고 하시면 됩니다. 99%(?)의 일반 유저들과는 전혀 관계없는 이야기 이니 스킵하시기 바랍니다.
그리고 이미 위 스크립트 실행으로 VHD 안에 boot.sdi 파일이 지정된 경우라 하더라도 boot.sdi 파일의 경로는 다시 지정해주시면 됩니다. 저같은 경우 현재 XP 파티션이자 시스템, 활성 파티션인 D 드라이브 boot 폴더 안에 이 파일을 넣어두었기 때문에
bcdedit /set {ramdiskoptions} ramdisksdipath \boot\boot.sdi
라고 입력을 하면 되겠지요.
'Windows 7 > 부팅 & PE 이야기' 카테고리의 다른 글
윈도우 7 멀티부팅 메뉴 이름 한방에 변경하기 (34) | 2010.08.30 |
---|---|
BCDEDIT 사용법 (31) | 2010.08.15 |
멀티부팅 메뉴를 윈도우에서 선택 2탄 (11) | 2010.06.01 |
멀티부팅 메뉴를 윈도우에서 선택 - iReboot (20) | 2010.04.25 |
윈도우 7 F8 컴퓨터 복구 모드가 없는 경우 2탄 (27) | 2010.03.05 |
윈도우 7 F8 컴퓨터 복구 모드가 없는 경우 (31) | 2010.03.03 |
WAIK의 PE3.0 대신에 윈도우 7 boot.wim 파일 이용하기 2탄 (25) | 2009.11.30 |
고스트 자동복구 DVD에서 DISKPART 활용 (24) | 2009.11.29 |
WAIK의 PE3.0 대신에 윈도우 7 boot.wim 파일 이용하기 (27) | 2009.11.27 |
2010.03.05 16:28
유용한 내용 잘 봤습니다. 집필은 모두 마치셨나 보군요
여유 생기면 좋은 내용이 가득할테니 구입해 보도록 하겠습니다. 아무쪼록 대박나시길 기원합니다 ^^
2010.03.05 17:16
배치 파일로 작성해주셨군요^^ 좋은팁 감사합니다~
2010.03.05 17:40
오늘도 기가막히게 유익한 내용 잘 보고 갑니다 ^^
GUID 를 지정해두고 해도 괜찮은가보네요?
새로운 지식을 얻었습니다 ㅎㅎ
배치파일 잘 보관하고 있어야겠네요~
2010.03.06 00:04
항목 생성할 때 아무거나 마음대로 GUID 형식에만 맞게 지정하면 되는 것 같은데 저건 제가 마음데로 지정한건 아니고 비스타 SP1 WAIK에 들어있는 복구환경 스크립트에 들어있던 GUID입니다.
2010.03.05 17:48
DVD 부팅 해야 되는줄 알았는데 있었군요.
항상 좋은 정보 감사합니다.
2010.03.05 22:44
크.. 역시 방대한 양의 스크립트군요;;;;
그나저나..set OSID=default <<이부분 새로운 발견이네요 -_-;;
저렇게 하면 default 로 지정된 GUID 가 변수로 지정되는건가요..ㅎㅎ;;
2010.03.06 00:11
음... 그게 아니고 위에서 current로 먼저 지정을 한 다음 만약 오류가 발생하면 if errorlevel 1에서 current 대신 default를 사용하도록 case2로 보내는 것입니다. 현재 부팅된 윈도우 7은 대부분 current이지만 간혹 default 인 경우가 있더군요.
2010.03.06 12:55
고장 나면 써먹어야 할듯 하네요 ㅋㅋ 퍼가서 고이 간직 ㅎㅎ;; 뼈가 되고 살이 되는 정보 ㅋㅋ
2010.03.09 10:01
감사합니다
복구모드가 이제 생겼어요
좋은 한 주 되세요
2010.03.18 07:11
안녕하세요. 항상 도움 많이 받고 있습니다 (__) 다름이 아니라 저는 복구 모드는 있는데 복구 모드에 진입하면 에러가 발생합니다. 스누피님이 알려주신 방법 1, 2 모두 해봤지만 마찬가지네요. 해결 방법 없을까요?
http://img16.imageshack.us/img16/1412/19198466.jpg
2010.12.23 23:58
저도여. 흑흑. 에러 코드도 똑같네.0xc000000f
2010.03.20 15:35
비밀댓글입니다
2010.03.25 16:17
자식VHD로 부팅하면, V3가 정지하고 윈도우 방화벽이 켜지는 문제가 생겨서 안철수 연구소에 문의를 했더니, 자식VHD로 부팅한 후 V3를 새로 설치해야 한다고 하는데, 해결 방법이 없는지요...
2010.05.08 21:17
'지정한 파일을 찾을 수 없습니다' ㅠㅠ 안 됩니다.
2010.07.28 16:54
set REID=
{572bcd56-ffa7-11d9-aae0-0007e994107d}
이 부분이요,, 컴마다 다른 걸로 아는데....
recovery폴더안에 폴더명으로 되어있는 걸로 알아요,,,,,,,,
근데 저 지금 F8암만 눌러도 안 되서 이글 봤는데 테스트는 못해보고 있네요,,
2010.09.28 02:20
비밀댓글입니다
2011.05.29 06:49
방법 1,2 로 해봐도 복구모드 메뉴가 안나오네요? 울티메이트 k 64 비트 입니다.
저같은 경우는 명령어 처도 리커버리 폴더가 생성이 안되네요 스크립트 실행해도 안되고.,.
2011.09.20 21:10
저도 방법1 그대로는 안됐고,
방법2는 무언가 건드리는게(?) 많아보여서 안해봤는데,
방법1을 살짝 응용해서 다음과 같이 해결했습니다.
먼저 bcdedit 항목에 recoverysequence, recoveryenabled 항목이 있는 경우,
아래 두 명령을 실행해서 항목을 삭제. (원래 없으면 안해주셔도 됩니다)
bcdedit /deletevalue {GUID} recoverysequence
bcdedit /deletevalue {GUID} recoveryenabled
{GUID} 부분은 {current} 일수도, {default} 일수도, {복잡다단한형태의실제GUID} 일수도...
그다음 아래 명령 실행
reagentc /disable
그리고 방법1에 설명되었던 아래 명령 실행
reagentc /enable
이렇게 하니 원래 Recovery 폴더 아래에 있던
recoverysequence ID값도 자동으로 변경(or 생성)하면서
위에서 삭제했던 두 항목들을
bcdedit에 다시 자동으로 추가해 주더군요.
물론 복구모드 진입도 OK.
2012.02.14 14:52
정말 감사합니다. 스누피님 덕분에 DELL 공장 초기화가 가능해졌습니다. :)
정말 감사합니다.
2014.12.09 19:15
저 파일을 다운받아 관리자모드로 실행하고 난 뒤로 f8 창 자체가 뜨지를 않습니다.....ㅡ,ㅡ
혹시 실행한 내용을 다시 취소할 방법이 뭔지 좀 알려 주실수 있나요 ;;;
2014.12.30 02:09
와 감사합니다. 덕분에 3시간 벌었습니다!! 1탄 은 안되던데 2탄으로 하니까 되네요. 오우
2015.02.22 07:32
비밀댓글입니다
2015.11.15 10:49
여러 설명을 참고해도 실패를 했는데 snoopy님 올려주신 파일 실행 한방으로 깔끔하게 해결이 됐네요^^
감사합니다!!!