ฉันจะสร้าง MBR บนแท่ง USB โดยใช้เครื่องมือบรรทัดคำสั่ง DD ได้อย่างไร


16

โอเคฉันกำลังพยายามสร้างรูป Windows 7 ที่สามารถบูตได้บนคีย์ USB จาก Mac ที่ใช้ Lion ภาพของฉันเป็นรูปแบบ. iso ฉันเหนื่อย:

sudo dd if=/Users/myusername/Win7.iso of=/dev/disk1 bs=1m

และสิ่งนี้ประสบความสำเร็จในการเขียนไฟล์ยกเว้นใน DISK UTILITY บน mac มันแสดงประเภทพาร์ติชั่นเป็น GUID Partition Table ไม่ใช่ 'Master Boor Record' การบูตคีย์บนคอมพิวเตอร์ Vista ของฉันทำให้เกิดข้อผิดพลาด "ไม่มีบูตเซกเตอร์บนอุปกรณ์ USB '

จากสิ่งที่ฉันสามารถบอกได้ bs = 1m ในคำสั่ง DD ควรเหลือ 1 เมกะไบต์สำหรับบูตเซกเตอร์ แต่ด้วยเหตุผลบางประการพื้นที่นี้ของคีย์ USB ไม่ได้ตั้งค่าอย่างถูกต้องเพื่อที่จะบูต

ฉันจะแก้ไขได้อย่างไรหรือใช้ dd อย่างถูกต้องเพื่อเขียนอิมเมจซีดีที่สามารถบู๊ตได้ซึ่งตอนนี้เป็นไดรฟ์ usb ที่สามารถบู๊ตได้?

หมายเหตุ: ในคำแนะนำที่ฉันอ่านเกี่ยวกับพวกเขาแนะนำให้เปลี่ยนชื่อ Win7.iso เป็น Win7.dmg ก่อนใช้ DD ซึ่งไม่สมเหตุสมผลสำหรับฉันดังนั้นฉันจึงไม่ได้ทำ ตอนนี้ฉันสามารถลองขั้นตอนนี้ได้ แต่ใช้เวลา 1.99 ชั่วโมงในการเขียนภาพไปยังไดรฟ์ USB ดังนั้นจึงมีบทลงโทษอย่างมากสำหรับการลองผิดลองถูกที่นี่ ขอขอบคุณ.


คุณตรวจสอบแล้วว่า.isoไฟล์นั้นมีบูตเซกเตอร์ที่ถูกต้องหรือไม่? หากคุณริพจากซีดีที่สามารถบู๊ตได้โดยตรงอาจมีบางอย่างผิดปกติเนื่องจากซีดีมีเซกเตอร์ 2048- ไบต์และแฟลชไดรฟ์ส่วนใหญ่มีเซกเตอร์ 512 ไบต์
LawrenceC

FYI DD เป็นยูทิลิตี้ในการแปลงและคัดลอกไฟล์ มันไม่รู้อะไรเลยเกี่ยวกับตารางพาร์ติชั่นหรือบูตเซกเตอร์ bs = 1m หมายถึงการอ่านและเขียนสูงสุดครั้งละ 1 เมกะไบต์ หากคุณต้องการเว้นที่ด้านหน้าของไดรฟ์คุณต้องใช้ find = BLOCKS โดยที่ blocks = ขนาดเซกเตอร์ซึ่งมีค่าเริ่มต้นที่ 512
Matt H

@MattH คุณเขียนว่า "FYI. DD เป็นโปรแกรมสำหรับแปลงไฟล์และทำสำเนา" <--- มันผิดทั้งหมดและคุณก็รู้ และสำหรับสิ่งที่รู้คุณพูดว่า "ไม่ทราบอะไรเกี่ยวกับตารางพาร์ทิชัน" แน่นอนว่ามันไม่ได้ แต่ก็ยังสามารถส่งผลกระทบต่อพวกเขา มันเกี่ยวกับการคัดลอกไบต์ดิบจากพาร์ติชันหรือฮาร์ดไดรฟ์ทั้งหมดไม่ใช่ไฟล์และคุณรู้ และสิ่งที่ได้รับการคัดลอกสามารถรวมไฟล์และ (ในขณะที่ i; m ไม่มีผู้เชี่ยวชาญ) ฉันคิดว่ามันจะรวมตารางพาร์ติชัน
barlop

dd ไม่เสียงเหมือนเครื่องมือที่เหมาะสมในการแปลง iso cd เป็นภาพสำหรับ usb มีหลายวิธีในการใส่ iso win7 กับ USB และฉันไม่คิดว่า dd เป็นหนึ่งในนั้น! อย่างน้อยก็ไม่มีใครใช้ตามปกติ! dd / ddrescue นั้นดีถ้าคุณมีฮาร์ดไดรฟ์ที่เหมือนกันสองตัวและต้องการคัดลอกหนึ่งไปยังอีกที่หนึ่ง หรือหากฮาร์ดไดรฟ์มีข้อผิดพลาดและคุณต้องการสร้างภาพของมันเมื่อซอฟต์แวร์ภาพอื่นไม่สามารถทำได้
barlop

