misc.log

日常茶飯事とお仕事と

Windows10のフォトが開かなくなってしまったので……

原因がよく分からないのですが、Windows 10の「Microsoftストア」も「フォト」も動かなくなってしまいました。リセットやらいろいろやってみたのですが効果無し。

そこで、代替品を探していたのですがこんなものを発見しました。

www.authorsoft.com

Windows 7Windows 10をクリーンインストールした場合に出てくるフォトビューアーが残っているはずなので、それを復活させるというツールです。起動して、下記の画面で「Restore Windows Photo Viewer」を選択。

f:id:frontline:20210126215706p:plain
Restore Windows Photo Viewerの画面

その後、画像などを「プログラムから開く」でフォトビューアーを選べば、懐かしいツールで画像を開けます。

f:id:frontline:20210126215815p:plain
他のプログラムから開く、でフォトビューアーを選択する

とりあえずこれでしのぎながら、溜まってるデータなどを整理して退避し、どっかでWindowsをゴッソリ入れ直そう……

自宅NAS(Buffalo Linkstation)そろそろ買い換えかな

2009年に購入して自宅のルーターに接続して利用している、バッファロー社の個人用NAS*1、これを買い換えなければいけないかもしれません。

www.backyrd.net

電源は基本的に「自動」に設定しており、メインで使っているパソコンの電源投入をトリガーに自動起動するように設定してあるのですが、最近、電源投入時に時刻再設定を求めてくることが増えてきました。内蔵の時計を維持する電池切れか……それとも本体自体の寿命か。いずれにしても2009年購入なので既に12年近く経過しており、ハードディスク、と考えると十分壊れていてもおかしくない頃合い。

既に「壊れるかも」については2016年に懸念していて、ふるさと納税で外付けタイプのハードディスクをもらい、それを接続して大事なデータはそちらに保管しています。

www.backyrd.net

で、そろそろこの「本体側」が壊れるのでは?ということで。やはりなんだかんだでバッファロー製品を長く使っているので、買うとしたら同じものですかね。ちょっと今月来月は出費が立て込んでいるので、春あたりにこれを買おうかと思っています。

上位モデルやRAID対応したものもありますが、まぁ10年使って壊れていませんし。また、デジカメの写真やスキャンした資料のデータなど大事なものはPCとNASの多重保管で管理しているので、まぁ最悪吹っ飛んでもゼロになることはないだろう、ということで価格優先で選定しようかと。

*1:NAS: Network Attached Storage、いわゆる「共有フォルダー専門のパソコン」みたいなものです。いわゆる「ファイルサーバー」とほぼ同義。ディスクと簡単なPCがセットになっていて、たとえば自宅のLANにケーブルで接続すると、自宅などのどのPCやスマホなどからもファイルを読み書きできるというものです。

VMware WorkstationでVMを移動、リンククローン先VMが動かない

VMware WorkstationのVMをPC入れ替えなどで移動してフォルダー構成が変わってしまった場合、あるVMを元にリンククローンで作成したVMが「クローン元のVMファイルが見つからない」というエラーを出して起動しなくなります。その場合の対処例をメモしておきます。ちなみに環境はVMware Workstation 15.5、Windows10がホストのOSです。

先に簡単に手順を述べておくと「参照先の親VMパスを記載した仮想ディスクの定義情報をテキストエディターで書き換える」です。かなり強引ですが。

クローン先を起動、リンク先VMを訂正

リンククローンのクローン元を移動してしまった場合、クローンで作ったVM起動時に下図のようなメッセージが表示されます。

f:id:frontline:20210125094443p:plain
リンク先のVMが見つからない警告

これは、リンク先の「親VM」を絶対パスで保持しているため、パスの名称が1つでも変わってしまうとどこにあるか判らなくなってしまうというVMwareの仕様のためのメッセージ。ここから「参照」で親VMのフォルダーとファイルを特定してやると、とりあえずこのメッセージは消えます。VMwareの仮想PCを定義したファイルは拡張子が「.vmx」のものです。フォルダーとファイルを指定してください。

ここで参照先を指定することで、クローンVMVM定義ファイル(拡張子が.vmxのファイル)に記載されている「fileSearchPath」に指定したフォルダーが追加されます。

