Linux PCは現在マザーボードのエラーのため停止しています。しかし、ハードドライブはまだ動作しています。ディスクを別のLinuxシステムに移植したところ、すべてのコンテンツを読み取ることができることがわかりました。
それでは、古いコンピュータを仮想マシンに復元したいと思います。まず、ディスクをイメージファイルに変換せずに(つまり、既存のディスクとして実行)、これを実行できますか? KVMが良い選択かLXCが良い選択かはまだわかりませんが、ホストPCがかなり遅いため、LXCを好みます。可能ですか?仮想マシンのデプロイの経験はやや制限的です。
ところで、両方のコンピュータがGentoo Linuxを実行します。
編集する
今、すべての答えに感謝します。明らかに、ある種の仮想マシンを実行するためにハードドライブが必要な主な理由は、古いマシンが小規模のcodaクラスタの主要なcodaサーバーであるためです。 「ネイティブ」セカンダリパーティションからデータを(簡単に)取得できないため、コンテナを実行するのはおそらく最も簡単な方法です。ホストはハードウェア機能の点で非常に制限されているため、ddを介してディスクを複製するだけでは機能しません。十分なスペースがありません(!)(理由は尋ねないでください:-/ - やや奇妙な設定です)。また、古いPCでもLVMを使用しています。しかし、さまざまなパーティションとLVM LVが新しいホストにうまくインストールされました。データはすべてそこにあり、誤って古いディスクを "userland"(新しいカーネル、古いuserland)として使用して新しいホストを起動した場合にも機能します。システムは非常に似ています。
LXC設定の利点は、多くのリソースが必要ないことです。欠点は、CODA サーバーがコンテナーで正常に動作しているかどうかがわからないことです。したがって、仮想マシン全体に配置する方が安全です。
答え1
VirtualBoxを使用して物理ハードドライブから起動できます。手動:ゲストの元のホストハードドライブを使用する。
私はこれについてドイツ語ガイドを書きました:デュアルブート - Windows仮想化。物理的なWindows起動に焦点を当てていますが、Linuxでも動作します。
実行する重要なポイント:
- バーチャルボックスをインストールしてください。
vboxusers
後でこのグループのメンバーになりましょう。 - 新しいハードドライブのデバイスファイルを探します(例
/dev/sdb
:) - VirtualBoxで仮想マシンを作成するいいえ仮想ハードドライブ(私が呼ぶ名前
oldsys
) - root:新しいハードドライブを指すvmdkファイルを作成します。
VBoxManage internalcommands createrawvmdk -filename ~/VirtualBox\ VMs/oldsys/oldsys.vmdk -rawdisk /dev/sdb
所有者を
oldsys.vmdk
ルートからユーザーの所有者に変更します。たとえば、raw ディスクへのアクセスを許可する udev ルールを作成します。
KERNEL=="sdb", OWNER="myusername", MODE="0600"
oldsys.vmdk
VirtualBoxでVM oldsysの仮想SATAコントローラを接続します。oldsysがEFIブートシステムの場合は、「システム」でoldsysのVM設定を「EFI有効」に変更します。
「IO-APIC」を有効にする必要があるかもしれません。
udevルールを有効にするには、再起動してください。
VirtualBoxでoldsysを実行します。正常に開始する必要があります。
答え2
キャプチャディスクイメージを使用することをお勧めします救うその後、イメージファイルは仮想マシンのストレージをサポートするために使用されます。これにより、仮想化計画に問題が発生してもデータのソースが危険にさらされません。
KVMはオペレーティングシステム全体を起動できるため、確実に機能します。 LXCは、システムがどれほど似ているかに応じて動作できます。 LXCの主な制限は、コンテナ内で実行するすべてがホストカーネルを共有することです。 KVMを使用すると、ゲストでカーネルを実行できます。データのコピーだけで作業している限り、状況に最適な設定が見つかるまで実験してみてください。
答え3
可能ですが、そのデータに興味がある場合は、ディスクバックアップを作成することをお勧めします。
ホストPCのCPUが仮想化をサポートしている限り(Intelの場合はこの項目を確認して確認grep vmx /proc/cpuinfo
)、KVMはゲスト速度を遅くしません。
古いディスクが使用できると仮定すると、/dev/sde
通常のユーザーとして次のコマンドを使用できます。
$ qemu-system-x86_64 -enable-kvm -drive file=/dev/sde,if=virtio,format=raw \
-m 2048 \
-net user,hostfwd=tcp::10022-:22 -net nic,model=virtio
これにより、2GiB RAMを搭載した仮想マシンが起動します。-net
これらのオプションは、ゲストSSHDへのポート転送と一般ゲストネットワークアクセスに興味がある場合にのみ必要です。
物理ディスクの代わりにイメージファイルを使用することにした場合は、/dev/sde
イメージファイルのファイル名を変更してください。
答え4
VBoxManageを使用してこの問題を解決しました。デフォルトでは、新しいVirtualBox VMを作成し、元のディスクを交換して起動しました。
当初はネットワークを正しく設定するのに問題がありました(ホストカーネルは私のVirtualBoxヘルパーカーネルモジュールと比較して古すぎます)。しかし、カーネルのアップグレード後にブリジットネットワーキングが行われ、それ以来すべてがうまくいっています。