기 타 PE 1회 부팅 - BCD(X) 레지 하이브를 하여 보았습니다
2023.07.30 23:43
BCD 흔적을 깨끗히 삭제하기 위해서 PE에서 PE 부팅시에 윈도우 파티션을 찾아서 레지 하이브를 하는 과정에 대해서는 이와 관련된
사용기가 많아서 이미 다 알고 계시는 부분이실것 같습니다
저의 경우에는 오토잇이나 cmd 버전에서 BCD 정보에서 윈도우 파티션을 찾아서 레지 하이브를 하고 있습니다
그런데 BCD의 정보를 읽는 방식을 사용하기 전에 간단(?)하게 테그 파일을 찾아서 하는 방식을 생각을 했었습니다
PE 1회 부팅에 사용되는 파일들을 PE 부팅시에 실행하기 위해서 PE 관련 프로그램 폴더에 있습니다..PE에서 PE로 부팅시에는 1회 부팅
관련 파일을 C:\Windows 폴더에 복사후 레지 하이브를 합니다.. 그래서 아예..첨부터 C:\Windows 폴더에 넣고 이 파일을 테그 삼아서
하면 어떨까 했습니다..BCD에서 정보 추출하는것보다는 쉬워서였습니다
C:\Windows 폴더에 파일들을 복사를 하여주십시요 하고 설명하는것과 윈도우 포멧시에도 부팅이 될수 있는것에 대한 이야기도 있고
해서..BCD에서 정보를 추출하는것으로 하게 되었습니다
DengJang님의 작품을 보면서..테그 방식이 소스도 간결해지고 bcdedit.exe를 사용하지 않아서 외국 PE에 대한 문제도 없고..생각만 하고
실제를 적용을 해보지 못한 아쉬움도 있고해서 cmd 버전에 적용을 하여 보았습니다
C:\Windows 폴더에 파일이 있어서 윈도우 부팅시 BCD 삭제시에 파일 삭제를 하지 않고 BCD 흔적만 지워서 소스도 간결해지는 이점도
있습니다
:: PE에서 윈도우 파티션 찾기
:_WinDrvFind
For %%a in (C D E F G H I J K L M N O P Q R S T U V W Y Z) do (
IF /i Exist %%a:\Windows\PEBootCmd.exe (
Reg.exe load HKLM\sw %%a:\Windows\System32\config\SOFTWARE
Reg.exe add "HKLM\sw\Microsoft\Windows\CurrentVersion\RunOnce" /v "PEBootDel" /t REG_SZ /d "C:\Windows\PEBootCmd.exe /Del" /f
Reg.exe unload HKLM\sw
Exit /b
))
Exit /b
BCD에서 정보 추출하는것보다 소스가 간단해졌습니다...
C:\Windows\PEBootCmd.exe 를 테그 삼아서 찾은후 하이브 하고 레지를 등록하는 방식입니다.
PE에서 윈도우 파티션 처럼 정렬해주는 기능이 있는 PE라면 C:에서 바로 검색이 되어서 레지 하이브를 합니다..
BCD 방식보다 속도는 더 빠른것 같습니다..레지를 읽고 기존 것이 등록이 되었는지를 체크하는 부분이 없습니다
테그 파일을 검색하기 때문에 여러개 윈도우가 있는 경우 BCD관련 윈도우에만 설치를 해야하기는 합니다
1. C:\Windows 폴더에 관련파일 3개가 모두 있습니다
2. 윈도우 부팅시에 파일을 삭제를 할 필요가 없어서 cmd에서 파일 삭제 관련이 필요가 없어서 바로 종료합니다
3. 1번 소스는 필요가 없습니다.. 2번처럼 소스가 간단해졌습니다..
4. 윈도우에서 우클릭 등록은 C:\Windows에 있는것으로 하였습니다
5. 우클릭에 등록이 되었습니다
6. 사용기여서 메세지로 확인을 하는것으로 설정하였습니다
7. PE로 부팅을 하였습니다..BCD에 등록된 것을 확인하여 보았습니다
8. 윈도우로 부팅을 하였습니다..BCD 흔적이 삭제가 되었습니다
9. BCD에서 바로 PE로 부팅을 하였습니다
10. 윈도우에 레지가 등록되지 않은 상태입니다..다른 PE로 부팅을 하여 보겠습니다
11. 다른 PE로 부팅이 되었습니다 PE에서 부팅시에 다른 폴더에 있는것을 사용을 해서 boot.sdi 파일이 아래 경로에 있습니다.
12. Windows 폴더에 있는 파일 검색후 레지를 하이브하고 등록하는것이 잘 되었습니다..
13. 윈도우로 부팅을 하였습니다..레지가 작동을 해서 BCD 흔적이 모두 삭제가 되었습니다.
14. 원래 여기에 있는 파일이어서 삭제 할 필요가 없습니다..
15. 마무리
머리속으로 생각만 해보았던것이었는데...DengJang님의 작품을 보면서 생각이나서 실제 적용까지 해보았습니다.
C:\Windows 폴더에 파일을 두고 사용하면서 PE에서 이것을 테그를 삼아서 검색하는것이 BCD 방식에 비해서 덜 고급스럽고 단점도 있을
것입니다..
소스가 쉬워서 쉽게 만들수 있고 복잡하지 않다는것이 장점일수 있을것 같습니다..
사용기를 쓰면서 좀 엉뚱한 생각이 나네요..이것도 한번 적용을 해봐야겠습니다
PE에서 BCD가 속해있는 왼도우 파티션을 찾는 방식이 제가 아는것이 BCD와 이것 2가지 밖에 없습니다
혹시 다른 좋은 방법이 있나요..
편안하신 시간이 되시길 바랍니다
수고하셨습니다.