윈 도 우 win7 복구
2010.10.19 20:37
컴퓨터를 복구 하는 여러가지 방법이 있지만
그중에서 MS에서 제공하는 winRE.wim 을 이용해서 복구하는 방법에 대한 글입니다.
작업은 시스템 예약 파티션을 만들고, winRE.wim 을 시스템 예약 파티션에 이동시키고,
ReAgentc.exe 를 이용해 복구환경을 구성하는 순서로 이루어집니다.
1.시스템 예약 파티션 만들기- 이 작업이 가장 어렵습니다.
시스템 예약 파티션은 부팅에 관련된 파일을 보관하는 파티션입니다.
처음 Windows 7 을 설치하면 기본적으로 100MB정도의공간이 할당되어서 만들어 집니다.
대부분의 사용자 분들은 아마도 예약된 공간을 만들지 않는 팁을 사용해서 만들지 않고 사용하실 건데
이 팁을 적용할려면 시스템 파티션을 최소 300MB 정도는 잡아줘야 합니다.-winRE.wim(약 150MB)을 복사할 것을 감안해서.
시스템 예약파티션은 BIOS에서 첫번째로 잡혀있는 하드 디스크의 첫번째 파티션 이라는 조건이 있습니다.
첫번째 하드디스크의 상황이 여러가지 경우가 있을것 같은데
운영체제의 백업, 자료의 백업은 각자의 방법대로 하시기 바랍니다.
제 경우는 단일 파티션에 운영체제 하나 설치해서 사용하므로 imagex 로 /capture 해서
파티션 작업을 한 후 /apply 했습니다.
파티션 작업을 위해 PE로 부팅하기 전에 윈도우즈 상에서 해야할 작업이 두가지가 있습니다.
하나는 순정 PE(Windows 7 설치 CD)는 imagex.exe 가 포함되어 있지 않으므로 미리 준비해서 USB나 기타 BIOS에서 첫번째로 잡혀있는 하드디스크가 아닌 다른 디스크에 복사해 둡니다.
두번째는 diskpart.exe 통해 파티션 작업하실 거라면 diskpart 스크립트를 미리 준비해두면 편합니다.
만약 멀티부팅을 사용하시면 첫번째 하드디스크가 아닌 다른 디스크에 설치되어 있는 운영체제로 부팅하여 작업하시면 됩니다.
다음은 제가 사용한 diskpart 스크립트입니다.
select disk 0
rem 첫번째 디스크를 선택(포커스 이동)하는 명령입니다. 첫번째 디스크는 diskpart상에서 0번 디스크로 나타납니다.
clean
rem 디스크의 분할 정보와 섹터 정보를 덮어씁니다. all 옵션을 사용하면 모든 섹터를 0으로 덮어씁니다.
create partition primary size=3072
create partition primary size=30720
create partition primary
rem 세개의 파티션을 만들었으며 사이즈는 3GB, 30GB, 나머지 부분 할당입니다.
select partition 1
rem 첫번째 파티션 선택
format label="SYSTEM" fs=ntfs quick
rem 빠른 포멧을 하는데 레이블(이름)은 SYSTEM 으로 하고 파일 시스템은 ntfs 형식으로 합니다.
assign letter=r
rem 드라이브의 문자를 할당하는데 문자는 R 입니다.
active
rem 파티션을 활성으로 표시합니다.
select partition 2
format label="Windows 7" fs=ntfs quick
assign letter=c
select partition 3
format label="Data" fs=ntfs quick
assign
exit
diskpart 명령줄 참조: https://technet.microsoft.com/ko-kr/library/cc766465(WS.10).aspx
위 스크립트를 메모장에 붙여넣기 하신 후 자신에게 맞게 수정해서 적당한 이름으로 저장합니다.
예를 들어 disk.txt 란 이름으로 저장했다면 실행 명령은 다음과 같습니다.
diskpart /s k:\disk.txt
-k:\는 disk.txt를 저장한 경로입니다. clean 명령은 디스크에 파티션이 몇개가 만들어져 있든간에 구성정보를 모두 없애기 때문에 복구툴을 이용하지 않는 이상 저장된 데이타를 볼 수 없습니다.
반드시 백업한 후에 사용하세요.
imagex와 diskpart 스크립트가 준비가 되었으면 PE로 부팅합니다.
imagex 로 운영체제를 백업하실 거라면 다음 명령을 사용합니다.
k:\imagex.exe /capture c: k:\install.wim "Win7"
-k 드라이브에 있는 imagex로 c 드라이브 를 k 드라이브의 install.wim 으로 캡처하는데 이름은 Win7 입니다.(sysprep /generalize 옵션으로 봉인한 이미지가 아니기 때문에 이 install.wim 은 자신의 컴퓨터에서만 유효한 이미지 입니다.)
PE에서는 윈도우즈에서와 다르게 드라이브 문자가 나타납니다.
diskpart 를 실행하셔서 list volume 명령으로 드라이브 문자와 레이블을 확인하세요.
imagex 명령줄 참조: https://technet.microsoft.com/ko-kr/library/dd799302(WS.10).aspx
운영체제 캡처 작업이 끝나면 diskpart /s k:\disk.txt 명령으로 파티션 작업을 합니다.
파티션 작업이 끝나면 imagex로 좀 전에 캡처해둔 install.wim을 풀어줍니다.
k:\imagex.exe /apply k:\install.wim 1 c:
- k: 에 있는 imagex 로 k: 에 있는 install.wim 의 1 번 이미지를 c: 에 적용합니다.
- 파티션 작업을 할 때 첫번째 파티션은 R 로 두번째 파티션은 C 로 문자를 할당 했었습니다.
R 드라이브는 시스템 예약 파티션으로 사용할 것입니다.
- /apply 시키는 이미지를 백업한 install.wim을 사용할 것인지 아니면 설치디스크 안의 install.wim 을 사용할 것인지는
각자의 선택입니다.
2.부팅환경 구성과 winRE.wim 이동
운영체제를 C: 에 풀어 놓았으면 명령창에서 다음 명령을 사용하여 활성파티션인 R: 에 부팅파일을 만들어 줍니다.
C:\Windows\System32\bcdboot.exe C:\Windows /l ko-kr
- C:\Windows\System32 폴더 안에 있는 부팅 파일 작성및 복구 도구인 bcdboot.exe 로 C: 에 있는 시스템을 bcd 에 등록합니다.로케일은 ko-kr입니다. 부팅파일이 없으면 만들어 줍니다.
명령창에서 다음 명령을 내려서 R: 에 폴더를 만들고 winRE.wim을 이동시켜 줍니다
Mkdir R:\Recovery\WindowsRE
Move C:\Windows\System32\Recovery\winRE.wim R:\Recovery\WindowsRE
- 트윅된 버전을 사용하시는 분 중에는 winRE.wim 이 삭제되어 없는 경우도 있습니다.
방법은 imagex 로 설치 CD 안의 install.wim 을 /mountrw 시켜서 빼내든가 아니면 boot.wim 2 을 /mountrw 시켜서 winpeshl.ini를 집어 넣고 winre.wim 으로 /export 하는 방법도 있지만 가장 간단한 것은
윈도우즈 상에서 install.wim 을 7-zip 으로 열어서 복사 해오는 것이 가장 간단합니다.
boot.wim 과 winRE.wim 에 대해 잠깐 언급해 보겠습니다.
MS 에서 제공하는 가장 기초적인 7PE(PE3.0)는 WAIK를 설치하면 볼 수 있는 winpe.wim 입니다.
이와 함께 winpe.wim 에 통합하여 사용할 수 있는 몇가지 package 를 같이 제공하는 데
그 패키지들 중에서 몇가지를 통합한 게 boot.wim 입니다.
- 어떤 package 가 통합되었는지는 /mountrw 시켜서 dism 으로 /get-packages 옵션을 통해 알 수 있습니다.
boot.wim 에는 1번과 2번 이미지가 있는데 2번은 setup 패키지가 통합되어 있고 1번은 없습니다. 나머지는 동일합니다.
winRE.wim 은 boot.wim 2 번 이미지에 winpeshl.ini 파일 하나를 더한 것입니다. 나머지는 동일합니다.
pe에 통합해서 사용할 수 있는 패키지에 관해서 참조: https://technet.microsoft.com/ko-kr/library/dd799312(WS.10).aspx
winpeshl.in 에 관해서 참조: https://technet.microsoft.com/ko-kr/library/dd744245(WS.10).aspx
PE 작동 방법에 관해서 참조: https://technet.microsoft.com/ko-kr/library/dd744556(WS.10).aspx
winRE.wim 에 들어 있는 winpeshl.ini 의 내용은 이렇습니다.
[LaunchApp]
AppPath=X:\sources\recovery\recenv.exe
위 내용을 메모장에 붙여넣고 winpeshl.ini 로 저장한 후 마운트된 boot.wim 2 번 이미지의 System32 폴더에 넣어 두고
/unmount /commit 한 다음 winRE.wim 으로 /export 하면 winRE.wim이 됩니다.
위 파일의 내용은 X:\sources\recovery 폴더 안에 있는 recenv.exe 를 실행하라는 것인데 recenv.exe 는
recenv(Windows Recovery Environment-복구모드)를 실행하는 파일입니다.
PE 작동 방법에 관해서 참조된 링크를 읽어 보신 분은 아시겠지만
winpeshl.exe는 가장 먼저 winpeshl.ini 에 지정된 응용프로그램을 실행합니다.
winpeshl.ini 가 없으면 %systemdrive%\setup.exe 를 실행합니다.
만약 setup.exe 가 없으면 %SystemRoot%\System32\startnet.cmd 를 실행합니다.
링크에는 약간 다르게 나왔지만 제 경험상 그렇습니다.
따라서 위와 같은 winpeshl.ini 가 포함된 boot.wim 혹은 winRE.wim 으로 부팅하면 무조건 복구모드가 실행되어 집니다.
3.ReAgentc.exe 를 이용하여 복구 환경 구성
위에서 파티션 작업을 할 때 시스템 파티션을 300MB 가 아닌 3GB 로 잡았었는데 이유는 저는 install.wim 을 이 시스템 파티션에 저장하기 위해서 입니다.
다른 파티션에 저장하실 분들은 300MB 로도 충분합니다.
시스템 파티션에 install.wim 을 저장하실 분은 다음 명령을 내려줍니다.
Move K:\install.wim R:\Recovery\WindowsRE
다음은 ReAgentc.exe를 이용한 복구 환경 구성입니다. 자신의 상황에 맞게 적절하게 수정해서 사용하세요.
C:\Windows\System32\Reagentc.exe /setreimage /path R:\Recovery\WindowsRE /target C:\Windows /bootkey 3b00
- /setreimage /path =Windows RE 이미지의 위치를 설정합니다.
- /target =오프라인으로 설정할때 Windows가 설치된 위치의 경로를 지정합니다. 온라인 상에서는 생략해도 됩니다.
- /bootkey =부팅시 복구를 시작할 시작 단추에 대한 스캔 코드 를 지정합니다. 3b00 은 F1 키입니다. 다른 키는 위 링크를 참조하세요. 멀티부팅을 사용하시면 운영체제를 선택하는 화면에서 F1 키를 누르면 바로 복구모드 진입이고 아니면 F8- 컴퓨터복구의 순으로 진입할 수 있습니다.
C:\Windows\System32\Reagentc.exe /setosimage /path R:\Recovery\WindowsRE /target C:\Windows
- /setosimage /path =OS 설치 파일의 위치를 지정합니다.
- /target =오프라인으로 설정할때 Windows가 설치된 위치의 경로를 지정합니다.
ReAgentc.exe 명령줄 참조: https://technet.microsoft.com/ko-kr/library/dd799242(WS.10).aspx
이상으로 부팅환경 구성을 마쳤는데 재부팅해서 윈도우즈 상으로 진입하면 설치 이미지의 install.wim 을 사용해서
설치 과정을 거치고 왔으면 복구 환경이 활성화 되는데
백업한 install.wim 을 풀어서 윈도우즈로 진입했다면 활성화 되지 않았을 겁니다.
ReAgentc.exe /enable 명령으로 활성화 시켜줍니다.
복구환경을 수정하실려면 ReAgentc.exe /disable 명령으로 비활성화시킨 다음 수정하시고 다시 /enable 시켜 주세요.
작업을 마쳤습니다.
이제 복구 모드, 혹은 제어판- 복구- 고급 복구모드에서 'Windows 다시설치'를 누르면 설치 CD를 요구하지 않고
/setosimage /path 옵션으로 지정한 install.wim 으로 설치를 시작합니다.
일반 설치와 다른 점은 사용자 입력을 요구하지 않고 무인설치(자동설치) 됩니다.
기존의 윈도우는 Windows.old 로 남습니다.
삭제는 디스크 정리에서 '이전 Windows 설치'에 체크하고 정리하면 삭제됩니다.
설치 install.wim 이 아닌 imagex 로 capture 한 백업 install.wim 을 사용해도 된다는 것은 기술문서에는 나와있지 않습니다.
제가 해보니 잘 됩니다. 다만 사용자 환경에 따라 어떤 변수가 있을지 모르니 100% 장담은 못하겠네요.
4.사용자 지정 도구를 이용한 복구
위의 방법은 install.wim 을 통한 설치형식의 복구방법이었습니다.
이번에는 복원 유틸을 이용한 복구 방법입니다.
winRE.wim 을 통한 복구모드로 진입한다는 점은 동일합니다.
다른 점은 winRE.wim에 복원 유틸과 WinREConfig.xml 파일을 첨가하는 것입니다.
복원 유틸이 많이 있지만 제가 잘 모르는 관계로 명령줄이 간단한 snapshot.exe 를 가지고 설명하겠습니다.
위에서 설명한 순서대로 작업을 따라 왔다면 winRE.wim 을 수정해서 시스템 파티션에 있는 winRE.wim 과 바꾸면 되고,
처음 부터 사용자 지정 복구 도구를 사용하실 거라면 미리 winRE.wim을 수정해서 작업을 시작하면 될 것 같습니다.
snapshot.exe 를 기준으로 제가 사용한 WinREConfig.xml 파일입니다.
메모장에 붙여넣기 하고 WinREConfig.xml 으로 저장하면 됩니다.
<Recovery>
<FactoryRecoveryTool>
<RelativeFilePath>.\snapshot.exe</RelativeFilePath>
<CommandLineParam>H:\my.sna G:</CommandLineParam>
<AdminOnly>No</AdminOnly>
</FactoryRecoveryTool>
</Recovery>
참조: https://technet.microsoft.com/ko-kr/library/dd744576(WS.10).aspx
- WinREConfig.xml 에 대한 자세한 내용은 위 링크 참조하세요.
- snapshot.exe 의 복원 명령줄은 "snapshot.exe 백업한파일이름.sna 복원할드라이브" 입니다.
- <RelativeFilePath> 와</RelativeFilePath> 사이에 실행파일의 상대적인 경로를 적어 주는데 기준은 Tools 폴더입니다.
Tools 폴더는 Recenv.exe 가 있는 폴더에 만들어 줄 폴더 입니다.
PE 상에서 전체적인 경로로 보면 X:\sources\recovery\ 안에 Recenv.exe 가 있습니다.
따라서 Tools 폴더의 전체적인 경로는 X:\sources\recovery\Tools 입니다. 이 Tools 폴더를 기준으로 실행파일이 위치한 상대경로를 적어줍니다.
저는 Tools 폴더에 snapshot.exe 를 넣어 줄 것이므로 .\snapshot.exe 라고 적었습니다.
.(점하나) 는 현재디렉토리를 의미하는 기호입니다.- 곧 Tools 폴더가 됩니다.
- <CommandLineParam> 와</CommandLineParam> 사이에 명령줄의 나머지 부분을 적어 주는데 snapshot.exe 를 기준으로 하면 '백업한파일이름.sna 복원할드라이브'를 적어 줍니다.
H:\my.sna g: 입니다. -H 드라이브에 있는 my.sna 로 G 드라이브를 복원한다는 뜻입니다.
snapshot.exe 로 백업을 하면 확장자가 sna 인 파일로 저장됩니다.
주의 하실 것은 실제로 윈도우즈 상에서 저는 C 드라이브를 G 드라이브의 my.sna 로 백업했었습니다.
그러나 PE 상에서는 시스템 파티션이 C 드라이브로 잡히고 윈도우즈 상에서의 C 드라이브는 G 로 잡혔습니다.
PE 로 부팅하셔서 드라이브 문자를 확인하는게 필요합니다.
- <AdminOnly> 와</AdminOnly> 사이에는 Yes 혹은 No 값을 적어 주는데 관리자 권한을 가진 사용자만 복구도구를 사용할 것인지 아닌지를 결정하는 내용입니다.
복원 유틸(snapshot.exe)과 WinREConfig.xml 파일이 준비 되었으면
winRE.wim 을 /mountrw 시켜서 sources\recovery 경로에 Tool 폴더를 만들고 이 두개의 파일을 넣어준 뒤
/commit 옵션을 사용하여 /unmount 시킵니다.
기술 문서에는 필요한 이진파일과 WinREConfig.xml 을 Tools 폴더에 넣어 주라고 되어 있습니다.
snapshot.exe 는 단독 실행파일이라 달리 넣어 줄 것이 없습니다.
다음으로 4-7번 작업을 실행합니다.
만약에 설치가 필요한 복원 유틸을 사용할려면 어떻게 해야 될까요?
아마 다음과 같은 작업과정이 될 것 같습니다.
4-1. 윈도우즈 상에서 설치하기전에 Registry Workshop 이란 유틸로
HKEY_LOCAL_MACHINE\SOFTWARE 와 HKEY_LOCAL_SYSTEM 의 레지스트리를 내보내기 하여 저장합니다.
4-2. 윈도우즈 상에서 설치를 하는데 설치 경로는 C:\sources\recovery\Tools 의 경로에 설치 합니다.
4-3. 설치 후에 다시 위 두 레지스트리를 내보내기 하여 저장합니다.
4-4. 각각의 저장된 레지스트리 파일을 Registry Workshop 으로 열어서 도구-레지스트리 비교로 달라진 부분을 찾고 내보내기 하여 저장합니다.
4-5. 달라진 레지스트리를 우클릭-편집으로 열어서 편집-바꾸기에서 C:\ -> X:\ 로 모두 바꿉니다.
문자열 값으로 저장된 부분은 이렇게 바꾸면 되지만 다른 값은 HEX 값으로 저장이 되기 때문에 작업을 조금 더 해야 됩니다.
43,00,3a,00,5c,00 -> 58,00,3a,00,5c,00 로 바꿉니다.
아스키 코드표를 보시면 C->43 :->3a \->5c X-58 로 대응되는 것을 알 수 있습니다.
또한 줄이 바뀌어서 43,00,3a,00,5c,00 이 끊어져서 나타나는 경우가 있으면 바뀌지 않기 때문에 43,00,3a 로 검색해서 나타나는 경우에 따라 적절하게 모두 바꾸기를 합니다.
그리고,winRE.wim 에 레지를 적용할려면 어차피 하이브 파일을 로드해서 적용할 것이므로
HKLM\TEMP-SOFTWARE ,HKLM\TEMP-SYSTEM 으로 로드한다고 가정을 하고
HKEY_LOCAL_MACHINE\SOFTWARE -> HKEY_LOCAL_MACHINE\TEMP-SOFTWARE
HKEY_LOCAL_MACHINE\SYSTEM -> HKEY_LOCAL_MACHINE\TEMP-SYSTEM 으로
모두 바꾸기 한 후 저장합니다. (저는 레지파일을 different.reg 로 저장하겠습니다.)
4-6. 이제 winRE.wim 을 /mountrw 시켜서 Tools 폴더를 복사하고 레지스트리를 적용시키면 되는데
윈도우즈 상에서는 레지스트리 소유권한 문제로 레지적용이 잘 안됩니다.
제가 첨부한 imagex.exe 와 SetACL.exe 를 Windows 폴더에 넣고, C: 에 temp 폴더를 만들고,
winRE.wim 과 different.reg를 C: 로 옮긴 후, 다음 명령을 실행합니다.
imagex /mountrw c:\winre.wim 1 c:\temp
reg load HKLM\TEMP-SOFTWARE C:\tempWindows\System32\config\SOFTWARE
reg load HKLM\TEMP-SYSTEM C:\tempWindows\System32\config\SYSTEM
SetACL.exe -on "HKLM\TEMP-SOFTWARE" -ot reg -rec yes -actn setowner -ownr "n:S-1-1-0;s:y" >nul
SetACL.exe -on "HKLM\TEMP-SOFTWARE" -ot reg -rec yes -actn ace -ace "n:S-1-1-0;s:y" >nul
SetACL.exe -on "HKLM\TEMP-SYSTEM" -ot reg -rec yes -actn setowner -ownr "n:S-1-1-0;s:y" >nul
SetACL.exe -on "HKLM\TEMP-SYSTEM" -ot reg -rec yes -actn ace -ace "n:S-1-1-0;s:y" >nul
reg import c:\different.reg
mkdir c:temp\sources\recovery\Tools
xcopy c:\sources\recovery\Tools\*.* c:\temp\sources\recovery\Tools\*.* /c /e /h /k
imagex /unmount /commit c:\temp
- SetACL.exe 옵션은 명령창에서 setalc.exe -help 를 참조하세요.
위 SetACL.exe 명령줄은 everyon 계정에 소유권을 할당하는 내용입니다.
- 중간에 적절하게 수정된 WinREConfig.xml 도 Tools폴더에 넣어 둡니다.
4-7.수정된 winRE.wim 을 시스템 파티션의 Recovery\WindowsRE 폴더안에 넣어 줍니다.
시스템 파티션이 안보일 경우 디스크 관리에서 드라이브 문자를 할당해 줍니다.( 저는 R: 로 할당 했습니다.)
명령창에서 다음 명령을 쳐서 복구환경을 다시 구성해 줍니다.
reagentc.exe /disable
reagentc.exe /setreimage /path R:\Recovery\WindowsRE /target c:\windows /bootkey 3b00
reagentc.exe /setosimage /customtool /target c:\windows
reagentc.exe /enable
- /setosimage /customtool 옵션은 사용자 지정 복구 응용프로그램을 사용한다는 뜻 입니다.
작업이 끝났습니다.
부팅중에 F1키 혹은 F8-컴퓨터복구 아니면 윈도우즈 상에서 제어판-복구-고급복구방법 에서 복구모드로 진입할 수 있습니다.
install.wim 을 사용한 기본 복구와 틀려진 점은
복구모드에 진입하면 사용할수 있는 여러가지 옵션이 나타나는데 그 옵션들 맨밑에 지정한 응용프로그램 아이콘과 적절한 설명이 추가되어 나타납니다.
제어판 고급복구방법에서는 'Windows 다시 설치'가 '공장 기본 상태로 컴퓨터 되돌리기'로 바뀌어 나타납니다.
install.wim을 통한 다시 설치가 아니기 때문에 Windows.old 폴더도 남지 않습니다.
5.트윅된 PE를 사용하여 사용자 지정 복구 도구를 이용하는 방법
위에서 복원 유틸을 winRE.wim 에 등록시키는 방법에 대해서 썼었는데 일반 사용자가 저 방법대로 등록시키기는 어렵습니다.
글로 쓰기는 쉽게 썼지만 실제로 해보면 무수한 시행착오를 거쳐야 됩니다.
이번에는 아예 복원유틸이 포함된 PE를 가지고 배치파일 하나를 첨가해서 복구도구를 이용하는 방법입니다.
Windows 7 기반으로 만들어진 PE는 대부분 boot.wim 을 포함하고 있습니다.
이유는 Windows 7 설치 기능을 포함시키려면 이 boot.wim 을 포함시켜야 됩니다.
7PE 의 sources 폴더 안에 boot.wim 이 아닌 예를 들어 tweak.wim 만 있다하더라도 이름만 boot.wim 으로 바꾸면 됩니다.
- 이름을 boot.wim 으로 바꿀 경우 이 PE를 사용하려면 boot 폴더 안의 bcd 를 수정하는 작업이 필요합니다.
- 지금의 작업에 필요한 것은 PE가 아닌 boot.wim 만 빼내오면 됩니다.
제가 위에서 winRE.wim 은 boot.wim 2번 이미지에 winpeshl.ini 를 하나 더한 것이라고 했는데
마찬가지로 트윅된 boot.wim 의 2번( 혹은 1번- 이미지를 /export 시켜서 만들었으면 하나의 이미지 밖에 없습니다.)
이미지에 winpeshl.ini 하나만 바꾸면 바로 winRE.wim 으로 사용할 수 있습니다.( 복구 패키지인 WinPE-SRT-Package 를 통합했다는 전제하에서)
PE가 부팅되면서 가장 먼저 winpeshl.ini를 찾기 때문에 boot.wim 에 어떤 트윅을 사용했든 간에 winpeshl.ini 에 등록된 응용프로그램(recenv.exe-복구모드)를 실행하게 되어 있습니다.
트윅된(복원 유틸이 포함된) boot.wim 의 2번 이미지를 /export 시켜줍니다.
(이미지가 1번 밖에 없다면 그냥 이름만 winRE.wim으로 바꿉니다.)
C: 에 boot.wim 이 있다면 명령은 이렇습니다.
imagex /export C:\boot.wim 2 C:\winRE.wim
이 winRE.wim 을 /mountrw 시켜서
Windows\System32 폴더의 winpeshl.ini를 교체하고
source\recovery 폴더에 Tools 폴더를 만든 다음
WinREConfig.xml 파일과
'Program Files' 폴더에 등록되어 있을 복원유틸을 실행시킬 배치파일을 넣어줍니다.
snapshot.exe 를 기준으로 제가 사용한 배치 파일과 WinREConfig.xml 파일입니다.
snapshot.exe 파일은 "Program Files\portable" 폴더에 위치 시켰고
배치 파일은 s.cmd 란 이름으로 Tools 폴더에 위치 시켰습니다.
<s.cmd 배치파일>
"X:\Program Files\potable\snapshot.exe" H:\my.sna G:
<WinREConfig.xml 파일>
<Recovery>
<FactoryRecoveryTool>
<RelativeFilePath>.\s.cmd</RelativeFilePath>
<AdminOnly>No</AdminOnly>
</FactoryRecoveryTool>
</Recovery>
6. winRE.wim 이 아닌 boot.wim을 이용한 복구 방법
이번에는 복구모드를 통한 복구방법이 아닌 멀티부팅 메뉴에서 바로 복구를 시작할 수 있는 방법입니다.
저는 시스템 파티션에 sources 폴더를 만들고 boot.wim 을 넣어둔 뒤
스누피님의 'PE로 부팅하기' 스크립트를 통해서 부팅메뉴에 등록해 놓고 사용하고 있습니다.
이 boot.wim 에 winpeshl.ini 와 배치파일, 실행파일을 첨가 하면 멀티 부팅 메뉴에서 바로 복구작업을 시작할 수 있습니다.
예를 들어, 위 5번에서 사용했던 winRE.wim 을 사용한다면
실행파일과 배치 파일이 모두 들어 있으므로 winpeshl.in 에서 s.cmd 의 경로만 지정해 줍니다.
winpeshl.ini 파일 내용입니다.
[LaunchApps]
x:\sources\recovery\tools\s.cmd
- s.cmd 를 위 경로에 두지 않고 cmd.exe 의 기본 경로인 Windows 폴더나 System32 폴더에 두면 위에서 경로는 생략해도 됩니다.
첨부한 PE로부팅등록.cmd를 살펴보시면 boot 폴더 안의 boot.sdi 파일을 찾도록 되어 있는데, 시스템 파티션의 boot 폴더에는 이 파일이 없습니다.
설치 CD 안의 boot 폴더 안에서 복사해서 붙여넣기 하시고 PE로부팅등록.cmd 를 실행합니다.
PE로부팅등록.cmd 를 실행할 때 주의 하실 것은 설치 CD나 USB는 제거하고 실행하세요.
사용할 boot.wim 파일은 sources 폴더를 만들고 그 안에 넣어 둡니다.
PE 부팅용으로 사용하지 않고 복구용으로 사용하실 거면 배치파일을 열어서 "PE로 부팅" 부분을 수정해서 사용하세요.
이상입니다.
여러 가지 내용을 장황하게 설명했는데 제가 정확히 모르는 부분이 많아서 그렇습니다.
틀리거나 부족한 부분은 지적하거나 채워주시기 바랍니다.
댓글 [11]
-
너털도사 2010.10.19 21:40
-
iron 2010.10.19 22:42 글 쓰시는 것 만으로도 시간을 굉장히 많이 사용하셨을 것 같습니다.
획기적인 방법인 것 같은데, 뭔가 좀 어려워보이네요. 그래도
시간 내주셔서 소중한 강좌를 작성해주셔서 대단히 감사합니다.
역시 은나노님!
-
eunnano 2010.10.19 23:20 획기적인 방법은 아니고 링크한 기술 문서, WAIK 도움말에 나와 있는 내용 입니다.
장황하게 써서 복잡한 데 몇 줄로 요약하자면 이렇습니다.
<install.wim 을 이용한 복구>
1.시스템 예약 파티션을 만든다.
2.winRE.wim 을 시스템 파티션의 Recovery\WindowsRE 폴더에 넣어준다.
3.ReAgent.exe 를 이용해 winRE.wim 과 install.wim 의 위치를 지정해 준다.
<복원 유틸을 이용한 복구>
1.위 과정과 동일한데 winRE.wim 에 복원 유틸과 WinREConfig.xml 을 넣어준다는 점이 틀립니다.
2.ReAgent.exe 를 이용해 복구환경을 구성할 때 install.wim 의 위치가 아니라 /customtool 옵션을 넣어준다는 점이 틀립니다.
설명이 어렵게 느껴지는 것은 imagex 를 한번도 사용해 보지 않았기 때문일 것입니다.
imagex 를 이용해 한번만 winRE.wim을 마운트 해보시면 대충 감이 옵니다.
OEM-PC 를 사용해 보지 않아서 잘 모르겠지만 OEM-PC의 복구 구성도 위 내용에서 크게 벗어 나지 않을 것 같습니다.
추가로, 숨김 파티션을 만들려면 diskpart 로 파티션 작업할 때 set id=27 명령을 넣어주면 됩니다.
제가 해보니 이 명령은 윈도우즈 상에서는 잘 안되고 PE 상태에서 해주면 잘 됩니다.
참조 : https://technet.microsoft.com/ko-kr/library/dd744364(WS.10).aspx
-
헤헤헤 2010.11.02 13:56
헉...저한테는 이 내용도 길게 느껴지네요....ㅋ
역시 아는게 힘이라는 말밖엔.....^^*
-
겸둥들빠 2010.10.19 22:50
항상 배려하는 마음을 느끼게 하시는 글 감사드립니다~
-
회탈리카 2010.10.20 12:43
복구라 .......윈도우7자체백업복구도 막강한데 이것은 어느때주로사용하는지요.궁금합니다.좀어려운내용이라서요.
-
eunnano 2010.10.20 21:23 win7 의 자체 복구 도구에 대한 글입니다.
제어판- 복구에 보시면 1.'시스템 복원 열기' 가 있습니다.
제어판- 복구- 고급 복구 방법에 보시면 2. '이전에 만든 시스템 이미지를 사용하여 컴퓨터 복구'가 있습니다.
제어판- 복구- 고급 복구 방법 두번째에 3. 'Winddows 다시 설치' 가 있습니다.
이글은 3 번에 해당하는 글입니다.
다음은 도움말에 나와 있는 글입니다.
Windows 다시 설치. 이 옵션은 Windows를 컴퓨터에 다시 설치합니다. 사용자 파일을 복원하고 원본 설치 디스크 또는 파일을 사용하여 이전에 설치한 프로그램을 다시 설치해야 합니다.
참고
-
Windows를 원래 설정으로 복원하는 옵션은 컴퓨터의 일부 항목만 삭제합니다. 즉, 프로그램은 삭제하지만 사용자 파일은 Windows.old 폴더에 저장하므로 다시 설치가 완료된 후 찾을 수 있습니다. 그러나 이 방법을 사용하는 경우에도 사용자 파일을 미리 백업해 두는 것이 좋습니다. 예를 들어 암호화된 파일이 있는 경우 Windows를 설치한 후에 해당 파일에 액세스하지 못할 수 있습니다. 사용자 파일을 백업해 두면 Windows를 다시 설치한 후에 복원한 다음 Windows.old 폴더를 삭제할 수 있습니다.
-
여햏자 2010.10.22 00:17
수고하셨습니다 시간내서 자세히 읽어보고 시도해봐야겠네요 ㅎ
-
정신수양 2010.10.28 05:09
이거 한번 해두면 oem-pc 와 같이 편안하게 사용가능할꺼 같은데요. 멋집니다+_+
근데 막상 해볼 엄두가 안나는걸요. 막강내공이 필요한 방법인듯;;
내용은 이해돼지만... 실행하기엔 너무 엄청난?ㅋ
-
내마음대롬 2010.11.08 20:28
엄청난 운영체제에 엄청난 명령들과 엄청난 방법이네요
도대체 뭔말인지 모르겠다 ㅡㅡ
-
쌍둥이아빠 2010.11.11 15:15
좀 어렵지만 차분히 따라해 보다보면 성공할 수 있겠지요.
그런데 이런 작업을 할 수 있다면 노트북에 내장된 복구영역을 열어서 거기에 있는 리커버리를 대체하거나 수정할 수도 있지 않을 까요?
제 노트북은 소니 바이오인데 여기 미국에서 구입한 거라 영문판 win7이 깔려있습니다.
싹 밀고 한국판으로 깔고나니 드라이버 잡는 것이 문제더군요. 힘들게 하나씩 찾아서 설치했지만, 맞지 않는 드라이버가 있었는지 초기에 오류 메시지가 항상 뜹니다. 00를 실행할 수 없다는 문구 비스므리 한건데요.
인증도 뭐가 초과되었다고 해서 전화로 확인하고 해서 인증을 받았습니다.
리커버리로 할 때는 그냥 인증된 상태로 나오는데 말이지요.
그래서 생각한건데 순정 리버커리 부분에서 윈도우 파일만 한글판으로 교체해 넣으면 나머지 드라이버와 인증 문제도 깔끔하게 해결되 않을까 해서요. 그렇게 설치하고 다시 필요한 프로그램들 설치 후 복원 파일을 만든 뒤에 다시 원본 리커버리 영역에 있는 복구 파일과 교체하면 좋지 않을 까 생각해 봅니다.
이리도 복잡해서야 누가 쓴담