KVM上で動作しているWindows11のクラッシュに対する対応

KVM上で動作しているWindowsを10から11にアップグレードしたところクラッシュが頻発してましたが、クラッシュする直前にエクスプローラーの挙動がおかしく、画面が固まることが判明したため、以下の対応を行ったところ改善されました。

・別のプロセスでフォルダーウィンドウを開く

・エクスプローラーの最近使用した履歴表示の無効化

参考にしたサイト

https://www.pasoble.jp/windows/11/explorer-omoi-freeze.html

Windows 11がリリースされて1年以上経過しますが、未だにシステムが不安定なところがありますね。

grubの記載誤りによるシステムの起動不可事象からの復旧

grubの記載誤りに端を発したシステム不具合から1週間弱かけて復旧しました。grubの記載誤りだけであればブート時のカーネル選択画面でeを入力すれば一時的に書き換えられるので、そんなに慎重に操作していなかったのですが、誤ったパラメータで無理やり起動したことで、ディスクエラーが発生しディスクチェックが必要になったことに気づくまで時間がかかりました。

以下対応まとめ

1.grubの修正
インストールメディアからレスキューモードを起動
/boot/efi/EFI/redhat/grub.cfgを修正する。
修正できない場合は一度削除してgrub2-efi等を入れ直すことで自動的に再生成される。
#rm /boot/efi/EFI/redhat/grub.cfg
#dnf reinstall grub2-efi shim grub2-tools
終わったらシステムディスクで再起動

2.ディスクチェック及び修復
起動すると「dracut:/#」と表示されてブートが止まるため、e2fsckによるディスクチェック及び修復(-p)を行う。
#e2fsck -p /dev/sda2
この際には対象ディスクをマウントしているとファイルが壊れるため注意
またチェックはレイドを構成している場合は各ディスクごとに行う。
自分の環境ではsdaとsdbでraid1を組んでおり、それぞれ4領域に分かれており各1番めはboot-efi領域のため、(sda2,sda3,sda4,sdb2,sdb3,sdb4)の4つに対して実行

3.ブートローダーのRAID設定
grub2-efiを削除していた場合RAIDの設定が消えているため、以前に挙げたRAIDの修復と同様にRAID再度設定し再起動。

RAIDの修復

RAIDの修復

メインのシステムをRAID1で組んでいるのですが、KVMで動かしているWindowsのクラッシュが頻発していたため、ホストOSのシステムのアップデートをかけたところRAIDのVerifyが終わらなくなり、一度リビルドをかけたところ今度はホストOSにエラーが出ることとなりました。

エラー内容
起動時に以下のメッセージが出る。

Warning: /dev/disk/by-id/md-uuid-(番号)does not exist

原因
grubの起動に関するRAID ARRAYに係るUUIDが変更されており、システムがdiskを見つけられていない。

対処方法

1.# mdadm –detail –scan
現在のUUIDを取得

2.# vi /etc/mdadm.conf
古いARRAYの情報をコメントアウトし新しいARRAYの情報を記載(1.のコピペで可)
なお、コメントアウトせず直接書き換えた場合は、別途メモを取っておくことをお勧めします。

3.# vi /etc/default/grub
2.の古いUUIDに一致するUUIDの部分を新しいUUIDに書き換える

4.grub2-mkconfig -o /boot/efi/EFI/redhat/grub.cfg
grub.cfgを再作成。(redhatの箇所はOSによって異なります。)

5.再起動

 

因みに、Windowsの不具合については、同時に動かしている他のゲストOSを停止している間は発生しないため、現時点ではそちらが原因かと推定しています。

2022年11月23日追記
他のゲストOSの停止中もクラッシュが発生したため、原因について再調査中。

Red Hat Enterprise Linux 9.0に更新

自宅PCをRed Hat Enterprise Linux 9.0に更新しました。

更新手順

https://access.redhat.com/documentation/ja-jp/red_hat_enterprise_linux/9/html/upgrading_from_rhel_8_to_rhel_9/index

以前はScientific Linuxを使用していたこともあり、OSのアップグレードはクリーンインストールした後にバックアップデータを復元していたのですが、かなり楽に更新出来ました(それでも更新後に多少の調整は必要でしたが)。もっともそれ以前にFedoraを使用していた時は簡単にメジャーバージョンの更新が出来ていたことを考えると、思うところはありますが。

なお、更新にあたり調整が必要だった点として
・AnthyがRHEL8系のパッケージとして残っており日本語入力出来なかった。→パッケージを一度削除してRHEL9系のパッケージとして再インストール
・RHEL9から仮想化ソフトでSPICEが使用不可になり、ビデオ設定がQXLだったため、virt-managerが起動出来ず、GUIではそれぞれの設定がデットロックとなり変更不可となった。→virsh edit コマンドから当該部分を修正する。
・SPICEによるゲストOSのサウンドのホストからの再生が、SPICEの廃止で出来なくなった。→パススルーしているUSBポートから外付けのサウンドボードを繋ぎ再生する。

ということが必要でした。

WordPressの更新失敗とSELinuxの設定について

RHEL8に入れ替えてから、CGIの表示やWordPressの自動更新、Akismetの接続が上手くいきませんでしたが、どうやら原因は SELinuxのようでした。

SELinux無効化

#vi /etc/selinux/config
SELINUX=enforcing  ⇒ disabled

ここで誤って
SELINUXTYPE=targeteddisabled
にするとOSが起動しなくなるので注意が必要です。起動しなくなった場合は、GRUBメニューの編集(カーネル選択の画面でeを入力)でlinux16 /vmlinuz-○.○○の行の最後にselinux=0を追記し、Ctrl+Xを押して起動し、「/etc/selinux/config」を修正します。なお一時的にUSキーボードとして認識されるので、この時「=」は「〜」のキーで入力できます。

