ทำไม dd ไม่ทำให้ USB ที่บู๊ตได้สำหรับการทำงานของ Microsoft? [ปิด]


9

โปรดอย่าอ้างอิงคำตอบ (ส่วนใหญ่ผิด) ที่โพสต์ไว้ในหัวข้อนี้ ไม่มีความถูกต้อง

ในช่วงหลายปีที่ผ่านมาฉันได้สร้างแท่งที่สามารถบู๊ตได้เป็นล้านตัวเช่นนี้: dd if=(this).iso of=/dev/sdb bs=4M bla ..เห็นได้ชัดว่ามันทำงานได้ทุกครั้งสำหรับ ISO ใน Linux distros โดยเฉพาะ แต่ถ้านี่เป็น Windows 7 หรือ 10 iso USB แท่งที่ได้จะไม่สามารถบูตได้ ไม่เห็นโดยพีซี BIOS (เฉพาะ Dell) iso นั้นสมบูรณ์แบบและติดตั้งเป็นระบบไฟล์พร้อมสื่อ Windows ทั้งหมด แต่ BIOS ไม่เห็นดังนั้นจึงใช้ไม่ได้ ทำไมจะไม่ล่ะ?

ข้อสรุป: Microsoft มีเครื่องมือต่าง ๆ เพื่อป้อน iso และทำการเขียนที่จำเป็นไปยัง USB / DVD (ทำงานภายใต้ Windows) เครื่องมือเหล่านี้ล้มเหลว ฉันไม่สนใจ แต่ฉันต้องการที่จะรู้ว่ามีบางสิ่งที่น่าอัศจรรย์ที่เครื่องมือเหล่านี้ทำซึ่งไม่ได้เป็นเพียงสำเนาทางกายภาพโดยตรงเช่นddนั้นหรือไม่?


5
ดูเหมือนว่าคุณจะถูกถามเกี่ยวกับคุณสมบัติมหัศจรรย์ของเครื่องมือที่ไม่ใช่ Linux ในที่ทำงาน Linux ดูเหมือน off-topic สำหรับ AskUbuntu
user535733

1
"ไม่มีถูกต้อง" เป็นความหยิ่งอย่างไม่น่าเชื่อ ที่คุณไม่พบคำตอบที่ถูกต้องในระหว่างการวิจัยของคุณไม่ได้หมายความว่าพวกเขาไม่ได้อยู่
Ben Voigt

5
ปัญหาไม่ใช่เครื่องมือปัญหาคืออิมเมจต้นทางไม่สนับสนุนความสามารถนี้และจะต้องดำเนินการโดยบางสิ่งที่เพิ่มเข้าไปก่อนหรือระหว่างการเขียนไปยังอุปกรณ์ USB หากคุณมีแท่ง USB ที่สามารถบู๊ตได้คุณสามารถโคลนได้ddแต่ภาพที่คุณอาจสร้างขึ้นกลางคันผ่านกระบวนการนั้นไม่เหมือนกับไอโซที่คุณเริ่มต้นด้วยตอนนี้
Chris Stratton

2
@BenVoigt แทรก qualifier, "... ที่ฉันพบ ... " และทั้งหมดนั้นดี ไม่ใช่ทุกคนที่ verbose ตลอดเวลา
AaronD

1
@AaronD: ทั้งหมดไม่ดี "อย่าอ้างอิงฉันถึงคำตอบที่ฉันพบแล้ว" ไม่ใช่ความคาดหวังที่สมเหตุสมผลโดย OP เราไม่สามารถอ่านความคิดของเขาเพื่อรู้ว่าสิ่งที่เขาเห็นอยู่แล้ว การเพิ่มตัวระบุทำให้ย่อหน้าแรกแย่ลงไม่ดีขึ้น
Ben Voigt

คำตอบ:


10

การโคลน (ด้วยddหรือเครื่องมือการโคลนอื่น ๆ ) ทำงานได้ดีกับไฟล์ iso linux ล่าสุด เป็นไฟล์ไฮบริดไอโซจัดทำขึ้นเพื่อให้สามารถใช้ไฟล์เดียวกันนี้ในการสร้างแผ่นดิสก์สำหรับเริ่มระบบ DVD และไดรฟ์สำหรับเริ่มระบบ USB และการ์ดหน่วยความจำสำหรับเริ่มระบบ (ตัวอย่างเช่นการ์ด SD)

การโคลนไม่สร้างไดรฟ์ USB ที่สามารถบู๊ตได้จากไฟล์ iso ของ Windows ปัจจุบัน คุณต้องการเครื่องมือพิเศษสำหรับวัตถุประสงค์นั้นหรือทำตามขั้นตอนด้วยตนเอง (ในกระบวนการแยกไฟล์) หากคุณต้องการ

ลิงค์นี้ส่วนใหญ่เน้นที่เครื่องมือwoeusb(เครื่องมือใน linux) เพื่อสร้างไดรฟ์ USB ที่สามารถบู๊ตได้จากไฟล์ iso ของ Windows ปัจจุบัน ฉันทดสอบมันเมื่อเร็ว ๆ นี้และสามารถตรวจสอบได้ว่ามันใช้งานได้

คุณสามารถทำ 'ความมหัศจรรย์' ด้วยตัวคุณเองด้วยความช่วยเหลืออย่างละเอียดที่

help.ubuntu.com/community/Installation/iso2usb/diy/windows-installer-for-big-files


