仮想マシンと実マシンの行き来についてまとめ update 2

前項「仮想マシンと実マシンの行き来についてまとめ update」に関して,その後新しいことがわかったのでupdateします.

実マシンから仮想マシンへの移行

これは比較的楽です.Linux distroの32 bit版でも64 bit版でもたいていうまくいきます.仮想マシンの仮想ディスクイメージ(以下「仮想イメージ」と略します)は,MBRでもGPTパーティションでも大丈夫です.仮想マシンでマルチブートする必要はありませんし,SWAPにzramを使用すれば,MBRではroot用の1本のパーティションで済みます

ブートローダーの設定は,Slackware64 15.0のインストール用DVDイメージからブートさせて,chrootして設定します.もちろん他のdistroのインストールDVDイメージでもできますが,使い慣れていることもあり一番堅実な感じがします.

32bit OSについては同様にSlackwareのオリジナル(32bit版)を使用します.

これで,Slackware 32/64, Debian 32/64, Manjaro 64のそれぞれの実マシンを仮想化できています.

特に他の設定で引っかかるところもありません.fstabの記述は最初は/dev/sda1などにしておいて,必要に応じてUUIDなどに書き換えれば良いと思います.

十分習熟したこともありますがほぼまちがいなく仮想化できます.

仮想マシンから実マシンへの移行

こちらは,難易度が少し高いです.基本的には第1OSのManjaroのGRUBから起動するようにします(ただし,grub.cfgの手直しが必要).

64bit版 Linux

64bit版については,第1OSであるManjaroのGRUBから,Debian, Slackware64, Manjaroをブートできるようにできました.

設定の要所としては,第1OSのManjaroのgrub.cfgの手直しと,コピーした第2OSのfstabの記述をUUIDにしておくくらいでしょうか.

唯一Debian AMD64については,第1OSのManjaroのEFI+GRUBからのブートに加えて,自前のEFI+GRUBからのブートもできるようになりました.しかし,過去にはうまく行かなかったこともあり,どうするとうまく行ってどうすると失敗するのかは解っていません.

32bit版 Linux

32bit版に関しては,基本的に64bit版と同じ手順・注意で実マシンの移行自体はできています.しかし,引越し先のハードとのインコンパチが原因と思われるトラブルにつきまとわれています.

Slackware 15.0 の32bit 版は,第1OS ManjaroのGRUBから起動はしますが,何回かに1度ブートに失敗して,BIOSのブート画面に戻りますが,再度ブートすればたいていsddmが表示され,KDEにログインできます.

Debian 32bit paeについては,CUIは起動しますが,GUIではXは起動しますが,sddmが起動してくれません.いや,起動はしているのですが画面が全面黒でポインティングディバイスに連れてポインターは動き,場所に応じてIビームや矢印になります.試しにパスワードを入力してみると,ログインできたようですが,KDEのデスクトップは表示されず黒画面のままです.

これは,ビデオドライバーのインコンパチに違いないと当たりをつけ,Xorg.0.logを見ると,glamoreglというドライバーが選択されています.ビデオカードは “NVidia GeForce GT 640” という古いものです.たぶん,64bitでは問題ないのでしょうが今更32bit版を使う人も少ないので32bit版ではバグが潰しきれていないのではないでしょう.

/etc/X11/xorg.conf.d/内に,01-video-driver.confというテキストファイルを作りました.内容は,

Section "Device"
     Identifier "Card1"
     # Driver "nouveau"
     Driver "fbdev"
     BusID "PCI:1:0:0"
EndSection

です.そう,最初に “nouveau” を試しましたが,sddmは表示されログインできますが,KDEのデスクトップが表示されたところで画面はフリーズしてしまうので, “fbdev” にしたところ,いろいろDesktop Effectsは使えませんが,とりあえずはKDEが使えるようになりました

仮想マシンの実マシン化に直接は関係ありませんが,付随した問題なので記録しておく次第です.

“distribution” の略は “distro” です.「ディストリ」と略して書くと,英語のドキュメントを読んでないことがバレます.
GPTの場合はBIOS BOOTパーティションが必要.
特に電源投入後初回のブート時はほぼ100%失敗します.
Debian 9時代まで実マシンだった.
この記事も,Debian 32bit pae bookwormのKDEで動くFirefoxから書いてます.

仮想マシンと実マシンの行き来についてまとめ update

前項「仮想マシンと実マシンの行き来についてまとめ」に多少勘違いなどがあったので,updateします.

実マシンから仮想マシンへの移行

これは比較的楽です.Linux distroの32 bit版でも64 bit版でもたいていうまくいきます.仮想マシンの仮想ディスクイメージ(以下「仮想イメージ」と略します)は,MBRでもGPTパーティションでも大丈夫です.仮想マシンでマルチブートする必要はありませんし,SWAPにzramを使用すれば,MBRではroot用の1本のパーティションで済みます

ブートローダーの設定は,Slackware64 15.0のインストール用DVDイメージからブートさせて,chrootして設定します.もちろん32bit OSについてはSlackwareのオリジナル(32bit版)を使用します.これで,Slackware 32/64, Debian 32/64, Manjaro 64のそれぞれの実マシンを仮想化できています.

特に他の設定で引っかかるところもありません.fstabの記述は最初は/dev/sda1などにしておいて,必要に応じてUUIDなどに書き換えれば良いと思います.

