앞서 지난 포스팅에서 설명한 대로 대부분의 윈도우 PE들은 WINPESHL.INI 파일의 LaunchApp 섹션에 쉘 프로그램, 즉 윈도우의 시작 메뉴, 작업 표시줄 등 UI를 담당하는 Explorer.exe 같은 프로그램들을 지정해서 사용합니다. 저번에 만들었던 Q-Dir PE처럼 단일 프로그램을 실행하는 PE를 사용해도 되지만 이러한 쉘 프로그램을 사용하는 이유는 조금 더 PE를 실제 윈도우 환경과 비슷하게 사용할 수 있기 때문인데요, 이번 포스팅에서는 이러한 쉘 프로그램들 중 가장 가볍고 무난한 PE용 쉘 프로그램인 BSExplorer를 PE에 추가하고, 설정 파일을 작성하는 방법을 알아보도록 하겠습니다.


윈도우 PE에 BSExplorer 추가하기




첨부된 파일의 압축을 푸시면 두 개의 폴더가 들어있습니다. 이 중 BSExplorer는 PE로 복사한 뒤 WINPESHL.INI에 등록해서 사용할 폴더이며, BSConvert는 BSExplorer의 설정 파일을 수정하기 위한 프로그램입니다.



BSExplorer를 PE에 추가하는 방법도 '[Windows PE] 간단한 윈도우 PE 만들기' 에서 Q-DIR을 추가했던 방법과 동일합니다. MakePE 배치파일을 통해서 WIM 파일을 마운트 하시고, Program Files 폴더에 BSExplorer 폴더를 복사하시고 winpeshl.ini의 [LaunchApp] 섹션에 BSExplorer 실행파일을 지정해주시면 됩니다. 

(MakePE 배치파일은 여기에서 다운로드 해주세요. 압축을 푸시고 MakePE.bat을 관리자 권한으로 실행하시면 됩니다.)



만들어진 PE로 부팅하시면 이렇게 BSExplorer가 실행되며 실제 윈도우와 비슷한 시작메뉴가 나타나는 것을 보실 수 있습니다.


BSExplorer의 시작메뉴 구성하기


BSExplorer의 시작메뉴와 바탕화면 등을 설정하려면 BSExplorer 폴더 안의 bs_desktop.ini, bs_start.ini 등 BSExplorer의 설정 파일을 수정해야 합니다. 간단한 작업은 메모장을 사용해서 직접 파일을 수정해도 되지만 이를 일일히 수정하는 일은 너무 비효율적이기 때문에 BSExplorer의 제작자는 이런 작업을 간단히 해주는 프로그램인 BSConvert를 제공하고 있습니다.

첨부된 파일 중 BSConvert 폴더 안의 Nu2Convert.exe를 실행해 주세요.



Nu2Convert 프로그램이 실행되면 'Files - Open BS Menu File' 메뉴를 선택해줍니다.



현재 설정되어있는 가상 루트 경로가 올바르지 않다는 메시지가 출력되는데요, '예(Y)'를 클릭해주세요.



'가상 루트 경로'를 지정해주셔야 하는데요, PE가 마운트 되어있는 경로를 지정해주시면 됩니다. MakePE가 있는 경로의 Mount 폴더를 지정해주세요.



이제 bs_start.ini를 선택해줍니다. 기본 경로는 MakePE\Mount\Program Files\BSExplorer\bs_start.ini 입니다.



bs_start.ini의 내용이 출력되며 간편하게 수정할 수 있습니다. 수정을 하시려면 수정할 항목을 선택하시고, 오른쪽의 속성을 수정해주시면 됩니다. 먼저 저는 모든 메뉴를 한글로 바꿔보겠습니다.



항목의 이름을 바꾸려면 바꿀 항목을 선택하시고 오른쪽 속성 중 'Caption'을 바꿔주시면 됩니다. (Menu ID는 항목의 고유 이름입니다.) 저는 모든 항목의 Caption을 한글로 바꿔주었습니다.



이번에는 새로운 항목을 만들어보겠습니다. 새로 항목을 만들 폴더를 우클릭하시고 'New menu item' 을 클릭해주세요.



이런식으로 작성해주시면 됩니다 ^^ 적당한 Menu ID와 Caption을 적어주시고, 'Exe File Name'에서 프로그램을 지정해주시면 되는데요, 추가할 프로그램은 미리 PE가 마운트된 폴더의 Program Files 폴더로 옮겨주셔야 합니다.



