질문과 답변

윈 도 우 고스트 자동화 2탄 분할백업 관련해서 질문드립니다 (suk님 자료)

2017.04.06 20:27

도넛 조회:327

2017-04-06_201450.jpg

 

원본인 11.5.1.2266 버전은 단일파일 백업으로 이상없습니다

 

12.0.0.10517 버전으로 파일을 교체해서 백업할 경우에 단일파일 백업이 되질않는데 이 문제를 해결하고싶습니다 (분할백업됨)

 

배치파일 어디를 수정해야하는지 문의드립니다

 

 

@prompt $s
@cd /d "%~dp0"
@color 1f
@setlocal enabledelayedexpansion


@if /i %systemdrive%==x: goto pe

@if not exist %~d0\ghost\ (echo. & echo  %~d0\ghost 폴더가 없습니다 & echo. & pause & exit )
@if not exist %~d0\ghost\boot.wim (echo. & echo  ghost 폴더에 boot.wim이 없습니다 & echo. & pause & exit )

@if not exist Ghost32.exe (echo. & echo. & echo  Ghost32.exe 파일이 있어야 합니다 & echo. & pause & exit )
@if not exist Ghost64.exe (echo. & echo. & echo  Ghost64.exe 파일이 있어야 합니다 & echo. & pause & exit )

@ver | find " 5." >nul && goto xp


@echo. 관리자권한 확인>%windir%\admin.confirm  || (
echo Set UAC = CreateObject("Shell.Application"^) > admin.vbs
echo UAC.ShellExecute "%~s0", "", "", "runas", 1 >> admin.vbs
admin.vbs & del admin.vbs & exit/b ) 
@del %windir%\admin.confirm

:del

@for %%A in (a b c d e f g h i j k l m n o p q r s t u v w x y z) do @(
if exist %%A:\윈도백업용표시파일입니다 del /f/q/a %%A:\윈도백업용표시파일입니다 
if exist %%A:\윈도복구용표시파일입니다 del /f/q/a %%A:\윈도복구용표시파일입니다
if exist %%A:\vhd백업용표시파일입니다 del /f/q/a %%A:\vhd백업용표시파일입니다
if exist %%A:\vhd복구용표시파일입니다 del /f/q/a %%A:\vhd복구용표시파일입니다

if exist %%A:\윈도백업용표시파일입니다 (
@echo.
@echo.   "%%A:\윈도백업용표시파일입니다" 파일이 삭제되지 않습니다
@echo. 
@pause
@exit
)      
if exist %%A:\윈도복구용표시파일입니다 (
@echo.
@echo.   "%%A:\윈도복구용표시파일입니다" 파일이 삭제되지 않습니다
@echo. 
@pause
@exit
)  
if exist %%A:\vhd백업용표시파일입니다 (
@echo.
@echo.   "%%A:\vhd백업용표시파일입니다" 파일이 삭제되지 않습니다
@echo. 
@pause
@exit
)   
   
if exist %%A:\vhd복구용표시파일입니다 (
@echo.
@echo.   "%%A:\vhd복구용표시파일입니다" 파일이 삭제되지 않습니다
@echo. 
@pause
@exit
)      

)

@bcdedit  >nul || (echo. & echo   bcdedit 에러납니다. PE에서 실행하세요& echo. & pause & exit)

@echo.
@echo.   %Systemdrive%을 고스트 백업 후에, 재부팅하시려면 엔터 [지금 재부팅됩니다.전자동]
@echo.
@set sys=sys
@set /p sys=다른 설정은 0번 입력하세요 : 


@if %sys%==0 goto rb

@echo rb >rb


@bcdedit /enum {current} /v | find "vhd=" >nul || (echo. >%Systemdrive%\윈도백업용표시파일입니다& goto bcd)

for /f "tokens=2,3 usebackq delims=[]\," %%a in (`"bcdedit /enum {current} /v | find "osdevice""`) do echo %%b>%%a\vhd백업용표시파일입니다

@echo. >%Systemdrive%\윈도백업용표시파일입니다

@goto bcd

:rb


@echo.
@echo.         고스트 백업 후에, 재부팅하시려면 엔터
set rb=rb
@set /p rb=아니면 0번 입력하세요 : 

@echo rb >rb
@if %rb%==0 echo fx >rb


:vol1

echo lis vol | diskpart

