こんにちわ、PHPエンジニアのエンジニア婦人(@naho_osada)です。
PHPエンジニアとして9年~の経験があります。
先日、開発環境で使っているHyper-Vの仮想マシンが起動できなくなりました。
出てくるメッセージが「仮装ハードディスクのチェーンが壊れています」「チェックポイントが作成できません」などで復旧する方が大変そう。
作り直した方が早そうだな、と思って作り直したら、まさかの「再起動できなくて暴走」しました…
問題発生はインストール後の再起動
Ubuntu24.04(Desktop)のイメージを指定してインストール、完了!
あとは再起動すればOK。画面上でも「再起動」ボタンがある。押して完了…
ちょっと席を外したら、何やら黒い画面で止まっている様子…すぐに再起動が終わると思ったのに、おかしいな?と思ったら
どーーーーーーーーーーーーーーん
なんかエラーメッセージがずらずらと書かれている!
どうも同じことを繰り返してるっぽい!早すぎて読めない!(止まらないのでキャプチャ撮って読む羽目になった)
今まで何回も開発用の仮想マシンを作っては壊して作ってはうっかり壊してとやってきましたが、これは初めての経験でした。
SQUASHFS error: Failed to read block
英文からして、何かを読むのに失敗してるのはわかった。
でもそれが何なのか…そして何も命令を受け付けない状況でどうしろというのか…そうしている間にも延々と同じメッセージを出し続けています…
仕方ない、ここは強制シャットダウンです。
もしこのシャットダウンのせいで壊れたらまた作り直そう…それが開発用仮想マシンの良いところです…
メニューから「シャットダウン」を選択します。
選択した後も変わらずエラーメッセージがひたすら表示される黒い画面のままですが(恐怖)、とりあえず落ち着いてもらえれば…と一旦待ちました。
仮想マシンの状態を変更するのに失敗(シャットダウンできない)
何も変わらないけれど、きっと裏でシャットダウンの処理が働いているはず…と思ったのですが。
仮想マシンの状態を変更するのに失敗した(シャットダウンに失敗した)、とHyper-Vからのメッセージです。
そんなことある!?
もう一度シャットダウンを命令してみましたが、状況は変わりませんでした。
それでは仕方ありません。他の仮想マシンも壊れるかもしれませんが(起動してないから無事だと信じたい)
仮想マシンではなく、本体ごと再起動します。
まさかのゾンビ化
本体ごとの再起動むなしく、起動すると「実行中」になって同じようにエラーメッセージを出し続けているううううううううう!ひええええええええええ!!
それなら本体のシャットダウンをしてちょっと置いてから電源を入れてみて…いやこれも変わらないしいいいいいいいい!ひえええええええええええええええ!
ゾンビなのか!?きみはゾンビになってしまったのか!?
シャットダウン命令を出してもやっぱり相変わらずシャットダウンは受け付けない!できなかったって通知がくる!
※ゾンビ化した原因は、おそらくですが「サービスが停止したときに実行されていた場合は自動的に起動する」がオンになっていたためです。
本体再起動しても、終了直前に仮想マシンも実行されていたので…
「サービスの停止」で解決
もう手の施しようがない…命令は聞かないし何しても起き上がってくるゾンビ状態…
途方に暮れたそのとき、仮想マシンのサービス自体を停止すればいいのかもしれない、と思いつきました。これです。
サービス停止です、仮想マシンの元締めの方、Hyper-Vの。
ここを停止されたらさすがのゾンビも動けまい…浄化されるかも!!
望みをかけてサービスの停止をクリックし…エラーゾンビは無事に消失したかのように見えました。
念には念を入れて本体も再起動をかけ、おそるおそる開いてみると…ゾンビは浄化されていました。
デスクトップに平和が戻りました。
ゾンビ(仮想マシン)は何事もなかったように
平和になったところで、一度ゾンビになってしまった仮想マシンを起動します…
またゾンビ化したらどうしよう…と思いながら…
何事もなかったかのように起動しました。諸々問題なく動作します。apt-getもできました。ufwもできました。
いったいあれはなんだったのか…
まとめ:困ったら元締めから停止させる
「1号を止めろ!」
「はい!…い、1号、停止できません!」
「なにい!?」
「暴走しています!」
「原因は!?」
「わかりません!何度か命令を送っていますが、停止できません!」
「仕方ない、元締めを停めろ!」
「し、しかしそれでは2号や3号に影響が出て、彼らまで壊れてしまったら…」
「かまわん、もしそうなったらすべて作り直せ!」
「は、はい!!!」
―そして平和が訪れた。
どうしても強制終了しなければならないときもありますよね。
だいぶ危険な操作であるとは思うので、やるときは自己責任ですね…無事でよかった。