수정이 완료되면 'File - Save Bs Menu File' 을 클릭해서 저장해주시면 됩니다.



완성된 PE로 부팅한 모습입니다. 수정된 시작메뉴가 보이시나요?



첨부파일 [1]


저작자 표시 비영리 변경 금지
신고
 




심정현 2013.03.19 10:09 신고 URL EDIT REPLY
이 블로그에서 많은 정보와 가르침 얻고 있습니다.
다름이 아니라 밑에처럼 grub 메뉴리스트를 편집하여 부팅은 되는데~현재 xp가 전부 에러가 나네요?
물론 제가 공부하여야 할 것도 더 있겠지만, 혹시 메모리 주소라던지 헤더 이름이라던지 간단히 봐 주실순 없으실런지요? 부탁드리겠습니다.
혹시 몰라서 메일주소 남깁니다. is7506@nate.com

timeout 15
default 0

title 1. Boot from Hard Drive
chainloader (hd0)+1
rootnoverify (hd0)
boot

title --------------------------------------
pause

title 2. Xp Sp3 IE8 ChocoEdition
find --set-root /XpChoco.iso
map (hd0) (hd1)
map (hd1) (hd0)
map --mem /firadisk.img (fd1)
map --mem (md)0x6000+800 (fd0)
map --mem /XpChoco.iso (0xff)
map --hook
dd if=(fd1) of=(fd0) count=1
chainloader (0xff)

title 2-1. Continue Xp Sp3 IE8 ChocoEdition
find --set-root /XpChoco.iso
map (hd0) (hd1)
map (hd1) (hd0)
map --mem /XpChoco.iso (0xff)
map --hook
dd if=(fd1) of=(fd0) count=1
chainloader (hd0)+1

title --------------------------------------
pause

title 3. Xp Sp3 Neo's Edition
find --set-root /XpNeo.iso
map (hd0) (hd1)
map (hd1) (hd0)
map --mem /firadisk.img (fd1)
map --mem (md)0x6000+800 (fd0)
map --mem /XpNeo.iso (0xff)
map --hook
dd if=(fd1) of=(fd0) count=1
chainloader (0xff)

title 3-1. Continue Xp Sp3 Neo's Edition
find --set-root /XpNeo.iso
map (hd0) (hd1)
map (hd1) (hd0)
map --mem /XpNeo.iso (0xff)
map --hook
dd if=(fd1) of=(fd0) count=1
chainloader (hd0)+1

title --------------------------------------
pause

title 4. Win7 SP1 Ultimate 32,64 OEM AutoCrack
dd if=()/firadisk/au.xml of=()/AutoUnattend.xml
dd if=()/firadisk/spaces.txt of=()/firadisk/ISONAME.CMD
write ()/firadisk/ISONAME.CMD SET MYISO=\\Win7-3264.iso\r\n
map --mem (md)0x800+4 (99)
map /Win7-3264.iso (0xff)
map (hd0) (hd1)
map (hd1) (hd0)
map --hook
write (99) [FiraDisk]\nStartOptions=cdrom,vmem=find:/Win7-3264.iso;\n\0
chainloader (0xff)

title 5. Win7 Home Premium Ko Sp1 x64
dd if=()/firadisk/au.xml of=()/AutoUnattend.xml
dd if=()/firadisk/spaces.txt of=()/firadisk/ISONAME.CMD
write ()/firadisk/ISONAME.CMD SET MYISO=\\ISO\\Win7home64.iso\r\n
map --mem (md)0x800+4 (99)
map /ISO/Win7home64.iso (0xff)
map (hd0) (hd1)
map (hd1) (hd0)
map --hook
write (99) [FiraDisk]\nStartOptions=cdrom,vmem=find:/ISO/Win7home64.iso;\n\0
chainloader (0xff)

title 6. Win7 Pe Tools
dd if=()/firadisk/au.xml of=()/AutoUnattend.xml
dd if=()/firadisk/spaces.txt of=()/firadisk/ISONAME.CMD
write ()/firadisk/ISONAME.CMD SET MYISO=\\ISO\\Win7Pe.iso\r\n
map --mem (md)0x800+4 (99)
map /ISO/Win7Pe.iso (0xff)
map (hd0) (hd1)
map (hd1) (hd0)
map --hook
write (99) [FiraDisk]\nStartOptions=cdrom,vmem=find:/ISO/Win7Pe.iso;\n\0
chainloader (0xff)

