Làm thế nào để sử dụng lệnh DD để sao chép tập tin VHD vào đĩa cứng vật lý

Các tệp đĩa cứng ảo (VHD) là các tệp khổng lồ mô phỏng việc sử dụng phương tiện vật lý trên VirtualBox và một số trình giả lập x86 / x86_64 ảo khác. Điều này cho phép bạn chạy Windows, OS X, MS-DOS, FreeBSD, OpenBSD, OS / 2 hoặc thậm chí các phiên bản Linux khác trong bản phân phối Linux của bạn. Các tệp này không cho phép bạn ghi trực tiếp nội dung của chúng vào đĩa vật lý thông qua lệnh dd cho phép bạn thực hiện tương tự với ISO, nhưng có cách để thực hiện. Trong khi một số hướng dẫn yêu cầu bạn chuyển đổi tệp VHD thành ISO, bạn sẽ không phải làm điều này nếu bạn đang chạy VirtualBox trên bất kỳ phiên bản Linux hiện đại nào. Người dùng QEMU cũng có một lối thoát, mặc dù nó liên quan đến việc chơi nhiều hơn.

Bạn sẽ cần phải chắc chắn rằng không có ổ đĩa hoặc phân vùng nào mà bạn đang làm việc là ổ đĩa bạn khởi động. Chúng tôi chỉ sử dụng một phần bộ nhớ NAND được phân vùng cho ví dụ này, nhưng bạn có thể muốn sử dụng một đĩa DVD trực tiếp hoặc khởi động USB nếu bạn không thể làm như vậy. Bất kể bạn đã khởi động máy nào trong câu hỏi, hãy bắt đầu chương trình đầu cuối bằng cách giữ phím Ctrl, Alt và T, tìm kiếm nó trên Ubuntu Dash hoặc mở nó từ menu con System Tools trong Xfce4 hoặc LXDE.

Phương pháp 1: Sử dụng VBoxManage từ Command Prompt

Đến nay cách dễ nhất để làm điều này là sử dụng cài đặt VirtualBox truyền thống. Hãy chắc chắn rằng bạn đã sao lưu tất cả dữ liệu bạn đang lo lắng về việc mất vì bạn sẽ hủy bất kỳ dữ liệu nào trên phần cứng vật lý của đích trong khi bạn cũng có thể làm một thứ gì đó cho tệp VHD hoặc VHDX trong tiến trình. Điều này cũng đi theo phương pháp khác, cũng như bất kỳ thứ gì liên quan đến các lệnh có tính hủy diệt này.

Một khi bạn chắc chắn rằng mọi thứ đều an toàn và ổ đĩa đích chưa được gắn nhưng vẫn gắn với máy, hãy nói một đĩa cứng gắn ngoài mà bạn vẫn cắm nhưng không được gắn hoặc thậm chí có thể bị hỏng vì bạn sẽ mất mọi thứ trên đó trong quá trình này, hãy chạy VBoxManage clonehd freeBSD.VHDX –format RAW freeBSD.RAW trong khi thay thế freeBSD.VHDX bằng đĩa cứng ảo của bạn. Chúng tôi đã có một tập tin đĩa cứng ảo với một cài đặt hơi trung bình của FreeBSD cho mục đích thử nghiệm, do đó tên.

Ngay khi lệnh này kết thúc, hãy chạy sudo dd if = freeBSD.RAW của = / dev / sde, thay thế tên tệp RAW bằng RAW bạn vừa tạo và thiết bị khối sde với thiết bị mà bạn thực sự quan tâm. bạn không chắc chắn, sau đó bạn luôn có thể chạy sudo fdisk -l để đảm bảo bạn biết tên phân vùng phù hợp. Cũng giống như sử dụng dd cho bất kỳ điều gì khác, bạn không muốn ghi vào thiết bị sai.

Bạn có thể gặp lỗi về không còn dung lượng trên thiết bị, giống như khi bạn cố ghi một tệp lớn vào thiết bị nhỏ hơn, nhưng điều này không gây ra sự cố trong kiểm tra. Dường như quá trình này bổ sung thêm số không. Nếu không, bạn đã có thể sao chép đĩa ảo vào đĩa vật lý chỉ trong hai bước với mức tối thiểu là lừa đảo xung quanh.

Mẹo CHUYÊN NGHIỆP: Nếu vấn đề xảy ra với máy tính của bạn hoặc máy tính xách tay / máy tính xách tay, bạn nên thử sử dụng phần mềm Reimage Plus có thể quét các kho lưu trữ và thay thế các tệp bị hỏng và bị thiếu. Điều này làm việc trong hầu hết các trường hợp, nơi vấn đề được bắt nguồn do một tham nhũng hệ thống. Bạn có thể tải xuống Reimage Plus bằng cách nhấp vào đây

Phương pháp 2: Với lệnh máy chủ thiết bị mạng ổ đĩa QEMU

