ฉันจะโคลนฮาร์ดไดรฟ์โดยตรงกับอิมเมจ vdi ได้อย่างไร


37

ฉันต้องการสร้างภาพ VirtualBox .vdi จากฮาร์ดไดรฟ์ของฉัน

ฉันได้พบวิธีการออนไลน์ที่อธิบายการทำสิ่งนี้โดยใช้ usind DD เป็นครั้งแรกเพื่อสร้างภาพ. raw จากนั้นใช้ VBoxManage เพื่อแปลง .raw เป็น. vdi ดังนั้นถ้า HD ของฉันคือ 1 TB กระบวนการนี้ (ชั่วคราว) ต้องใช้พื้นที่ 2TB เพื่อจัดเก็บทั้ง. raw และ. vdi

ฉันมีพื้นที่ว่างมากกว่า 1TB เพียงเล็กน้อย มีวิธีในการสร้างอิมเมจ. vdi ของฮาร์ดไดรฟ์โดยไม่ต้องสร้างอิมเมจ. raw หรือไม่?


สิ่งนี้มีความเสี่ยง แต่ถ้าคุณมีฮาร์ดไดรฟ์ที่ต้องการ P2V คุณสามารถสร้างภาพบนไดรฟ์สำรองได้โดยมีขนาดประมาณ 1TB จากนั้นฟอร์แมตไดรฟ์ดั้งเดิมของคุณและคัดลอกไฟล์ RAW ไปยังไดรฟ์ต้นฉบับ จากนั้นแปลง RAW เป็น VDI กลับไปยังไดรฟ์หลักของคุณ อย่างไรก็ตามหากมันทำให้เมา (อาจเกิดขึ้นได้) แสดงว่าคุณติดอยู่กับ RAW Image และไม่มีต้นฉบับ
kobaltz

@ kolbatz ฉันพิจารณาสิ่งนี้ แต่ฉันคิดว่ามันมีโอกาสสูงที่จะล้มเหลว เมื่อฉันอิมเมจฮาร์ดไดรฟ์ไฟล์. raw ที่ได้คือขนาดของฮาร์ดไดรฟ์ แต่ก่อนที่จะคัดลอกไฟล์กลับไปที่ไดรฟ์เดิมฉันต้องให้ระบบไฟล์กับไดรฟ์ สิ่งนี้เกี่ยวข้องกับการเขียนข้อมูลเมตาไปยังไดรฟ์ทำให้มีพื้นที่ไม่เพียงพอสำหรับเก็บไฟล์ขนาดไดรฟ์
SuperElectric

คำตอบ:


53

VBoxManage convertfromrawคุณโดยตรงสามารถสร้างภาพที่มี ก่อนถอนติดตั้งอุปกรณ์จากนั้น:

VBoxManage convertfromraw /dev/sda MyImage.vdi --format VDI

แทนที่/dev/sdaด้วยดิสก์หรือพาร์ติชันที่คุณต้องการโคลน

คุณอาจต้องทำเช่นนี้เป็นรูทเพื่อเข้าถึงอุปกรณ์ ถ้าเป็นเช่นนั้นคุณควรเปลี่ยนความเป็นเจ้าของภาพเสร็จแล้ว


2
ทำงานได้อย่างสวยงามและออกนอกกรอบบน OSX เมื่อคุณติดตั้ง VirtualBox ขอขอบคุณที่ชี้ไปที่วิธีแก้ปัญหานี้
JosFabre

8

ฉันลองใช้วิธีแก้ปัญหาที่ยอมรับแล้ว แต่สำหรับฉันมันล้มเหลว:

# VBoxManage convertfromraw /dev/sdg /path/to/file.vdi --format VDI
Converting from raw image file="/dev/sdg" to file="/path/to/file.vdi"...
Creating dynamic image with size 0 bytes (0MB)...
VBoxManage: error: Cannot create the disk image "/path/to/file.vdi": VERR_INVALID_PARAMETER

บางทีมันอาจตรวจไม่พบขนาดเพราะดิสก์นั้นต่อผ่าน USB?

ดังนั้นฉันจึงได้ขนาดของดิสก์ด้วย fdisk -l

Disk /dev/sdg: 160.0 GB, 160041885696 bytes

และจากนั้นฉันใช้รูปแบบ stdin ของ convertfromraw

# dd if=/dev/sdg | VBoxManage convertfromraw stdin /path/to/file.vdi 160041885696 --format VDI
Converting from raw image file="stdin" to file="/path/to/file.vdi"...
Creating dynamic image with size 160041885696 bytes (152628MB)...

2

มีวิธีอื่นที่ปลอดภัยกว่าในการสร้างไฟล์ของระบบปัจจุบันที่ Virtualbox สามารถใช้งานได้ Vdi เป็นไฟล์เฉพาะของตู้จดหมายและมักจะสร้างโดย VB จากการติดตั้งฮาร์ดดิสก์เสมือนใหม่

คุณมีตัวเลือกอื่น ๆ อีกมากมาย

ฉันเพิ่งใช้ disk2vhd เพื่อสร้าง. VHD (Microsoft Virtual Hard Disk) ที่ Virtualbox นำเข้าอย่างสวยงาม (แม้ว่าจะเป็นระบบ XP) ฉันไม่คิดว่ามันจะทำงานได้ดีกับระบบปฏิบัติการอื่น

อีกวิธีหนึ่งคือเครื่องมือแปลง Vmwares ที่สามารถส่งออกระบบของคุณไปยังรูปแบบที่หลากหลายที่เวอร์ช่วลบ็อกซ์และแพลตฟอร์มอื่น ๆ สามารถใช้ได้ มีมาตรฐานแบบเปิดสำหรับสิ่งนี้

http://www.vmware.com/products/converter/features.html


2
ทำไมวิธีการเหล่านี้ "ปลอดภัย" ในความคิดเห็นของคุณ?
andcoz

disk2vhd ใช้สแน็ปช็อตปริมาณซึ่งหมายความว่าสามารถใช้ในการโคลนระบบในขณะที่มันกำลังทำงานอยู่
mwfearnley

"ฉันไม่คิดว่ามันจะทำงานได้ดีกับระบบปฏิบัติการอื่น" -> จริง ๆ แล้วมันทำได้ดีแค่ทำมิเรอร์ Windows 10 ที่มี disk2vhd สำเร็จแล้วทำงานได้อย่างไม่มีที่ติ!
Henrique de Sousa
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.