十分習熟したこともありますがほぼまちがいなく仮想化できます.

仮想マシンから実マシンへの移行

こちらは,難易度が少し高いです.基本的には第1OSのManjaroのGRUBから起動するようにします(ただし,grub.cfgの手直しが必要).

32bit版 Linux

32bit版に関しては,実マシンの移行自体はできたもののトラブルにつきまとわれています.

Debian 32bit paeについては,CUIは起動しますが,GUIではsddmが起動してくれない,というところまでは行きます.本体のKDEにログインできませんが,その他の機能は問題ないようで,他のマシンからsshでつないで調べてみたりしていますが,今のところ解決していません.

また,Slackware 15.0 の32bit 版についても,第1OS ManjaroのGRUBから起動はしますが,何回かに1度ブートに失敗して,BIOSのブート画面に戻りますが,再度ブートすればたいていsddmが表示され,KDEにログインできます.

64bit版 Linux

64bit版については,第1OSであるManjaroのGRUBから,Debian, Slackware64, Manjaroをブートできるようにできました.

設定の要所としては,第1OSのManjaroのgrub.cfgの手直しと,コピーした第2OSのfstabの記述をUUIDにしておくくらいでしょうか.

唯一Debian AMD64については,第1OSのManjaroのEFI+GRUBからのブートに加えて,自前のEFI+GRUBからのブートもできるようになりました.しかし,過去にはうまく行かなかったこともあり,どうするとうまく行ってどうすると失敗するのかは解っていません.

GPTの場合はBIOS BOOTパーティションが必要.
Debian 9時代まで実マシンだった.
特に電源投入後初回のブート時はほぼ100%失敗します.

仮想マシンと実マシンの行き来についてまとめ

まとめというより,まだ途中経過ではあります.

実マシンから仮想マシンへの移行

これは比較的楽です.Linux distroの32 bit版でも64 bit版でもたいていうまくいきます.仮想マシンの仮想ディスクイメージ(以下「仮想イメージ」と略します)は,MBRでもGPTパーティションでも大丈夫です.仮想マシンでマルチブートする必要はありませんから,MBRにしておけばBIOS BOOT用パーティションなしの1本のパーティションで済みます.

ブートローダーの設定は,Slackware64 15.0のインストール用DVDイメージからブートさせて,chrootして設定します.もちろん32bit OSについてはSlackwareのオリジナル(32bit版)を使用します.これで,Slackware 32/64, Debian 32/64, Manjaro 64のそれぞれの実マシンを仮想化できています

十分習熟したこともありますがまずまちがいなく仮想化できます.

仮想マシンから実マシンへの移行

こちらは,難易度が高いです.特に32bit版についてはまぐれで1度Slackware 15.0を第1OSのManjaro AMD64版のGRUBからブートできるようになりましたが,その後は再現できていません😅

Debian 32bit paeについては,CUIは起動しますが,GUIではsddmが起動してくれない,というところまでは行きます.

64bit版については,ManjaroのGRUBからDebian, Slackware64, Manjaroを第1OSであるManjaroのGRUBからブートできるようにはできました(ただし,grub.cfgの手直しが必要).

また,唯一Debian AMD64については,第1OSのManjaroのEFI+GRUBからのブートに加えて,自分のEFI+GRUBからのブートもできるようになりました.しかし,過去にはうまく行かなかったこともあり,どうするとうまく行ってどうすると失敗するのかは解っていません.

とはいえ,「仮想マシンから実マシンへの移行」で,32bit版はほとんどうまく行っていないと記しているとおり,最近は32bit版の実マシンが存在していませんから,その仮想化のテストはできていません.
Debian 9時代まで実マシンだった.

箱庭遊び16: ほぼ習熟

バックアップから, 仮想ディスクを仕立てて,仮想マンシを起動するまでの手順をほぼ習熟しました.KVM/QEMUでもVMWare Fusionでもほとんど手順を間違えずに,あるいは間違えたとしてもすぐ修正して,仮想マシンが動きました.

一応これは実用的な訓練でしたが,あとは実用的な利用目的は考えつかないので,そろそろ箱庭遊びは切り上げます.

さて,次は何をしようかな😥

箱庭遊び15: KVM/QEMUでもバックアップから作った仮想ディスクでブート成功

某所で動いている実用サーバーのバックアップから仮想ディスクを起こして起動させるテストの続きです.

一昨日うまく行かなかった理由はDebianのインストール用DVDイメージのRescueモードから,作った仮想ディスクにchrootしていたからです.この方法だとchrootの前のおまじないが足りないということは,随分前に経験済みだったのですが,同じところで一日はまり込んでいたわけです.

この日の作業では,まず上記Debianのインストールディスクでchrootしてうまく行っていなかった,DOSパーティションの仮想ディスクに,Gentoo方式で正しくchrootして,grub-install, grub-mkconfigを実行して,ちゃんとブートするようになりました

次に,まっさらな仮想ディスクを仕立て,GPTパーティションとしてBIOS boot領域とルートの2パーティションにして,バックアップからコピーをして,同様にchrootしてgrub-install, grub-mkconfigをし,こちらもブートするようになりました

どちらの仮想イメージについても,Bookwormに無事upgradeできました.

使用したインストール用DVDイメージはSlackware64 15.0.
同じくSlackware64 15.0.