title 7. Reboot
reboot

title 8. Power Off
halt
komtech 2013.03.19 17:44 신고 URL EDIT REPLY
잘보고 갑니다.
bobcat 2013.03.19 19:31 신고 URL EDIT REPLY
대박~~~~ pe 만드는 과정 자세한 설명 감사합니다... 전혀 몰랐던거 하나씩 알아가는거 너무 좋습니다..^.^
templer79 2013.04.02 15:54 신고 URL EDIT REPLY
한가지 궁금한것이 있습니다.
설치시 레지스트리에 등록이 되어지는 프로그램들은 어떻게 추가를 해야 하나요...

PE 에다가 투루 이미지 실행화일을 넣으려고 하는데...
프로그램 설치된 하드 드라이브에서 통체로 폴더를 복사하면 되나요??

설치하드에 레지스트리 등록이 되어서.. 통체로 옮겨도 안될것 같은데.. 어떤 방법을 써야 하나요??
크럭스 RUX | 2013.04.11 22:41 신고 URL EDIT
트루 이미지 같은 경우는 포터블을 사용하시면 간단하고요,
레지스트리 같은 경우는 WIM 파일을 마운트하신뒤,
Windows\System32\Config 폴더의 하이브를 열어서 편집해주셔야 합니다.
Dolphin 2013.05.01 11:38 신고 URL EDIT REPLY
상세한 설명 덕분에 잘 따라해보고 있습니다. ^^
궁금한게 있는데 Q-Dir가 PE상에서는 파일들을 복사해서 붙여넣기가 안되는데 원래 이런건지..
PE가 아닌 단순 Windows 내에서 실행시켰을때에는 복사와 붙여넣기 등이 됩니다만..
PE에서만 실행시키면 그러한 기능들이 안되네요.
제가 잘못만들어서 그런건지 원래 이런건지 알고싶습니다. ㅠㅠ
크럭스 RUX | 2013.05.06 21:01 신고 URL EDIT
올바르게 만드신 것 맞습니다 ^^;;;

기본 PE에는 복사/붙여넣기 기능 중 작업 상태를 보여주는 창이 제외되어있고, 자동 새로고침 기능도 제외되어 있습니다. 따라서 복사/붙여넣기가 안되는 것이 아니라 복사/붙여넣기 창이 안 뜨며, 붙여넣기가 완료되더라도 새로고침이 안되는 것입니다.

파일을 복사하시고 붙여넣으신 뒤 F5로 새로고침해보세요 ^^

p.s. 복사/붙여넣기 창을 띄우시려면 해당 창의 리소스를 포함하고 있는 DLL을 포함하시거나, TeraCopy 등 복사/붙여넣기 대체 프로그램을 사용해주시면 됩니다 ^^
Dolphin | 2013.05.14 13:42 신고 URL EDIT
아..dll이 빠져서 그랬던거군요..
댓글에 감사드립니다. 좋은하루 되세요~ ^^
김김김 2013.05.25 16:20 신고 URL EDIT REPLY
안녕하세요..


여기 블로그 보고 멀티부팅에 관하여 많이 배우고 있는 사람입니다.

자세한 설명 덕분에 많은것을 알아갈 수 있어서 너무 좋네요..^^

다름이 아니라 한가지 질문이 있습니니다.


혼자 해결해보려다가 지식이 없어서 도저히 해결이 안되서 도움을 청하려 합니다.


일단 제 usb는 ntfs 방식으로 포멧이 되어있습니다.


그리고 여기 블로그에 나와있는 것처럼 grub프로그램을 이용하여 부팅가능하게 하여서

현재 xp설치와 윈7 설치를 만들어놓은 상태인데요..

xp나 윈 7설치 같은것은 이상없이 돌아가고 있습니다..


그런데 제가 원하는것은 ntfs파일을 읽을 수 있는 도스로 부팅하는 것인데요..


어렵게 인터넷에서 ima 파일을 받아 부팅하였더니 이상한 현상이 발생하네요..

부팅관련 ima파일은 죄송하지만 skyline_31@naver.com 으로메일주시면 보내드리겠습니다..

그리고 menu.lst 내용은 다음과 같습니다.