このあたりの作業を行っていると、VMのフォルダー名とかVM名の命名をわかりやすくしておかないと、大量のVMが有る場合などは混乱することが判るかと思います。普段からそうしたあたりの運用ルールを決めておきましょう。

図解即戦力 仮想化&コンテナがこれ1冊でしっかりわかる教科書

図解即戦力 仮想化&コンテナがこれ1冊でしっかりわかる教科書

クローン先ディスクを訂正

上記の作業を行って再度クローンしたVMを起動すると、おそらく次のようなメッセージが表示されて起動に失敗します。

f:id:frontline:20210125094743p:plain
仮想ディスクのリンク先が見つからない警告

これは、VMwareで定義される「仮想PCのハードディスク」について定義したファイルが見つからないというもの。クローンVMでは基本となる親VMのOS情報は、親VMのハードディスク(仮想ハードディスク)に入っているので、そちらも併せて参照を切り替えないとOS起動に必要な情報へたどり着くことができないのですね(それくらい上記作業から追跡してくれればよさそうなものですが……。おそらくVMと仮想ディスクが同じ場所にないような運用を想定して別々の定義になっているのでしょうね)。

これですが、残念ながら参照でファイルを指定といったことが出来ず、エラーダイアログにはOKボタンしかありません。そこで、ここではテキストエディター(サクラエディターやメモ帳のようなツール)で、VMwareの仮想ディスク定義ファイルを手作業で編集する必要があります。

上記エラーメッセージの場合、書いてあることの意味は

  • VMが置いてあったCドライブの所定のフォルダーとファイルが見つからない。ファイル名はWindows_7_Professional_x86-cl1-000002.vmdk です。
  • 動かそうとしているクローンVMはEドライブにあって、仮想ディスクファイル Windows_7_Professional_x86-cl2-000005.vmdk が上記のファイルに依存しています。

仮想ディスクファイルは(設定にもよるでしょうが)複数のファイルから構成されていて、「~-######.vmdk」のように6桁通し番号や「-s###」といった枝番が付けられています。上記のエラーメッセージには「000005が開けない」と書いてありますが、実際にはそれらの番号付き仮想ディスクファイルを束ねる、「番号なしの仮想ディスクファイル」に参照先が記載されているので、これを書き換えます。

この場合、下図の「Windows_7_Professional_x860cl2.vmdk」です。

f:id:frontline:20210125100216p:plain
番号無しの仮想ディスクファイルを特定する

このファイルをテキストエディターで開いて見ると、下記のような内容を見ることができます。

# Disk DescriptorFile
version=1
encoding="Shift_JIS"
CID=5352f6df
parentCID=87dc3b57
createType="twoGbMaxExtentSparse"
parentFileNameHint="C:\Users\(ユーザー名)\Documents\Virtual Machines\Win 7 Pro x86 VS2008\Windows_7_Professional_x86-cl1-000002.vmdk"
# Extent description
RW 4192256 SPARSE "Windows_7_Professional_x86-cl2-s001.vmdk"
RW 4192256 SPARSE "Windows_7_Professional_x86-cl2-s002.vmdk"
RW 4192256 SPARSE "Windows_7_Professional_x86-cl2-s003.vmdk"
RW 4192256 SPARSE "Windows_7_Professional_x86-cl2-s004.vmdk"
RW 4192256 SPARSE "Windows_7_Professional_x86-cl2-s005.vmdk"
RW 4192256 SPARSE "Windows_7_Professional_x86-cl2-s006.vmdk"
RW 4192256 SPARSE "Windows_7_Professional_x86-cl2-s007.vmdk"
(以下略)

もうおわかりかと思いますが、この設定「parentFileNameHint」のところのパスを、クローン元の親VMのパスに書き換えてファイルを保存すれば大丈夫です。この設定ファイルですが、行頭に#を書いておくとコメントになるようなので、不安であれば元の設定をコピーして#を付けてコメントアウトしておけば良いでしょう。

このあと、再度VMを起動すると私の環境ではもう一度同じエラーが出たのですが、もういっかい起動しなおすと無事起動しました(キャッシュか何かが効いているのでしょうか)。

以上、手作業が入りますがクローン先を移動した場合の設定変更方法です。

参考にしたリンク

そもそも仮想ディスク定義情報がテキストファイルだとは知らなかったので。下記リンク先のQAを読んで「書き換えられるのか!?」と気づきました。

communities.vmware.com