วิธีการเขียนอิมเมจ ISO ลงในหน่วยความจำ usb จาก linux command-line?


23

ฉันมีปัญหาในการหาวิธีที่ฉันจะเขียนอิมเมจ ISO ดิสก์ลงในอุปกรณ์หน่วยความจำแฟลช USB จากบรรทัดคำสั่งใน Ubuntu ฉันมียูทิลิตี้ Startup Disk Creator แต่ฉันต้องสามารถสคริปต์งานนี้ได้

ผมพบว่าแพคเกจ USB-ผู้สร้าง แต่มีไม่ได้ดูเหมือนจะมีเอกสารใด ๆ และช่วยให้python -m usbcreatorusbcreator is a package and cannot be directly executed

ฉันดู unetbootin แต่ดูเหมือนว่าเป็นยูทิลิตี้ GUI เดียวเท่านั้น

มีวิธีแก้ปัญหาที่ชัดเจนที่ฉันมองเห็นหรือไม่?

คำตอบ:


12

ฉันรู้ว่าคุณสามารถทำได้ใน UNetbootin gui ฉันไม่ได้ลองด้วยตัวเอง แต่ดูเหมือนว่าคุณสามารถทำได้ด้วย command-line เช่นกัน:

http://sourceforge.net/apps/trac/unetbootin/wiki/commands

unetbootin method = diskimage isofile = "my.iso" installtype = USB targetdrive = / dev / sdc1


คำตอบที่ฉันจะให้ unetbootinจัดการขั้นตอนที่จำเป็นสำหรับการย้ายไฟล์ ISO ส่วนใหญ่ไปยังสื่อ USB โดยอัตโนมัติ
MikeyB

สำหรับฉันใน Fedora Core 23 มันเปิดตัวunetbootin guiแต่ด้วยการตั้งค่าที่ให้ไว้ในบรรทัดคำสั่ง
Yaroslav Nikitenko

25

คุณแน่ใจหรือไม่ว่าภาพ ISO จะทำงานบนอุปกรณ์ USB ISO บางอย่างซึ่งจะทำการบู๊ตหากอยู่ในซีดี / ดีวีดีจะไม่สามารถบู๊ตจากอุปกรณ์ USB ได้

สมมติว่า ISO ที่คุณต้องการมี bootloader ที่ใช้งานได้แล้วมันควรจะง่ายเหมือนdd if=filename.iso of=/dev/usbdeviceแต่จะแทนที่สิ่งที่อยู่บนดิสก์ USB ในปัจจุบัน

หากคุณต้องการวาง ISO ลงในระบบไฟล์ที่มีอยู่ในไดรฟ์ USB แล้วบูตมันการตั้งค่าอาจมีความซับซ้อนมากขึ้น


ไม่นี่เป็นสิ่งสมบูรณ์แบบ สิ่งที่ฉันต้องการ ขอบคุณ!
mikepurvis

1
Ack ... ไม่ค่อยมาก วิธีนี้โหลดระบบไฟล์ แต่ดูเหมือนว่าจะไม่ทำให้ไดรฟ์บู๊ตได้เครื่องมือ Startup Disk Creator (ที่มี ISO เดียวกัน)
mikepurvis

2
อย่างที่ฉันบอกไปแล้วว่ามันค่อนข้างขึ้นอยู่กับว่า boot-loader นั้นอยู่บน ISO และวิธีการกำหนดค่า บางภาพจะทำงานได้โดยการทำ dd แต่บางภาพจะไม่ทำงาน ตัวอย่างเช่นDebian Liveจะทำงานได้ดีโดยใช้วิธี dd เพื่อให้แน่ใจว่าคุณสามารถลองใช้หรืออ่านเอกสารของสิ่งที่คุณกำลังพูดถึงเพื่อดูว่าได้รับการสนับสนุนหรือไม่
Zoredache

2
@Zoredache เพื่อตรวจสอบว่าisoสามารถใช้บู๊ตได้หรือfileไม่ หากสามารถบู๊ตได้เครื่องจะพิมพ์bootableที่ท้ายบรรทัดเอาท์พุท
Yaroslav Nikitenko

10

จาก Linux มีวิธีที่ง่ายมากในการสร้างเมมโมรี่สติ๊กที่สามารถบู๊ตได้จากอิมเมจ ISO และนี่ควรใช้กับระบบปฏิบัติการใด ๆ ก็ได้ สมมติว่าหน่วยความจำเป็นและภาพที่เป็น/dev/sdb/home/username/Downloads/system.iso

เพียงแค่ทำสิ่งนี้ (เป็น root):

dd if=/home/username/Downloads/system.iso of=/dev/sdb

ง่ายกว่า unetbootin หรือวิธีอื่นใดที่ฉันเคยได้ยิน


สิ่งนี้จะถือว่า bootloader รวมอยู่ใน iso ซึ่งไม่ใช่ตัวพิมพ์ใหญ่
mikepurvis

6
ขั้นตอนสำคัญเพียงอย่างเดียวคือการเขียน / outputfile ไปยังอุปกรณ์ไม่ใช่พาร์ติชัน Ie of=/dev/sdbและ of=/dev/sdb1NOT (แค่ต้องการที่จะแสดงความคิดเห็นในปัญหานี้ไม่มีอะไรผิดปกติกับโพสต์ของคุณ: o))
sjas

สิ่งนี้ใช้ได้สำหรับฉันเมื่อพยายามติดตั้ง Debian 9 บนเน็ตบุ๊ค Asus Eee PC รุ่นเก่า Unetbootin ผลิตไดรฟ์ที่ไม่สามารถบู๊ตได้ในกรณีนี้
unfa

0

ฉันใช้ขั้นตอนต่อไปนี้:

1. การอ่านขนาดบล็อกและขนาดโวลุ่ม:

[root@testserver ~]# isoinfo -d -i /path_to_iso | grep -i -E 'block size|volume size' 
Logical block size is: 2048
Volume size is: 327867

2. การเรียกใช้ dd ด้วยพารามิเตอร์สำหรับขนาดบล็อกและขนาดโวลุ่ม:

root@testserver ~]# dd if=/path_to_iso of=/dev/your_usb_device bs=block-size-from-above count=volume-size-from-above
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.