@for %%A in (z y x w v u t s r q p o n m l k j i h g f e d c b a) do @(
if exist %%A:\windows (echo. & echo %%A:에 윈도가 있습니다.&set src=%%A)
)

:src1

@echo.
@echo.         백업할 파티션을 고르세요. 
set src=%src%
@set /p src=문자만 입력하세요,위의 문자는 엔터 : 

@echo %src%| find ":" && goto src1 

@if /i %src%:==%Systemdrive% (echo. >%src%:\윈도백업용표시파일입니다& goto bcd)

@if not exist %src%:\* (echo. >%src%:\윈도백업용표시파일입니다& goto pe)
@if exist %src%:\windows\system32 (echo. >%src%:\윈도백업용표시파일입니다& goto pe)

@echo.
@echo.
@echo.
@echo.        %src%드라이브에는 윈도가 없고, "파일이 있습니다" 
set confirm=ok
@set /p confirm=정말 백업하시려면 "0번" 입력하세요, 잘못 입력하셨으면 엔터 :

@if %confirm%==0 (echo. >%src%:\윈도백업용표시파일입니다& goto pe)
@goto vol1

:bcd

@set wim_hdd_path="%~dp0boot.wim"
@set wim_hdd_menu=%wim_hdd_path%

@for %%a in (%wim_hdd_path%) do set wim_hdd_sdi=%%~dpaboot.sdi
@copy /y %windir%\system32\boot.sdi "%wim_hdd_sdi%"
@for /f "tokens=1 delims=\" %%a in (%wim_hdd_path%) do set wim_hdd_path1=%%a
@for /f "tokens=2 delims=:" %%a in (%wim_hdd_path%) do set wim_hdd_path2=%%a
@for /f "tokens=2 delims=:" %%a in ("%wim_hdd_sdi%") do set wim_hdd_sdi_path=%%a
@set wim_hdd_path_bcd=[%wim_hdd_path1%]%wim_hdd_path2%
@bcdedit  /create {ramdiskoptions} /d "Ramdisk Options"
@bcdedit  /deletevalue {ramdiskoptions} description
@bcdedit  /set {ramdiskoptions} ramdisksdidevice partition=%wim_hdd_path1%
@bcdedit  /set {ramdiskoptions} ramdisksdipath "%wim_hdd_sdi_path%"
@bcdedit   /create /d %wim_hdd_menu% /application OSLOADER > guid
@for /f "tokens=1-5 delims=-" %%a in (guid) do @(
set first=%%a
set last=%%e
set wim_hdd_guid=!first:~-9!-%%b-%%c-%%d-!last:~0,13!
)
@del guid
@bcdedit  /set %wim_hdd_guid% device ramdisk="%wim_hdd_path_bcd%",{ramdiskoptions}
@bcdedit  /set %wim_hdd_guid% osdevice ramdisk="%wim_hdd_path_bcd%",{ramdiskoptions}
@bcdedit /enum {current} | find "winload.efi" && (bcdedit  /set %wim_hdd_guid% path \windows\system32\boot\winload.efi)
@bcdedit /enum {current} | find "winload.efi" || (bcdedit  /set %wim_hdd_guid% path \windows\system32\boot\winload.exe)
@bcdedit  /set %wim_hdd_guid% systemroot \windows
@bcdedit  /set %wim_hdd_guid% detecthal yes
@bcdedit  /set %wim_hdd_guid% winpe yes
@bcdedit  /set %wim_hdd_guid% nointegritychecks yes
:@bcdedit | find %wim_hdd_path% || bcdedit  /displayorder %wim_hdd_guid% /addlast
@bcdedit /default {current}
@bcdedit /bootsequence %wim_hdd_guid%
@bcdedit | find "bootsequence" || @(echo. & echo  즉석부팅 등록에 실패했습니다 & echo. & pause & exit )
shutdown -r -f -t 0
exit


:pe


@ for /f "tokens=1-3 delims=-" %%a in ("%date%") do @(
    set y=%%a
    set m=%%b
    set d=%%c
)


@ for /f "tokens=1-2 delims=:" %%a in ("%time%") do @(
    set hh=%%a
    set mm=%%b
)

@if exist %windir%\SysWOW64 set bit=64
@if not exist %windir%\SysWOW64 set bit=32


@if not exist Ghost%bit%.exe (echo. & echo. & echo  Ghost%bit%.exe 파일이 있어야 합니다 & echo. & pause & exit )