Người dùng chỉ có quyền truy cập vào hệ thống ảo hóa Quick Emulator (QEMU) sẽ phải đối phó với một thủ tục liên quan nhiều hơn một chút so với những người có quyền truy cập vào lệnh VBoxManage. Tại dấu nhắc lệnh, chạy sudo modprobe nbd theo sau bởi qemu-nbd -r -c / dev / ndb0 -f vpc ourTest.vhd, với tên tệp được thay đổi để phản ánh tên tệp thực tế bạn đang làm việc. Bạn có thể cần sudo để chạy qemu-nbd, tùy thuộc vào cách bạn đã cấu hình cài đặt của bạn. Nếu bạn đang sao chép các lệnh từ đây và dán chúng, hãy đảm bảo thay đổi chúng trước khi chạy chúng. Trong hầu hết các trường hợp, bạn sẽ chỉ có thiết bị ndb0 lo lắng ở đây, vì vậy bạn không nên gặp phải bất kỳ vấn đề nào ở đó.

Khi đã xong, bạn có thể viết phân vùng bằng qemu-nbd -P 2 -r -c / dev / nbd2 -f vpc ourTest.vhd theo sau bởi sudo ddrescure -v -f / dev / nbd2 / dev / sde2, nhưng hãy nhớ thay thế các tệp thiết bị bằng những tệp bạn đang thực sự quan tâm đến việc sử dụng. Nếu bạn đang sao chép và dán chúng vào thiết bị đầu cuối của riêng mình, hãy đảm bảo thay thế các tên tệp và số phân vùng đó bằng những tên bạn đang cố viết. Thiết bị / dev / sde của chúng tôi chỉ đơn thuần là thẻ SDHC đã sử dụng mà chúng tôi đang sử dụng để kiểm tra an toàn mà không làm hỏng bất cứ thứ gì. Bạn có thể cần sudo để chạy qemu-nbd, nhưng bạn không cần nó. Tương tự như vậy, bạn có thể phải giảm số phân vùng tùy thuộc vào cấu hình của bạn. Quá trình QEMU gần như không trực quan vì những lý do này.

Người dùng Hyper-V có thể có hình ảnh VHDX thay vì tệp VHD. Nếu đây là trường hợp, thì bạn sẽ cần chạy qemu-nbd -c / dev / nbd0 -f VHDX ourTest.vhd trong khi thay thế tên tệp một lần nữa. Trong khi định dạng này là một bổ sung cho Windows Server 2012 để thêm dung lượng lưu trữ lớn hơn cho các máy ảo hóa, ngày càng có nhiều người dùng Linux chuyển sang nó để thoát khỏi giới hạn 2TB VHD. Nếu không, các hướng dẫn này sẽ hoạt động bất kể kích thước tệp thực tế được đề cập đến. Công cụ ddrescue GNU sẽ hoạt động như dd, mặc dù nó đảm bảo sao chép các khối tốt nhất trước tiên.

Khi điều này được chạy, người dùng làm việc với hình ảnh VHDX sẽ cần chạy sudo ddrescue -v -f / dev / nbd2 / dev / sde2, một lần nữa thay thế các tệp ở trên. Nếu không, tất cả mọi người với tất cả các loại hình ảnh VirtualBox đều có thể sử dụng qemu-nbd -P 2 -r -c / dev / nbd2 -f vpc ourTest.vhd để gắn kết phân vùng được đề cập như thể nó là bất kỳ đĩa cũ nào. Bạn sẽ cần phải sử dụng sudo mount / dev / nbd2 / cdrom hoặc sudo mount / dev / nbd2 / mnt để gắn kết nó. Hãy chắc chắn rằng bạn không có gì khác được gắn vào thư mục / cdrom hoặc / mnt trước khi bạn thử nó.

Phương pháp 3: Ngắt kết nối và sau đó ngắt kết nối tệp

Để tháo hình ảnh, bạn chỉ cần sử dụng sudo umount / mnt hoặc sudo umount / cdrom để tách nó ra. Bản thân hạt nhân Linux, sau khi tất cả, bận rộn xử lý nó như thể nó là bất kỳ khối lượng nào khác.

Tuy nhiên, bạn vẫn cần phải ngắt kết nối nó khỏi hệ thống QEMU, vì vậy hãy gõ qemu-ndb -d / dev / nbd2 để ngắt kết nối nó.

Mẹo CHUYÊN NGHIỆP: Nếu vấn đề xảy ra với máy tính của bạn hoặc máy tính xách tay / máy tính xách tay, bạn nên thử sử dụng phần mềm Reimage Plus có thể quét các kho lưu trữ và thay thế các tệp bị hỏng và bị thiếu. Điều này làm việc trong hầu hết các trường hợp, nơi vấn đề được bắt nguồn do một tham nhũng hệ thống. Bạn có thể tải xuống Reimage Plus bằng cách nhấp vào đây

Facebook Twitter Google Plus Pinterest