@barlop - dd man page - "คัดลอกไฟล์แปลงและจัดรูปแบบตามตัวถูกดำเนินการ"
Matt H

คำตอบ:


7

ใช้ตัวเลือก Disk Utility เพื่อตั้งค่าประเภทพาร์ติชันเป็น Master Boot Record ก่อนที่คุณจะทำ

ป้อนคำอธิบายรูปภาพที่นี่ ป้อนคำอธิบายรูปภาพที่นี่


4
สิ่งนี้ล้มเหลว ฉันตระหนักถึงการตั้งค่าที่อธิบายในภาพหน้าจอของคุณ แต่หลังจากทำสิ่งนี้ก่อนแล้ว DD ภาพที่ได้ยังไม่พบบูตเซกเตอร์ คำสั่ง DD จะปรากฏขึ้นเพื่อทิ้งสิ่งที่ดิสก์ที่ใช้ทำอยู่แล้วดูเหมือนว่ามันกำลังเขียนในโหมด raw ระดับต่ำมาก ฉันหวังว่ามันจะใช้งานได้ แต่จริงๆแล้วมันไม่ได้และมันก็โง่ที่ disk Ut ไม่สนับสนุนอิมเมจ. isiso สำหรับการกู้คืน
Lana Miller

5

ฉันมีปัญหาที่คล้ายกันเมื่อพยายามสร้างดิสก์ USB ที่สามารถบู๊ตได้จาก OSX ปัญหาคือUnetBootinไม่ได้ตั้งค่า Master Boot Record อย่างถูกต้องบนดิสก์ USB คุณต้องทำด้วยตนเองด้วย Disk Util และ fdisk

  1. ฟอร์แมตดิสก์ใน Disk Utility ด้วย MBR ที่ถูกต้อง

    1. เปิด Disk Utilty
    2. เลือกอุปกรณ์ USB
    3. คลิกพาร์ติชัน
    4. เลือก 1 พาร์ติชันในโครงร่างพาร์ติชัน
    5. เลือก“ Master Boot Record” ในตัวเลือก
    6. เลือก MS-DOS (FAT) ในประเภทรูปแบบ
    7. คลิกใช้จากนั้นเลือกพาร์ติชัน
    8. ปิด Disk Utility
      สิ่งนี้จะเช็ดดิสก์ USB และตั้งค่าด้วยบันทึกการบูตที่ถูกต้อง
  2. ติดตั้ง MBR ไบนารีจากโครงการ SysLinux

    1. ใช้ diskutil บรรทัดคำสั่งเพื่อค้นหาชื่ออุปกรณ์สำหรับไดรฟ์ USB ของคุณ
      รายการ diskutil
    2. ถอดเมาท์ไดรฟ์ USB ด้วยบรรทัดคำสั่ง หมายเหตุ: ให้แน่ใจว่าได้สลับการอ้างอิงอุปกรณ์ (ในกรณีของฉันมันคือ / dev / SOMEdisk2) กับที่ถูกต้องสำหรับคีย์ usb ของคุณที่คุณระบุไว้ในขั้นตอนก่อนหน้า - นี้จะเปลี่ยนสำหรับแต่ละเครื่อง
      diskutil unmountDisk / dev / SOMEdisk2
    3. ทำเครื่องหมายพาร์ติชันที่ใช้งานอยู่จากนั้นยกเลิกการต่อเชื่อมอีกครั้ง
      sudo fdisk -e / dev / SOMEdisk2
      พิมพ์
      f 1
      เขียน
      พิมพ์
      ทางออก
      diskutil unmountDisk / dev / SOMEdisk2
    4. ดาวน์โหลด Syslinuxและแตกไฟล์ mbr.bin
    5. ติดตั้ง MBR
      sudo dd conv = notrunc bs = 440 count = 1 if = mbr.bin ของ = / dev / SOMEdisk2
      NB:ดูคำแนะนำทั้งหมดของฉันหากคุณต้องการความช่วยเหลือเพิ่มเติมเกี่ยวกับขั้นตอนที่ 4 และ 5
  3. ใช้ UnetBootin เพื่อติดตั้งไฟล์ติดตั้งระบบปฏิบัติการ

    1. ดาวน์โหลดและติดตั้งUnetBootinหากคุณยังไม่ได้ทำการติดตั้ง
    2. โหลดแอปพลิเคชันเลือกการกระจายที่คุณต้องการแล้วคลิกตกลง
    3. เมื่อเสร็จแล้วให้นำกุญแจ USB ออกและใช้งาน

คำแนะนำแบบเต็ม