こちらの方の記事が参考になります。

CentOS起動でバーが100%から起動しない場合:SELinux失敗した時

SELinuxを無効化したところ各種エラーがなくなりました。またAWStatsのアクセス統計ページのHTMLファイルの作成スクリプトの自動起動が上手くいかなかった点についても修正されました。

メールフォーム、掲示板がWordPressに移行した今となっては残るCGIはアクセスカウンターのみとなりましたが、やはり動くのはいいですね。Adobe Flash Playerがサポート終了し、見栄えが寂しいページになっているので賑やかしは貴重です。

掲示板をbbPressに変更

本サイトの掲示板をWordPressのプラグインであるbbPressに変更しました。これまではWEB PATIOを使わせていただきましたが、管理の簡略化のため変更することにしました。製作者の方にはこれまで使用させていただいたこと感謝申し上げます。なお新しい掲示板へは、ブログ右側の掲示板からもアクセスできます。

Red Hat Enterprise Linux 8.5に変更

自宅PCをScientific LinuxからRed Hat Enterprise Linux 8.5に変更しました。
年末年末に終わらせるつもりでしたが、思いの外時間がかかりました。
概ね移行できたものの、セキュリティが強化されている関係からか、一部CGI(Common Gateway Interface)の動作が上手くいかないものがありますので、レイアウトが一部崩れていますがご容赦ください。

サイトのドメインを変更

これまでダイナミックDNS(DDNS)サービスとしてieServer.Netのサービスを利用させて頂きましたが、今後はGoogle Domainsを利用することとなりました。
それに伴いドメインがki.jpn.phからk-i.pageに変更となります。
また、ieServer.Netは個人で運営されているようですが、自宅サーバーの構築の手助けを目的にボランタリーに他の方にDDNSサービスを提供されていました。これまでサービスを利用させて頂いたこと、この場でお礼申し上げます。

USBサウンドカードについて

最近マイクを使う機会が増えたことからUSBサウンドカードを購入しました。
自分の環境ではsnd-hda-intelドライバを使うとクラッシュすることから、snd-hda-intelドライバを使わないUSBサウンドカードが必要だったためです。ただ中には相性が悪い物もあり、結局3種類のサウンドカードを買う羽目になりましたので、参考までに載せておきます。
OS:Scientific Linux release 7.8 (Nitrogen)
1.Sound Blaster Play! 3
良い点
・USBポートに指すだけで入出力共に使える。
悪い点
・ホワイトノイズが若干気になる。
・しばしば突然切断される。
特にweb会議で使っていると一度切断されると再認識されるまで30秒程度無音となる。またオーディオデバイスをアプリケーションに再認識させる必要が有るため、使いづらいです。
2.Sound BlasterX G6
良い点
・イヤホンに繋いどときの音質が良い。(ホワイトノイズが気にならない)
悪い点
・マイクが使えない
デバイスとしては認識しているものの、マイク入力が出来ない。macbookでも試したものの同様にマイク入力が出来ない。パススルーさせて仮想化したWindows10に認識させたところマイク入力出来たため、マイクを使うのであればWindows環境に限定されるのではないかと思われます。
3.Sound BlasterX G1
良い点
・USBポートに指すだけで入出力共に使える。
・Sound Blaster Play! 3 よりもホワイトノイズが小さい
悪い点
・Sound BlasterX G6の方が音質が良い
以上のことから自分はSound BlasterX G1を現在使っています。
また、2番目のSound BlasterX G6は1万円超しますが。Windowsでの使用を想定した多機能化しているためか、LinuxとmacOSではマイクを使えませんでした。相性問題は使う機器の値段が高ければ良いというものでもないですね。
また、音質については個々人によって感じ方が異なりますので、あくまで参考となってしまいます。ある通販サイトのレビューでは3番目のSound BlasterX G1のホワイトノイズに我慢できず、直ぐに使うのを辞めた人もいるようです。
今はLinuxもデフォルトで様々な機器が動くようになってきていますが、未だに世の主流はWindowsであり。汎用性が高いと思っていたオーディオ機器ですら、使えないこともあるというのがよく分かりました。

クイックフォーマットを行ったWindows領域の復旧

virt-managerを用いたWindows10の環境にVirtualBoxを載せて遊んでいたところ、再起動に伴いVirtualBoxから読み出した物理ディスクのアドレスが変わってしまい、WindowsがインストールされたHDDを誤ってクイックフォーマットしてしまったので、復旧についてメモとして遺します。
クイックフォーマットはブートセクタに保存されたパーティション領域の設定情報を書き換えるため、個別のパーティションのデータが残っていることが多いそうです。ここでファイルを上書きしないように注意が必要です。
パーティションの復旧はホストのLinux上で「TestDisk」を用いて行いました。
TestDiskの使い方については、以下のサイトが参考になりました。
情報源: TestDiskの使い方 – パーティションの修復方法 | データ復旧大図鑑 – 自分で解決!ファイル復元
作業が終了したらディスク情報を確認し、各パーティションが復旧されていることを確認します。この段階ではブートローダーのWindowsの読み込みの設定が壊れているので、Windowsのインストールディスクを用いて、システムの復旧からコマンドプロンプトを立ち上げ、以下の2つのコマンドを入力します。
「bootrec /Rebuildbcd 」
「bootrec /fixboot」
その後スタートアップ修復を何回か(自分の場合は5回)行なえば、Windowsが起動しました。
こちらについては、以下のサイトが参考になりました。
情報源: UEFI/GPTインストールしたWindowsの「ブート領域」の復旧方法 – ぼくんちのTV 別館
しかし比較的簡単な作業ではあるものの、大体復旧させるのに3時間くらい掛りましたので、パソコンの障害は無いに越したことはないですね。