Windows PE เป็นหนึ่งในเครื่องมือสามัญที่ผู้ดูแลระบบ Windows ควรมีไว้ในกล่องเครื่องมือประจำตัว เนื่องจากสามารถใช้งานได้หลากหลายรูปแบบทั้งการติดตั้ง Windows การกู้ระบบ และยังสามารถประยุกต์ใช้งานเฉพาะทาง เช่น การโคลนฮาร์ดดิสก์ได้อีกด้วย บทความนี้ผมจึงนำวิธการสร้างตัวบูท Windows PE ยูเอสบีแฟลชไดรฟ์ มาฝากครับ
Windows PE คืออะไร
ก่อนอื่นขอแนะนำ Windows PE พอสังเขป ดังนี้ครับ
Windows Preinstallation Environment หรือ Windows PE (นิยมเรียกสั้นๆ ว่า WinPE) เป็นเวอร์ชัน minimal ของ Windows ซึ่งใช้ในการ install, deploy, และ repair Windows รุ่นเดสก์ท็อป (Home, Pro, Enterprise, and Education) และ Windows Server
Windows PE สามารถใช้งานด้านต่างๆ ดังนี้
- เซ็ตอัพฮาร์ดไดรฟ์ให้พร้อมสำหรับการติดตั้ง Windows
- ทำการติดตั้ง Windows โดยใช้แอปหรือสริปต์จากเครือข่ายหรือไดรฟ์บนเครื่อง
- แคปเจอร์และประยุกต์อิมเมจ Windows
- แก้ไขระบบปฏิบัติการ Windows ในขณะที่อยู่ในสถานะออฟไลน์
- เซ็ตอัพเครื่องมือการกู้คืนอัตโนมัติ (automatic recovery)
- กู้ข้อมูลจากอุปกรณ์ Windows ที่มีปัญหาการทำงาน
- ปรับแต่ง shell หรือ GUI เพื่อทำงานต่างๆ ตามความต้องการ
นอกจากนี้ ยังสามารถประยุกต์ใช้ Windows PE ร่วมกับโปรแกรมต่างๆ เช่น Symantec Ghost เพื่อใช้ในการโคลนฮาร์ดดิสก์ (กรณีการโคลน Windows ให้ระวังเรื่องลิขสิทธิ์ด้วยนะครับ)
Windows PE รองรับฟีเจอร์หรือการใช้งานในลักษณะต่างๆ ดังต่อไปนี้
- ไฟล์ Batch และ scripts รวมถึง Windows Script Host (WSH) และ ActiveX Data Objects (ADO) และออปชันสำหรับการสนับสนุน PowerShell
- แอปพลิเคชัน รวมถึงแอปพลิเคชัน Win32 APIs และออปชันสำหรับการสนับสนุนแอปพลิเคชัน HTML (HTA)
- ไดรฟเวอร์ รวมถึง ชุด ไดรฟเวอร์ทั่วไป (Generic) ซึ่งสามารถรันเครือข่าย กราฟิกและอุปกรณ์เก็บข้อมูลได้โดยไม่ต้องติดตั้งไดรฟ์เวอร์เพิ่ม
- แคปเจอร์อิมเมจ Windows ด้วย Deployment Image Servicing and Management (DISM)
- เครือข่าย สามารถเชื่อมต่อกับ file servers บน LAN โดยใช้ TCP/IP และ NetBIOS over TCP/IP
- อุปกรณ์เก็บข้อมูล รวมถึง NTFS, DiskPart และ BCDBoot
- เครื่องมือความปลอดภัย ออปชันสำหรับการสนับสนุน BitLocker และ Trusted Platform Module (TPM), Secure Boot และเครื่องมืออื่นๆ
- Hyper-V รวมถึง ไฟล์ VHD, ใช้งานเม้าส์, อุปกรณ์เก็บข้อมูลและไดรฟ์เวอร์เครือข่ายซึ่งอนุญาตให้ Windows PE รันใน hypervisor
Windows PE ไม่รองรับฟีเจอร์หรือการใช้งานในลักษณะดังต่อไปนี้
- File server หรือ Terminal Server
- เข้าร่วม Domain
- เชื่อมต่อกับเครือข่าย IPv4 จาก Windows PE บน เครื่อข่าย IPv6
- Remote Desktop
- ติดตั้งโปรแกรมจากไฟล์ .MSI
- บูทระบบจากพาธที่มีตัวอักษรไม่ใช่ภาษาอังกฤษ
- รันแอป 64-บิต บน Windows PE 32-บิต
- เพิ่มชุดแอปที่แถมมา (bundled app packages) ผ่านทาง DISM (.appxbundle packages)
ข้อจำกัดของ Windows PE
Windows PE มีข้อจำกัดดังนี้
- ไมโครซอฟท์ออกแบบ Windows PE มาสำหรับใช้งานในลักษณะการปรับใช้และกู้คืน Windows (deployment and recovery) เป็นหลัก ไม่ได้ออกแบบมาเพื่อใช้งานทดแทน thin client หรือ Windows embedded
- Windows PE หยุดทำงานและรีสตาร์ทอัตโนมัติหลังรันต่อเนื่องเป็นเวลา 72 ชั่วโมง และไม่สามารถเปลี่ยนแปลงค่านี้ได้ โดยหลังการรีสตาร์ทการตั้งค่าและความเปลี่ยนแปลงต่างๆ จะหายไปอย่างสิ้นเชิง
ความต้องการฮาร์ดแวร์ของ Windows PE
Windows PE มีความต้องการระบบฮาร์ดแวร์เหมือนกับ Windows เวอร์ชันปกติ ยกเว้นด้านต่อไปนี้
- ไม่ต้องการฮาร์ดไดรฟ์ เพราะสามารถรัน Windows PE ได้จากหน่วยความจำ
- Windows PE เวอร์ชันพื้นฐานต้องการหน่วยความจำเพียง 512 MB
เครื่องมือสำหรับใช้สร้าง Windows PE USB Flash Drive
ถึงตอนนี้ได้รู้จัก Windows PE กันพอสังเขปแล้ว ขั้นตอนถัดไป – มาดูกันว่าในการสร้าง Windows PE USB Flash Drive ต้องใช้อะไรบ้าง
การสร้างสร้างตัวบูท Windows PE ยูเอสบีแฟลชไดรฟ์ มีความต้องการอุปกรณ์ฮาร์ดแวร์และซอฟต์แวร์ ดังนี้
1. เครื่องพีซีสำหรับใช้สร้าง Windows PE USB Flash Drive
เครื่องพีซี Windows 8.1 หรือ Windows 10 จำนวน 1 เครื่อง (บทความนี้ใช้ Windows 8.1 Enterprise) สำหรับใช้ติดตั้งโปรแกรม Windows ADK เพื่อใช้ในการสร้าง Windows PE USB Flash Drive
2. โปรแกรม Windows ADK
การสร้าง Windows PE ต้องใช้เครื่องมือชื่อ Windows ADK ซึ่งในกรณีที่ยังไม่มี Windows ADK บนเครื่องให้ไปดาวน์โหลดได้จากเว็บไซต์ไมโครซอฟท์ Download the Windows ADK แนะนำให้ดาวน์โหลด Windows ADK สำหรับ Windows 10 version 1703 ซึ่งเป็นเวอร์ชันใหม่ล่าสุดครับ
การดาวน์โหลด Windows ADK นั้นมี 2 ออปชัน คือ ติดตั้งบนเครื่องพีซีที่ใช้ดาวน์โหลดเลย และดาวน์โหลดลงฮาร์ดดิสก์เพื่อทำการติดตั้งในภายหลังหรือนำไปติดตั้งบนเครื่องพีซีอื่น ขั้นตอนนี้ให้เลือกใช้ออปชันใดก็ได้แล้วแต่ความสะดวกและสถานการณ์ใช้งานของคุณนะครับ
ข้อควรทราบ
1. โปรแกรม Windows ADK มีขนาดใหญ่ ทำให้ใช้เวลาดาวน์โหลดนาน ดังนั้นควรทำการดาวน์โหลดล่วงหน้า
2. บทความนี้จะไม่ลงรายละเอียดเกี่ยวกับ Windows ADK นะครับ สำหรับคนที่สนใจข้อมูลเชิงลึกสามารถเข้าไปอ่านได้จากเว็บไซต์ What’s new in the Windows ADK for Windows 10, version 1703 (En)
3. ยูเอสบีแฟลชไดรฟ์
กรณีการใช้งานทั่วไป ต้องการยูเอสบีแฟลชไดรฟ์ว่าง (!ระวัง ข้อมูลบนแฟลชไดรฟ์ทั้งหมดจะหายโดยสิ้นเชิง) ขนาดความจุ 1 GB จำนวน 1 ตัว (หรือตามจำนวนที่ต้องการใช้งาน) ในกรณีทำการปรับแต่งอิมเมจ Windows อาจต้องใช้ยูเอสบีแฟลชไดรฟ์ขนาด 4 GB หรือใหญ่กว่า (บทความนี้จะไม่ลงรายละเอียดเกี่ยวกับเรื่องนี้นะครับ)
4. (ออปชัน – กรณีที่ต้องการใช้งานโปรแกรมเฉพาะทาง) โปรแกรมเธิร์ดปาร์ตี้ที่ต้องการใช้ใน Windows PE เช่น โปรแกรม Symantec Ghost เป็นต้น
5.(ออปชัน – กรณีที่ไดรฟเวอร์ทั่วไปไม่รองรับ) ไดรฟ์เวอร์การ์ดแลน สำหรับกรณีที่ต้องการใช้งานระบบเครือข่าย เช่น ต้องการแมปไดรฟ์ File Server ที่แชร์บนเครือข่าย
การสร้าง Windows PE USB Flash Drive
หลังจากจัดเตรียมฮาร์ดแวร์และซอฟต์แวร์ต่างๆ พร้อมแล้ว ก็ได้เวลาลงมือสร้าง Windows PE USB Flash Drive แล้ว
การสร้าง Windows PE USB Flash Drive มีขั้นตอนดังนี้
1. เปิดโปรแกรม Deployment and Imaging Tools Environment ด้วยระดับสิทธิ์ผู้ดูแลระบบโดยการคลิกขวาแล้วเลือก Run as administrator โดยคลิก Yes บนหน้า User Account Control (ถ้ามี)
- บน Windows 8.1: เปิดโปรแกรม Deployment and Imaging Tools Environment ได้จากหน้า Apps (คลิก Start แล้วคลิก down arrow จากนั้นเลื่อนไปยังหัวข้อ Windows Kit)
- บน Windows 10: เปิดโปรแกรม Deployment and Imaging Tools Environment ได้จาก Start > Windows Kit
2. รันคำสั่ง Copype.cmd (สามารถใช้ copype แทนเพื่อความรวดเร็วครับ) เพื่อทำการก็อปปี้ Windows PE ลงโฟลเดอร์บนฮาร์ดดิสก์ตามฟอร์แมต ดังนี้
Copype.cmd architecture WorkingDirectory
architecture เลือกเป็น x86 หรือ amd64 ฟรือ arm
WorkingDirectory โฟลเดอร์ที่ใช้ในเก็บไฟล์ Windows PE
โดยหลังจากรันคำสั่ง Copype จะได้โครงสร้างโฟลเดอร์ คือ 3 ตัวดังนี้
<workingdirectory>
<workingdirectory>\media
<workingdirectory>\mount
อ่านรายละเอียดการใช้คำสั่ง Copype ได้ที่เว็บไซต์ Copype Command-Line Options
ตัวอย่างที่ 1: ก็อปปี้ Windows PE เวอร์ชัน 64-บิต ไปเก็บไว้ในโฟลเดอร์ WinPE_amd64 บนไดรฟ์ D: จะใช้คำสั่งดังนี้
copype amd64 D:\WinPE_amd64
ตัวอย่างที่ 2: ก็อปปี้ Windows PE เวอร์ชัน 32-บิต ไปเก็บไว้ในโฟลเดอร์ WinPE_x86 บนไดรฟ์ D: จะใช้คำสั่งดังนี้
copype x86 D:\WinPE_x86
3. ทำการติดตั้ง Windows PE ลงยูเอสบีแฟลชไดรฟ์โดยใช้คำสั่ง MakeWinPEMedia* ตามฟอร์แมต ดังนี้
Makewinpemedia {/ufd | /iso} [/f] <workingdirectory> <DestinationLocation>
/ufd สำหรับติดตั้ง Windows PE บนยูเอสบีแฟลชไดรฟ์
/iso สำหรับสร้างอิมเมจ ISO ของ Windows PE
/f ไม่แสดงข้อความให้ยืนยันก่อนทำการฟอร์แมตแฟลชไดรฟ์ หรือเขียนทับไฟล์ .iso ที่มีอยู่
WorkingDirectory โฟลเดอร์ที่เก็บไฟล์ Windows PE
DestinationLocation ชื่อไดรฟ์ยูเอสบีแฟลชไดรฟ์ที่ต้องการติดตั้ง Windows PE หรือชื่อไฟล์ .iso
ตัวอย่างที่ 3: ติดตั้ง Windows PE เวอร์ชัน 64-บิต บนยูเอสบีแฟลชไดรฟ์ที่ต่ออยู่ไดรฟ์ K: จะใช้คำสั่งดังนี้
(ต่อยูเอสบีแฟลชไดรฟ์เข้ากับเครื่องพีซีให้เรียบร้อยและตรวจสอบชื่อไดรฟ์ให้ถูกต้องก่อนรันคำสั่ง MakeWinPEMedia)
MakeWinPEMedia /UFD D:\WinPE_amd64 K:
ตัวอย่างที่ 4: สร้างไฟล์อิมเมจ ISO ของ Windows PE เวอร์ชัน 64-บิต โดยตั้งชื่อว่า WinPE.iso และเก็บไว้ในโฟลเดอร์ D:\WinPE_amd64 จะใช้คำสั่งดังนี้
MakeWinPEMedia /ISO D:\WinPE_amd64 D:\WinPE_amd64\WinPE.iso
จบขั้นตอนสร้าง Windows PE เพื่อใช้งานทั่วไปเพียงเท่านี้ครับ
แต่สำหรับการใช้งานเฉพาะทาง เช่น ใช้ Windows PE โคลนฮาร์ดดิสก์ หรือเชื่อมต่อระบบเครือข่าย หรือแมปไดรฟ์ File Server ที่แชร์บนเครือข่าย จะต้องทำการเพิ่มโปรแกรมที่ต้องการใช้งาน และไดรฟ์เวอร์ ตามรายละเอียดในหัวข้อ “ขั้นตอนถัดไป”
ขั้นตอนถัดไป
(ออปชัน) เพิ่มโปรแกรมเธิร์ดปาร์ตี้ใน Windows PE
ด้านล่างเป็นวิธีการเพิ่มโปรแกรมเธิร์ดปาร์ตี้ใน Windows PE ครับ
การเพิ่มโปรแกรมเธิร์ดปาร์ตี้หรือโปรแกรมใช้งานเฉพาะทาง เช่น Symantec Ghost ใน Windows PE มีขั้นตอนดังนี้
1. ทำการก็อปปี้ Windows PE เวอร์ชัน 64-บิต ไปเก็บไว้ในโฟลเดอร์ WinPE_amd64 บนไดรฟ์ D: โดยใช้คำสั่งดังนี้
copype amd64 D:\WinPE_amd64
2. ทำการเมาท์อิมเมจโดยใช้คำสั่ง Dism ดังนี้
Dism /Mount-Image /ImageFile:”D:\WinPE_amd64\media\sources\boot.wim” /index:1 /MountDir:”D:\WinPE_amd64\mount”
3. ใช้ File Explorer ก็อปปี้โปรแกรมเธิร์ดปาร์ตี้ที่ต้องการลงในโฟลเดอร์ D:\WinPE_amd64\mount\Windows\System32
ถึงขั้นตอนนี้จะสามารถใช้โปรแกรมเธิร์ดปาร์ตี้ที่เพิ่มในข้อ 3 ได้แล้ว เพียงแต่ว่าจะต้องเปิดโปรแกรมดังกล่าวด้วยตนเอง แต่สามารถทำให้โปรแกรมที่เพิ่มในข้อ 3 รันโดยอัตโนมัติเมื่อเข้า Windows PE ได้โดยการแก้ไขไฟล์ startnet.cmd (ไฟล์นี้อยู่ในโฟลเดอร์ D:\WinPE_amd64\mount\Windows\System32) แล้วใส่ชื่อโปรแกรมไว้ด้านล่าง wpeinit ดังรูป
ลืมบอกไปว่า – ระบบจะไม่ยอมให้แก้ไขไฟล์ startnet.cmd นั้นหมายความว่า จะไม่สามารถบันทึกไฟล์ได้ ดังนั้นให้ทำการ Take Ownership ไฟล์ startnet.cmd ก่อนทำการแก้ไขนะครับ (ถ้าบอกช้าไปก็ขออภัยด้วยนะครับ ORZ)
!ข้อควรระวัง เวอร์ชันโปรแกรมที่เพิ่มต้องตรงกับเวอร์ชัน Windows PE
4. ทำการอันเมาท์อิมเมจโดยใช้คำสั่ง Dism ดังนี้
Dism /Unmount-Image /MountDir:”D:\WinPE_amd64\mount” /commit
5. ทำการติดตั้ง Windows PE ลงยูเอสบีแฟลชไดรฟ์โดยใช้คำสั่ง MakeWinPEMedia ดังนี้
MakeWinPEMedia /UFD D:\WinPE_amd64 K:
เมื่อ K: คือชื่อไดรฟ์ของยูเอสบีแฟลชไดรฟ์ที่ต้องการใช้สร้าง Windows PE
(ออปชัน) เพิ่มไดรฟ์เวอร์การ์ดแลนใน Windows PE
ปกติแล้ว Windows PE จะมาพร้อมไดรฟ์เวอร์การ์ดแลนทั่วไป ทำให้(เครื่องพีซีส่วนใหญ่)สามารถใช้งานการ์ดแลนใน Windows PE ได้ทันที แต่ถ้าหากไดรฟ์เวอร์การ์ดแลนทั่วไปไม่เวิร์ก สามารถทำการเพิ่มเองได้ครับ
ด้านล่างเป็นวิธีการเพิ่มไดรฟ์เวอร์การ์ดแลนใน Windows PE ครับ
ข้อควรทราบ: จะต้องดาวน์โหลดไดรฟ์เวอร์การ์ดแลนของเครื่องพีซีเป้าหมาย** ไว้ล่วงหน้า ถ้าเป็นไฟล์ที่บีบอัดให้ทำการแตกไฟล์ให้เรียบร้อย
1. ทำการก็อปปี้ Windows PE เวอร์ชัน 64-บิต ไปเก็บไว้ในโฟลเดอร์ WinPE_amd64 บนไดรฟ์ D: โดยใช้คำสั่งดังนี้
copype amd64 D:\WinPE_amd64
2. ทำการเมาท์อิมเมจโดยใช้คำสั่ง Dism ดังนี้
Dism /Mount-Image /ImageFile:”D:\WinPE_amd64\media\sources\boot.wim” /index:1 /MountDir:”D:\WinPE_amd64\mount”
3. ทำการเพิ่มไดรฟ์เวอร์การ์ดแลนโดยใช้คำสั่ง Dism ดังนี้
Dism /Add-Driver /Image:”D:\WinPE_amd64\mount” /Driver:”D:\Driver\NIC\iqvw64e.inf”
เมื่อ D:\Driver\NIC\iqvw64e.inf เป็นไฟล์ไดรฟ์เวอร์การ์ดแลน (การใช้งานจริงให้ใช้ไฟล์ไดรฟ์เวอร์การ์ดแลนของเครื่องพีซีเป้าหมาย)
4. ทำการอันเมาท์อิมเมจโดยใช้คำสั่ง Dism ดังนี้
Dism /Unmount-Image /MountDir:”D:\WinPE_amd64\mount” /commit
5. ทำการติดตั้ง Windows PE ลงยูเอสบีแฟลชไดรฟ์โดยใช้คำสั่ง MakeWinPEMedia
MakeWinPEMedia /UFD D:\WinPE_amd64 K:
เมื่อ K: คือชื่อไดรฟ์ของยูเอสบีแฟลชไดรฟ์ที่ต้องการใช้สร้าง Windows PE
การออกจาก Windows PE
การออกจาก Windows PE นั้นทำได้โดยใช้คำสั่ง wpeutil ดังนี้
ปิดเครื่องพีซี: wpeutil shutdown
รีสตาร์ทเครื่องพีซี: wpeutil reboot
ทั้งหมดนี้คือแนวทางในการสร้าง Windows PE ยูเอสบีแฟลชไดรฟ์พร้อมทั้งการเพิ่มโปรแกรมเธิร์ดปาร์ตี้และไดรฟ์เวอร์การ์ดแลนใน Windows PE ซึ่งนำมาฝากในบทความนี้ครับ
*MakeWinPEMedia จะฟอร์แมตยูเอสบีแฟลชไดรฟ์โดยใช้ระบบไฟล์ FAT32
**เครื่องพีซีเป้าหมาย คือเครื่องพีซีที่ต้องการบูทด้วย Windows PE
แหล่งอ้างอิง
WinPE: Create USB Bootable drive
Windows PE (WinPE)
ประวัติการปรับปรุง
21 กุมภาพันธ์ 2561: ปรับปรุงเนื้อหา
10 มิถุนายน 2560: เผยแพร่ครั้งแรก