2
คุณควรใส่ส่วนที่เกี่ยวข้องของลิงค์เหล่านั้นเป็นเครื่องหมายคำพูดในคำตอบของคุณ ฉันเคยเห็นลิงก์ ubuntu.com ไปแล้วเสียชีวิตมาก่อน
TheWanderer

ฉันใช้ woeusb บน Linux Mint 19.1 และไม่เคยล้มเหลวเลยสักครั้ง ฉันใช้มันกับ ISO ที่นำมาจากเว็บไซต์ของ Microsoft เท่านั้นโปรดจำไว้ ในความคิดของฉัน woeusb เป็นคำแนะนำที่ดี
Ismael Miguel

@ TheWanderer, เธรดนี้ดูเหมือนจะถูกปิด, ถ้ามันจะเกิดขึ้น, มันจะเสียความพยายามที่จะใส่ส่วนที่เกี่ยวข้องของลิงค์เหล่านั้นเป็นคำพูดในคำตอบของฉัน. มิฉะนั้นถ้ามันมีชีวิตอยู่ (เราสามารถตรวจสอบหลังจากสองสามสัปดาห์) ใช่ฉันจะพร้อมที่จะแก้ไขคำตอบตามคำขอของคุณ
sudodus

2

ฉันเชื่อว่าสิ่งนี้ได้รับคำตอบแล้ว แต่ฉันต้องการเพิ่มคำอธิบายโดยละเอียดเพิ่มเติมเกี่ยวกับสิ่งที่เกิดขึ้น ประการแรกซีดีรอมและดีวีดีถูกอ่านโดยคอมพิวเตอร์แตกต่างจากสื่อดิสก์อื่น ๆ ทั้งหมด นั่นคือซีดีรอมหรือดีวีดีจะถูกจัดรูปแบบด้วยระบบไฟล์ที่เรียกว่า ISO 9660 (หรือระบบไฟล์ที่ใหม่กว่าเรียกว่า UDF) สื่อสไตล์ดิสก์อื่น ๆ (รวมถึง USB ทุกอย่าง) ให้เริ่มด้วย Master Boot Record หรือ MBR ตอนนี้ดิสก์ขนาดใหญ่ขึ้นใช้ GPT แต่มันก็คล้ายกันสำหรับการสนทนานี้ BIOS ในคอมพิวเตอร์ของคุณจะอ่าน MBR หรือ GPT จากสื่อดิสก์และค้นหาตัวโหลดการบูตที่นั่น ด้วย MBR bootloader จะถูกเก็บไว้กับ MBR ในเซกเตอร์ 512 ไบต์แรกบนดิสก์ GPT แตกต่างกันเล็กน้อยและจัดสรรสิ่งที่เรียกว่าพาร์ติชัน EFI ที่อื่นบนดิสก์ GPT นั้นจะอยู่ในสองสามกิโลไบต์แรกของดิสก์

ในการบู๊ต CD-ROM มันเป็นกระบวนการที่แตกต่างกันมาก มาตรฐานเรียกว่า El Torito Boot และอธิบายโครงสร้างที่อยู่ภายในระบบไฟล์ ISO 9660 เมื่อ BIOS หรือ UEFI บนคอมพิวเตอร์พยายามบูตจากซีดีรอมมันจะใช้สิ่งนั้นและไม่มองหา MBR หรือ GPT นี่หมายถึง ISO สำหรับการบู๊ตจะต้องตั้งค่าต่างจากไดรฟ์ USB อย่างสิ้นเชิง

การกระจาย Linux จำนวนมากที่ใช้คือเทคนิคที่ชื่อว่า Hybrid ISO ระบบไฟล์ ISO 9660 มีคุณสมบัติที่น่าสนใจโดยจะประกาศขนาด 32 กิโลไบต์แรกเป็นพื้นที่ระบบเพื่อให้ผู้อื่นใช้งาน ไม่มีการเรียกร้องใด ๆ เลยว่าสามารถไปที่นั่นและจะเพิกเฉยต่อสิ่งที่อยู่ที่นั่น ซอฟต์แวร์ที่อ่านแผ่นดิสก์ตาม ISO 9660 จะข้ามส่วนนั้นไป การทำเช่นนี้ทำให้มีพื้นที่เหลือเฟือที่จะซ่อนป้าย MBR หรือ GPT ไว้ในนั้นด้วย bootloader ดิสก์ทั่วไป Hybrid ISO จริง ๆ แล้วมีตัวตักบูตที่แตกต่างกันสองอันหนึ่งอันเป็นส่วนหนึ่งของ ISO 9660 El Torito Boot และอีกอันสำหรับบูตดิสก์แบบดั้งเดิม

โดยสรุปแล้วไม่มีอะไรจะพูดได้ว่าอิมเมจ ISO ควรจะสามารถบู๊ตได้บนดิสก์ USB เป็นคุณสมบัติพิเศษที่ ISO 9660 อนุญาตหากทำอย่างระมัดระวัง ตัวอย่างบูตเดอร์สำหรับ MBR อาจมีขนาดเกิน 32 KB หรือจะเขียนทับเนื้อหา ISO แต่การทำ Hybrid ISOs นั้นเป็นสิ่งที่ลีนุกซ์หลายรุ่นได้ทำเพื่อทำให้ชีวิตของผู้ใช้ง่ายขึ้น ไม่ใช่สิ่งที่ Microsoft ใส่ใจที่จะทำ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.