@for %%A in (a b c d e f g h i j k l m n o p q r s t u v w x y z) do @(
if exist %%A:\윈도백업용표시파일입니다 (set src=%%A& del %%A:\윈도백업용표시파일입니다& goto img)
if exist %%A:\vhd백업용표시파일입니다 (set src=%%A& goto img)
)

:vol2

echo lis vol | diskpart

@for %%A in (z y w v u t s r q p o n m l k j i h g f e d c b a) do @(
if exist %%A:\windows (echo. & echo %%A:에 윈도가 있습니다.&set src=%%A)
)

:src2

@echo.
@echo.         백업할 파티션을 고르세요. 
set src=%src%
@set /p src=문자만 입력하세요,위의 문자는 엔터 : 

@echo %src%| find ":" && goto src2 

@if not exist %src%:\* (echo. >%src%:\윈도백업용표시파일입니다& goto img)
@if exist %src%:\windows\system32 (echo. >%src%:\윈도백업용표시파일입니다& goto img)


@echo.
@echo.
@echo.
@echo.        %src%드라이브에는 윈도가 없고, "파일이 있습니다" 
set confirm=ok
@set /p confirm=정말 백업하시려면 "0번" 입력하세요, 잘못 입력하셨으면 엔터 :

@if %confirm%==0 (echo. >%src%:\윈도백업용표시파일입니다& goto img)
@goto vol2

:img

@if exist %src%:\vhd백업용표시파일입니다 goto vhd

:img2

@if not exist %src%:\windows\system32 goto rb2

@if exist %src%:\windows\SysWOW64 set bit2=64
@if not exist %src%:\windows\SysWOW64 set bit2=32

@reg load hklm\load %src%:\windows\system32\config\software 

@for /f "skip=2 tokens=3* usebackq" %%a in (`"reg query "HKLM\load\Microsoft\Windows NT\CurrentVersion" /v ProductName"`) do  @set win=%%a %%b %bit2%bit

@reg unload hklm\load

:rb2


@if exist rb find "rb" rb && (set rb=rb& goto run)
@if exist rb find "fx" rb && (set rb=fx& goto run)

@echo.
@echo.         고스트 백업 후에, 재부팅하시려면 엔터
set rb=rb
@set /p rb=아니면 0번 입력하세요 : 

if %rb%==0 set rb=fx


:run

if exist file del file
if exist rb del rb

if exist GHOSTERR.TXT del GHOSTERR.TXT
if exist *.dmp del *.dmp

@if not exist %src%:\windows\system32 goto run2

start Ghost%bit%.exe -clone,mode=pcreate,src=@OS:%src%:,dst="%win%-%y%-%m%-%d% %hh%h-%mm%m-%src%-drive.gho" -sure -z1 -fnf -%rb%

exit

:run2

start Ghost%bit%.exe -clone,mode=pcreate,src=@OS:%src%:,dst="%y%-%m%-%d% %hh%h-%mm%m-%src%-drive.gho" -sure -z1 -fnf -%rb%

@exit


:xp

@bcdedit 1>nul 2>nul && goto del
@if not exist %~d0\ghost\Install-BM (
echo. 
echo  ghost 폴더 안에 Install-BM폴더가 없습니다 
echo. 
pause 
exit 
)

@echo.
@echo    boot.wim으로 자동 재부팅 하기 위하여 win7 방식으로 부팅파일을 심습니다.
@echo.
@echo.   하지 않으시려면 창을 닫으시면 됩니다.
@echo.
@pause

@copy /y Install-BM\bootmgr %systemdrive%\ 

@copy /y Install-BM\bcdedit.exe %windir%\System32
@copy /y Install-BM\bootsect.exe %windir%\System32
@copy /y Install-BM\ko-KR\bcdedit.exe.mui %windir%\System32\ko-KR\

@xcopy /cherykisf Install-BM\Boot %systemdrive%\Boot 
@copy /y Install-BM\boot.sdi %systemdrive%\Boot\
@copy /y Install-BM\boot.sdi %windir%\System32\

@bcdedit /import Install-BM\BCD

@bcdedit /create {ntldr} /d "Windows XP"
@bcdedit /set {ntldr} device partition=%systemdrive%
@bcdedit /set {ntldr} path \ntldr
@bcdedit /displayorder {ntldr} /addfirst
@bcdedit /default {ntldr}