title ntfs dos
find --set-root --ignore-floppies /dos/boot_ntfs.ima
map --mem /dos/boot_ntfs.ima (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)


현상은 이렇습니다.


제 컴퓨터(윈7설치되어있고 64비트)에서 메일 보내드릴 ima파일로 부팅하여 2번째 씨디롬부팅 선택 후 5번인가 6번쯤에 있는 ntfs도스 부팅을 실시하면 제 usb가 잡히질 않습니다..

흠.. 뭐라고 설명해야하냐면.. ima 파일 안에 있는 내용들이 a드라이브와 c드라이브에 잡히고 제 하드디스크가 d부터 잡힙니다..


그런데 다른컴퓨터(윈도우 xp가 설치되어있는 32비트 컴퓨터) 에서는 ima 파일 안에 있는 내용들이 a드라이브와 c드라이브에 잡히는것 까지는 똑같은데.. d드라이브에 제 usb가 인식이 되고 e드라이브부터 해당 컴퓨터의 하드디스크가 인식이 되더군요..


제가 원하는것은 제 컴이 아닌 다른컴에서처럼 usb자체를 인식하여 그 안에서 도스를 돌리고 싶은데.. 제 컴에서만 유독 안되니..


방법을 모르겠네요.. 저장소로도 사용하는 usb여서 대용량 파일때문에 ntfs 포멧을 포기하기도 힘든 상황이구요..


해결 방법이나 더 좋은 방법이 있으면 알려주시면 감사하겠습니다. ㅠㅠ


메일좀 꼭 부탁드립니다.. 긴 글 읽어주셔서 감사드립니다.
2013.07.19 02:15 URL EDIT REPLY
비밀댓글입니다
기대운 2014.01.23 02:15 신고 URL EDIT REPLY
pe모드에서 ip세팅을 바꿀수가있을까요??
Basix 2014.03.10 18:07 신고 URL EDIT REPLY
boot.wim을 바꾸면 부팅이 안됩니다 ㅜㅜ
2014.03.14 13:06 URL EDIT REPLY
비밀댓글입니다
으아아 2014.11.15 14:03 신고 URL EDIT REPLY
제발 봐주세요 ㅠㅠ bs익스플로러가 실행이 안되고 명령프롬프트만 실행되요ㅠㅠ
크럭스 RUX | 2014.11.15 14:59 신고 URL EDIT
어떤 boot.wim 파일을 사용하신 건가요? WAIK에 포함된 boot.wim은 Setup.exe를 무시하고 cmd.exe를 실행합니다. 윈도우 순정 설치 DVD에 포함된 boot.wim 파일을 사용하셔서 다시 시도해 보세요.
으아아 | 2014.11.15 15:05 신고 URL EDIT
윈7 boot.wim을 사용했고요,Setup.exe가 있으면Setup.exe만 떠서 Setup.exe지웠습니다... Setup.exe가 필요한가요?
크럭스 RUX | 2014.11.15 15:10 신고 URL EDIT
Setup.exe는 지우셔도 냅두셔도 상관없습니다. BSExplorer만 실행되지 않는건지 아예 WINPESHL.ini를 무시하는 것인지 모르겠네요. [link]http://diginuri.tistory.com/43[/link] 대로 하면 Q-DIR이 실행되나요?
으아아 | 2014.11.15 16:28 신고 URL EDIT
Q-DIR도 실행이 안되네요 ㅠ_ㅠ WINPESHL.ini을 무시하는 것 같아요.
크럭스 RUX | 2014.11.15 16:33 신고 URL EDIT
System32 폴더 내부의 startnet.cmd가 있다면 삭제하고 재시도해보세요. startnet.cmd 파일이 존재하면 winpeshl.ini를 로드하지 않는다는 것 같습니다.
으아아 | 2014.11.15 17:09 신고 URL EDIT
해볼게요...(제발 되었으면 ㅠ_ㅠ...)
으아아 | 2014.11.19 20:26 신고 URL EDIT
확인해 봤는데 이번엔startnet.cmd가 없다고 cmd가 또 열리네요 ㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠ
으아아 | 2014.12.25 20:55 신고 URL EDIT
크럭스님 제발 도와주세요ㅠ
Name
Password
Homepage
Secret
굵게 밑줄 기울임 취소선   취소선 취소선 취소선 취소선   왼쪽 정렬 가운데 정렬 오른쪽 정렬   코드박스 인용구 이미지   이미지 업로드