dd を使用して VHD ファイルを物理ハード ドライブに効率的に転送する – 実践ガイド
仮想ハード ディスク (VHD) ファイルは、VirtualBox およびその他の仮想 x86/x86_64 エミュレーターでの物理メディアの使用をエミュレートする巨大なファイルです。これにより、Windows、OS X、MS-DOS、FreeBSD、OpenBSD、OS/2、さらには Linux ディストリビューション内で他のバージョンの Linux を実行できるようになります。これらのファイルでは、ISO で同じことを行うことができる dd コマンドを使用して、その内容を物理ディスクに直接書き込むことはできませんが、それを行う方法はあります。一部のガイドでは VHD ファイルを ISO に変換する必要がありますが、最新バージョンの Linux で VirtualBox を実行している場合は、これを行う必要はありません。 QEMU ユーザーにも解決策はありますが、もっといろいろ試してみる必要があります。
作業するドライブやパーティションが起動元のものでないことを確認する必要があります。この例ではパーティション分割された NAND メモリを使用しましたが、ライブ DVD または USB ブートが使用できない場合は、それを使用することもできます。問題のマシンをどちらの方法で起動したかに関係なく、Ctrl、Alt、T を押しながらターミナル プログラムを起動するか、Ubuntu ダッシュで検索するか、Xfce4 または LXDE のシステム ツールのサブメニューから開きます。
方法 1:コマンド プロンプトから VBoxManage を使用する
これを行う最も簡単な方法は、従来の VirtualBox インストールを使用することです。まず、損失が心配なすべてのデータをバックアップしていることを確認してください。バックアップ先の物理ハードウェア上のデータがすべて破壊され、その過程で VHD または VHDX ファイルに何らかの操作が行われる可能性があるためです。これは、他のメソッドだけでなく、これほど破壊的なコマンドを含むあらゆるメソッドにも当てはまります。
すべてが安全で、宛先ドライブがアンマウントされているがまだマシンに接続されていることを確認したら、たとえば、まだ接続されているがマウントされていない外付けハードディスクや、途中ですべてが失われるため RAW の可能性がある外付けハードディスクの場合は、VBoxManage clonehd freeBSD.VHDX –format RAW freeBSD.RAW を実行します。 freeBSD.VHDX を仮想ハードディスクに置き換えながら。テスト目的で、FreeBSD をやや中程度にインストールした仮想ハードディスク ファイルがあったため、この名前が付けられました。
このコマンドが完了したらすぐに、sudo dd if=freeBSD.RAW of=/dev/sde を実行します。 RAW ファイルの名前を作成したばかりの RAW に置き換え、sde ブロック デバイスを実際に関心のあるデバイスに置き換えます。不明な場合は、いつでも sudo fdisk -l を実行できます。 正しいパーティション名を確認してください。他のものに dd を使用する場合と同様に、間違ったデバイスに書き込むことは望ましくありません。
大きなファイルを小さなデバイスに書き込もうとした場合と同様に、デバイスに空き領域が残っていないというエラーが表示される場合がありますが、テストでは問題は発生しませんでした。このプロセスにより余分なゼロが追加されるようです。それ以外の場合は、最小限の工夫をするだけで、わずか 2 ステップで仮想ディスクを物理ディスクにコピーできます。
方法 2:QEMU ディスク ネットワーク ブロック デバイス サーバー コマンドを使用する
Quick Emulator (QEMU) 仮想化システムのみにアクセスできるユーザーは、VBoxManage コマンドにアクセスできるユーザーよりも少し複雑な手順に対処する必要があります。コマンド プロンプトで、sudo modprobe nbd を実行します。 続いてqemu-nbd -r -c /dev/ndb0 -f vpc ourTest.vhd 、作業している実際のファイル名を反映するようにファイル名が変更されています。インストールの構成方法によっては、qemu-nbd を実行するために sudo が必要になる場合があります。ここからコマンドをコピーして貼り付ける場合は、実行する前に必ず変更してください。ほとんどの場合、ここでは ndb0 デバイスのみを考慮する必要があるため、問題は発生しないはずです。
完了したら、qemu-nbd -P 2 -r -c /dev/nbd2 -f vpc ourTest.vhd を使用してパーティションを書き込むことができます。 続いてsudo ddrescure -v -f /dev/nbd2 /dev/sde2 ただし、デバイス ファイルを実際に使用したいファイルに置き換えることを忘れないでください。これらをコピーして自分の端末に貼り付ける場合は、それらのファイル名とパーティション番号を、書き込み先のファイル名とパーティション番号に置き換えてください。私たちの /dev/sde デバイスは、何も損傷することなく安全にテストするために使用した単なる中古の SDHC カードでした。 qemu-nbd を実行するには sudo が必要になる場合がありますが、必要ではありません。同様に、構成によってはパーティション番号を削除する必要がある場合があります。 QEMU プロセスは、これらの理由からそれほど直感的ではありません。
Hyper-V ユーザーは、VHD ファイルではなく VHDX イメージを使用している場合があります。この場合は、代わりに qemu-nbd -c /dev/nbd0 -f VHDX ourTest.vhd を実行する必要があります。 ファイル名をもう一度置き換えながら。この形式は、仮想化マシンにより大きなストレージ容量を追加するために Windows Server 2012 に追加されたものですが、VHD の 2TB 制限を回避するためにこの形式を利用する Linux ユーザーが増えています。それ以外の場合、これらの手順は、問題の実際のファイル サイズに関係なく機能するはずです。 GNU ddrescue ツールは dd と同様に動作しますが、最初に最適なブロックを必ずコピーします。
これを実行すると、VHDX イメージを使用するユーザーは sudo ddrescue -v -f /dev/nbd2 /dev/sde2 を実行する必要があります。 、再度上記のファイルを置き換えます。それ以外の場合は、すべての種類の VirtualBox イメージを持っている人は誰でも qemu-nbd -P 2 -r -c /dev/nbd2 -f vpc ourTest.vhd を使用できます。 問題のパーティションを古いディスクであるかのようにマウントします。 sudo mount /dev/nbd2 /cdrom を使用する必要があります。 またはsudo mount /dev/nbd2 /mnt それをマウントします。試す前に、/cdrom または /mnt ディレクトリに他に何もマウントされていないことを確認してください。
方法 3:ファイルをアンマウントしてから切断する
イメージをアンマウントするには、sudo umount /mnt を使用するだけです。 または sudo umount /cdrom それを切り離します。結局のところ、Linux カーネル自体は、それを他のボリュームであるかのように扱うのに忙しかったのです。
ただし、QEMU システムから切断する必要があるため、qemu-ndb -d /dev/nbd2 と入力します。 切断します。
著者について
ケビン・アロウズ
Kevin Arrows は、10 年以上の業界経験を持つ、経験と知識が豊富なテクノロジー スペシャリストです。彼は Microsoft Certified Technology Specialist (MCTS) 認定を取得しており、最新の技術開発について常に最新の情報を入手することに深い情熱を持っています。 Kevin は、ソフトウェア開発、サイバーセキュリティ、クラウド コンピューティングなどの分野での専門知識と専門知識を示し、テクノロジー関連の幅広いトピックについて幅広く執筆しています。テクノロジー分野への彼の貢献は同僚から広く認められ、尊敬されており、複雑な技術概念を明確かつ簡潔に説明する能力が高く評価されています。
-
Linux ディストリビューションでのキーボードのインストール エラーを解決する:クイック フィックス ガイド
Arch、Manjaro、Ubuntu、Fedora、Debian、またはその他の Linux ディストリビューションをインストールするときに、キーボードが突然動作しなくなることがあります。これらのディストリビューションはすべて、インストール プログラム中にキーボードを自動的に検出します。問題がある場合は、いくつかの原因が考えられます。最も明らかで、非常に恥ずかしいのは、キーボードが正しく接続されていないか、故障していることです。 USB または従来の PS/2 ジャックをチェックして、デバイスが正しく接続されていることを確認してから、再起動します。 BIOS または UEFI パッケージがキ
-
中央ディレクトリの署名の終わりが見つからない問題を修正する方法
圧縮ファイルは、今日の世界で広く使用されています。ファイルのサイズが日ごとに大きくなるにつれ、圧縮はますます多くの人々が利用するものになっています。圧縮ファイルを解凍しようとすると、ユーザーは「中央ディレクトリの終わりの署名が見つかりません」というメッセージが表示されます。 エラーメッセージ。このエラーメッセージは、unzipユーティリティを使用してファイルを解凍しようとするとポップアップ表示されます。上記のエラーメッセージのより詳細な説明は、上記の文とともに提供されます。 結局のところ、前述のエラーメッセージの原因は非常に明白であり、エラーメッセージにも記載されています。ダウンロードし