@bcdedit /set {bootmgr} device partition=%systemdrive%
@bcdedit /set {memdiag} device partition=%systemdrive%

@bcdedit /create {ramdiskoptions} /d "Ramdisk Options"
@bcdedit /set {ramdiskoptions} ramdisksdidevice partition=%systemdrive%
@bcdedit /set {ramdiskoptions} ramdisksdipath \Boot\boot.sdi
@bcdedit /deletevalue {ramdiskoptions} description

@bootsect /nt60 %systemdrive% /mbr

@attrib %systemdrive%\bootmgr +a +s +h +r
@attrib %systemdrive%\Boot +s +h

@goto del


:vhd

cd /d %src%:\

for /f "tokens=* usebackq" %%a in (`"find /i ".vhd" vhd백업용표시파일입니다"`) do set vhd=%%a

>diskpart.txt echo sel vdi file="%src%:\%vhd%"  
>>diskpart.txt echo attach vdisk  
>>diskpart.txt echo sel par 1 
>>diskpart.txt echo ass letter=a  
diskpart /s diskpart.txt

@if not exist a:\윈도백업용표시파일입니다 (

>diskpart.txt echo sel vdi file="%src%:\%vhd%" 
>>diskpart.txt echo sel par 2 
>>diskpart.txt echo ass letter=a 
diskpart /s diskpart.txt 
)

del diskpart.txt

del vhd백업용표시파일입니다

set src=a

@if not exist a:\윈도백업용표시파일입니다 (echo. & echo  "a:\윈도백업용표시파일입니다"가 없습니다. 엉뚱한 파티션이 선택된 듯 합니다 & echo. & pause & exit )

del a:\윈도백업용표시파일입니다


@cd /d "%~dp0"

goto img2

-------------------------------------------------------------------------------------------------------------

 

번호 제목 글쓴이 조회 등록일
[공지] 질문과 답변 게시판 이용간 유의사항 gooddew - -
9811 소프트웨어| 구글크롬 포터블을 사용하면 컴퓨터다운 [1] 칼슘 328 08-10
9810 소프트웨어| 크롬 쓰시는 분들 지금 어떠신가요? [1] 머시깈 328 09-06
9809 하드웨어| 부팅문제... Icarus 328 01-02
9808 하드웨어| 질문 드리겠습니다~ [1] 동규아빠 328 11-17
9807 소프트웨어| 익스플로러10 포터블 구할수 없을까요? [1] 한걸음 328 06-13
9806 윈 도 우| 프로그램 실행시 묻는 창? [2] tuzki 328 06-11
9805 윈 도 우| 배치파일 도움받고 한번만 더 질문 올립니다~ [2] 할머니즘 328 02-23
9804 윈 도 우| 윈도우 시작시 고급옵션 관련 [4] magoo 327 07-11
9803 하드웨어| 노트북에서 usb-c타입 질문드려요 [1] 도봉천 327 04-27
9802 윈 도 우| GUI(그래픽) 로 efi 파티션 만들 수 있는 프로그램? [8] ton3d 327 01-24
9801 윈 도 우| 125 크롬 버전 ui 변경 어떻게 바꾸나요? [2] 초보해커 327 05-16
9800 하드웨어| 모니터 화면이 퍼드덕 거립니다 [2] joe 327 08-29
9799 윈 도 우| 윈도우 11에서 세이크럽 되는 방법있나요 [4] 세븐좋아 327 03-02
9798 하드웨어| 문의)) 키보드 한영키가 원도우 시장메뉴키로 변경되었어요... [2] chobits 327 12-03
9797 윈 도 우| 윈도우 7에서 Mac 주소 변경 명령어 문의 [6] Orange_Dad 327 10-14
9796 윈 도 우| 다운로드중 68% 해결방법 문의 [7] vegabond 327 08-12
9795 하드웨어| AC9461 드라이버 코드10 요구한 작업을 성공하지못했습니다 [1] SEVEN 327 07-11
9794 윈 도 우| 텍스트, 앱 및 기타 항목 크기 변경 레지스트리 도와주세요... [1] yooohwoo 327 04-26
9793 윈 도 우| 소리설정 [2] 상큼한아침 327 07-25
9792 서버 / IT| DELL 7920T에 메모리를 128GB 장착하려고 합니다~ 알려주세... [1] 결비 327 07-25
XE1.11.6 Layout1.4.8