สวัสดี Paul ถ้าคุณเพิ่งโพสต์ลิงค์กรุณาให้ความกรุณาและเพิ่มเนื้อหาเพิ่มเติม ฉันเพิ่มคำแนะนำทีละขั้นตอนถ้าคุณไม่รังเกียจ
มิฉะนั้น

ไม่มีปัญหาฉันเห็นว่ามันทำให้เร็วขึ้น / ง่ายขึ้นที่จะได้คำตอบดังนั้นฉันจะทำเช่นนั้นในครั้งต่อไป - ขอบคุณที่ทำเพื่อฉัน :) :)
Paul Maunders

มี 3 mbr.bin ใน syslinux zip ฉันควรใช้อันไหนดี?
Olivier Lalonde

เพียงใช้มาตรฐานหนึ่ง syslinux-5.00 / mbr / mbr.bin
Paul Maunders

มันไม่ได้ผลสำหรับฉัน ถึงกระนั้นฉันได้รับข้อความ "ไม่ใช่ดิสก์ระบบ"
เสีย

1

ฟอร์แมตคีย์ USB ด้วย Master Boot Record (MBR)

  • ใน Terminal: รายการ diskutil

  • บันทึกชื่อของคีย์ USB ของคุณ (ของฉันคือ / dev / disk1)

  • ในเทอร์มินัล: diskutil ลบดิสก์ MS-DOS "WINDOWS10" MBR / dev / disk1

  • แทนที่ / dev / disk1 ด้วยชื่อของคีย์ USB ของคุณ

เมานต์อิมเมจดิสก์ Windows 10

  • ใน Disk Utility: เลือกไฟล์› เปิด Disk Image› เลือก. iso ของคุณ

  • ในบานหน้าต่างด้านซ้าย: คลิกที่ภาพที่เพิ่งติดตั้งใหม่

  • ในบานหน้าต่างด้านขวา: เลือกชื่อและคัดลอก: CCSA_X64FRE_FR-FR_DV5

คัดลอกดิสก์อิมเมจไปที่คีย์ WINDOWS10 USB

  • ในเทอร์มินัล: cd / เล่ม

  • ในเทอร์มินัล: cp -R CCSA_X64FRE_FR-FR_DV5 / WINDOWS10

  • แทนที่ชื่ออิมเมจในตัวอย่างด้วยชื่อของอิมเมจดิสก์ของคุณ

  • เครื่องหมายทับที่ปลาย (หลังจากตัวอย่างใน DV5) เป็นสิ่งสำคัญ

  • ใช้เวลามากกว่า 90 นาทีในการคัดลอกไปยังคีย์ USB 2.0 ด้วยไม่มีตัวบ่งชี้ความคืบหน้า


0

วิธีนี้ไม่ได้ใช้ dd และไม่ได้ทำการทดสอบ

คุณควรใช้UNetBootInเพื่อถ่ายโอนระบบไฟล์ใน ISO ไปยังไดรฟ์ USB UNetBootIn เป็นเครื่องมือข้ามแพลตฟอร์มสำหรับการถ่ายโอนอิมเมจซีดี / ดีวีดีที่สามารถบู๊ตได้ไปยังไดรฟ์ USB

เรียกใช้ UNetBootIn (ทำงานบน Windows, Mac OS X และ Linux) และเลือกDisk Imageปุ่มตัวเลือก จากนั้นเลือกISOจากเมนูแบบเลื่อนลง (ISO เป็นค่าเริ่มต้น) และใส่เส้นทางไปยังไฟล์ ISO ลงในช่องเส้นทาง จากนั้นเลือกไดรฟ์ USB ที่ต้องการเพื่อโอนไปยังและคลิกตกลง

ป้อนคำอธิบายรูปภาพที่นี่


2
ฉันทดสอบแล้วดูเหมือนว่าจะใช้งานได้พบบูตเซกเตอร์ แต่มันเตือนว่า 'ระบบปฏิบัติการที่หายไป' ฉันไม่แน่ใจว่าเป็นปัญหากับภาพที่ฉันใช้หรือไม่ แต่ฉันสงสัย จะเล่นกับสิ่งนี้อีกเล็กน้อยเพราะดูเหมือนจะเขียนบูตเซกเตอร์อย่างถูกต้อง
Lana Miller

@ LanaMiller ฉันได้รับข้อผิดพลาดเดียวกันในขณะที่พยายามบูตด้วย usb stick กับ Windows 7 Professional x64 คุณจัดการเพื่อแก้ไขมันได้หรือไม่?
Chris-Top

0

เพิ่งพบคำตอบที่นี่

# fdisk /dev/sdY

create single partition type 7+bootable partition

# mkfs.ntfs -f /dev/sdY1
# ms-sys -7 /dev/sdY

# mount -o loop win7.iso /mnt/iso
# mount /dev/sdY1 /mnt/usb
# cp -r /mnt/iso/* /mnt/usb/
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.