LinuxでGRUBコマンドラインをロードする方法はありますか?

LinuxでGRUBコマンドラインをロードする方法はありますか?

これは主に教育目的なので、コンピュータの電源を入れたり切ったりする必要はありません。

ベストアンサー1

あなたの質問は、ブートプロセスをデバッグする方法に関するものであると仮定します。つまり、実際に再起動する前に、新しいグルーブ構成が期待どおりに機能するかどうかをテストします。

仮想化を使用すると、これが可能です。

しかし、現在実行中のシステムの物理ディスクを仮想マシンから再起動するだけでコーナーケースが多く発生する。すべての未解決の書き込みをディスクに同期させ、キャッシュをフラッシュして使用する必要があります。厳密な読み取り専用ビュー運転する(おそらく、書き込み中にコピーレイヤーにある可能性があります。)。あなたもする必要がありますネットワーキングを完全に無効にする- または電子メールをダウンロードして、仮想マシン内のサーバーから削除します。これにより、終了時にその電子メールが失われます。

それでも、仮想マシンが使用しているファイルシステムがすでに使用されていてホストによって変更されていると、仮想マシンがクラッシュする可能性があります。適切なスナップショットを使用してこの問題を解決できますが、通常はドライブ全体のスナップショットを撮ることはできず、個々のLVのスナップショットを撮ることはまったく役に立ちません。 VMは起動時に同じスナップショット構造しか表示できないためです。

そのため、仮想マシンの実行中にホストをアイドル状態に保ち、ファイルシステムのアクティビティがないようにするか、重要な起動フェーズ後に仮想マシンを停止することをお勧めします。 VM は読み取り専用なので、VM 内で適切なシャットダウンを実行することなく直接シャットダウン/終了できます。したがって、仮想マシンがクラッシュしてもデバッグを困難にする以外にはあまり問題になりません。

結果を理解したら、基本的に単純なqemuに帰結します。

sync
echo 3 > /proc/sys/vm/drop_caches
qemu -net none -drive file=/dev/disk,readonly
# leave out readonly for a copy-on-write device:
qemu -net none -drive file=/dev/mapper/copy-on-write-disk

(qemuを正しく実行するには、より多くのオプションが必要です。詳細については、qemuガイドを参照してください。たとえば、必要なCPUタイプに合わせて最適化されたGentooなどのディストリビューションを使用している場合-cpu host- しかし、それはポイントです。)。

おすすめ記事