してログ

このブログでは、主に技術系の話題やネット関連の話題を扱います。 ネーミングはまだしっくりいってないけど、「LANDHERE Web Site log」→「Site blog」→「Sitelog」→「してログ」、とりあえず。

こんなことで嬉しいなんて…
こんなことで嬉しいなんて…

ガーデンもいまいちだけど、ガーデンサファリはやってて苦痛なんですよね。もともと確率に一喜一憂するゲームだけど、出現方法や捕獲方法に工夫が必要だったりしてバランスが取れていたゲームだと思うんです。ガーデンサファリの「めずらしいいきもの」は完全に確率ゲームでしかなく、面白い要素が全くないのでここでリタイアするプレイヤーが続出しそうな気がします。

いま「スポーティのもと」が足りないので、キャンプ場に囲って瓶狙いです。椅子をこんな風に並べる(他の椅子やベッドは無くす)と一列に並んで回収しやすいです。

ガーデンアイテムは白チューリップまで来ました。最近気づきましたが、レア花の種から集めた方がレア度の低い種も同時に集まるので効率的です。ガーデンサファリがつまらないので早くこっちに戻りたいです。

NICは1個しか無いのだが…
NICは1個しか無いのだが…

VMware の仮想マシンで「入力されたIPアドレスは別のアダプタに既に割り当てられています」と表示され、ある固定IPが割り当てられない状態に陥ってしまいました。そのIPは以前使っていたのですが、VMware Server から ESXi へ仮想マシンを変換した際におかしくなったようです。状況的に考えて、前のバージョン VMware Tools のアダプタの設定が残っていて、表示されていないけど邪魔している感じがします。ちなみに「はい」で無視できそうですが、そううまく行きませんでした。

デバイスマネージャを弄っていると「非表示のデバイスの表示」という項目が見つかり、これで解決かと思いきやそうでも無かったみたいです。いくつか似たデバイス名が増えるのですが、それらは動作しているアダプタに関連したものらしいです。また、いったんアダプタを削除してみてもダメでした。

ネットで調べてみましたが「(非表示のデバイスの表示を)使用しても、その IP アドレスが割り当てられた以前の仮想 NIC(非実体化アダプタ)が常に表示されるとは限りません。」だそうで、解決には DevCon.exe というツールが必要になります。ただし現在、そのダウンロードリンクが切れており入手ができませんでした。新しめの Windows であれば、WDK というパッケージの中に入っています、がこれは古い Windows では動きません。しばらく探してみましたが、入手は叶いませんでした。

なお、完全な解決ではありませんが、今まで使っていたIPアドレスを欠番にして別のものを割り当てたり DHCP にすれば逃げれます。予防策としては、固定IPの仮想マシンを変換するときは一時的に DHCP に変更してから行い、変換後にもう一度固定IPを振りなおせば良さそうです。こうすれば、見えないアダプタは DHCP になるので、重複エラーが回避できると思われます。

追記

もう少し探してみたところ古い devcon.exe を発見しました。下記リンク先ページより、下の方にある「WDK 7.1.0 (Windows XP ドライバー用)」からダウンロードできます。Windows XP~7、Windows Server 2003~2008R2 に対応するバージョンになります。

インストールするのは「Microsoft Windows Driver Kit 7.1 > Full Development Environment > Tools」だけでよいです。32bit用の devcon.exe はインストール先の「.\Tools\devcon\i386」にあります。コマンドプロンプトで下記のように実行し、インストールされた非実体化ネットワークアダプタのデバイス名を見つけます。

devcon findall =net

動作しているアダプタは、GUI版デバイスマネージャの「プロパティ > 詳細」より確認できますので、これと違う側が非実体化アダプタということになります。デバイス名が分かったら、下記のように実行してこれを取り除きます。デバイス名はダブルクォーテーションで囲んで頭に「@」を付けてください。

devcon -r remove "@PCI\VEN_1022&DEV_2000&SUBSYS_20001022&REV_10\3&61AAA01&0&88"

これで以前のアダプタに振っていたIPが使えるようになったと思います。

これ
これ

Windows 2000 Server でログオン直後に「WINTRUST.dll が見つからなかったため、このアプリケーションを開始できませんでした。アプリケーションをインストールし直すことこの問題は解決される場合があります。」というエラーが表示され、シェル(エクスプローラ)が起動せず、何も表示されないデスクトップしか出てきません。

だいぶ古いサーバーで直前にHDDの調子が悪かったので、運悪く重要なファイルが壊れてしまったんだと思います。さほど重要なサーバーではなく、ネットワーク上では正常に動いているように見えたので、今まで気づきませんでした。修復インストールすれば回復するかも知れませんが、今回は取り外すことにします。

設定やデータの吸い上げをするのに、リモートからも実機からもログオンできないので、しばらく悩みましたが、Ctrl + Alt + Del でタスクマネージャが開くことに気づきました。タスクマネージャの「新しいタスク」から任意のプログラムを呼び出せるので、コマンドプロンプト(cmd)を起動できます。これで、ダメージを受けていないファイルを特定したり、管理ツールを立ち上げて設定を確認したり、なんとか GUI なしでも思う通りの操作が可能になりました。

教訓。サーバーというものは、物理的にも見てあげないとダメなものですね。

ときどきPCが重くなって再起動を強いられるようになっていたのですが、ようやく原因が分かりました。検索しても特に同様な症状は見つからないけど、ずばり「Realtek HD オーディオマネージャ」コイツです。

スタートアップから外したいけどレジストリ弄らないとだめか~。無くても音出ないとかは無いんだけどね。

60~70%もCPU使用率を占有している
60~70%もCPU使用率を占有している
強制終了させると一気に下がる
強制終了させると一気に下がる

サーバー専用機も安くなってきたとは言え、壊れたときパーツの換えが利かなかったり、前の世代のECCメモリなど割高で入手し辛くなりがちです。そこで今回は普通の自作PCにセットアップしてみたいと思います。

なお、この情報は試行錯誤しながらうまく行った部分のみのメモレベルであり、重要な試行作業が抜けていてこの通りにやってもうまく行く保証はありません。試してみる場合は失敗しても取り返しがつくような環境にした方が良いと思います。

ネットワークアダプタの非対応に注意

マザーボードに搭載されているネットワークアダプタが Windows Server 2016 で対応しているかどうかが問題です。マザーボードの仕様からベンダーを特定し、スペックシートなどを検索して調べることになります。ちなみに今回は、H110M-A/M.2 に搭載の Intel I219V というアダプタでした。

はい。という訳で見事にサポートされておりませんでした。Intel 製だったらたぶん大丈夫だろう、という甘い考えで選んだのですがそううまく行かないもんです。対応した拡張LANカードは1万円もしませんが、今回は以下の情報を元に無理矢理動作させてみました。

ハードウェアRAIDは高くつく?

サーバー機なのでRAID0構成としたいところですが、安いアダプタだと Windows Server 2016 に対応しないと思います。かと言って、Adaptec や LSI のサポートしてるお高いやつにしたら本末転倒もいいところです。だとすれば、ソフトウェアRAIDという話しになりますが、Windows だとシステムボリュームで組むのに注意点があります。

システムボリュームでソフトウェアRAIDを組む

単にミラーリングしたいだけなら、ダイナミックディスクに変換し、ミラーボリュームを追加すれば良いと思います。しかし、これだとブートパーテーションのあるディスクが壊れた場合に起動不能になります。ミラーボリュームのあるディスクにも、diskpart コマンドを使ってブートパーテーションをコピーしておけば良いのですが、手順が若干面倒です。そこで今回は、USBメモリに入れた Ubuntu をライブ起動して dd コマンドによりミラーディスクを作ることにしました。

  1. 公式日本語チーム ubuntu のISOイメージを準備します
  2. こちらのサイトからUSBメモリに書き込むツール Universal USB Installer を準備します
  3. これらを使って起動可能なUSBメモリを作成します
  4. サーバー機は、同じ容量のHDDを2本搭載し、Windows Server 2016 をインストールしておきます
  5. サーバー機の準備ができたら、USBメモリを使って ubuntu を起動します(電源投入直後に F8 を、ぽんぽんぽんっと押し続けているとブートメニューが出ますので、USBメモリを選んで起動します)
  6. ubuntu が起動したら、terminal を開きます(左上のサーチアイコンで「ter」と入れれば見つかります)
  7. fdisk コマンドにてディスクのラベルを確認します
  8. dd コマンドにてディスクをコピーします(ブートパーテーションが終わったら強制終了)
  9. Windows Server 2016 を起動し、システムボリュームにミラーボリュームを追加します
  10. ミラーボリュームのリビルドが終われば完成です
fdisk の操作
sudo fdisk -l

SATA なら sda や sdb になっていると思いますが、コピー元がどっちなの確認する必要があります。Windows Recovery なんとか、とか Microsoft LDM data などがリストされている方がコピー元になります。新しくインストールしている場合は、間違えてもやり直せばいいだけですが、そうでない場合、取り違えには十分注意してください。なお、ディスクの容量の数値を確認しておくと、進捗でいつ終了するのか推定しやすいです(単位の計算で1024か1000かいつも悩む)。

dd の操作
sudo dd if=/dev/sda of=/dev/sdb bs=32M

間違えないように if にコピー元、of にコピー先のディスクを指定します。適切なブロックサイズ(bs=32M)の値はわかりませんが、デフォルトだと時間が掛かったかと思いますので大きめの値にしておきます。この設定で私の環境では 200MB/s の速度(1時間で 0.6TB 程度)が出ました。最初の起動パーテーションが終わった頃合いで強制終了させ、不完全なシステムボリュームは Windows 側で作り直したほうが無駄が無いと思います(どうせRAID組むときにリビルドされるしね)。

進捗の確認方法
sudo watch -n 10 pkill -USR1 dd

もうひとつ Terminal を開き、上記コマンドを実行させると10秒ごとに進捗を表示させることができます。コピー済みの容量、経過時間、転送速度が表示されるので、だいたいの終了時間も計算できます。ちなみに、容量のところで TB と TiB がありますが、テラバイト(1012バイト)とテビバイト(240バイト)を表す単位です。

ミラーボリュームの構成

コピーが終わって、Windows Server 2016 を起動したらディスクの管理を確認します。コピー先のディスクが「不足」や「オフライン」になっていましたので、再アクティブ化などやってベーシックディスクにしました。このとき「すべて消えます」的なメッセージが出るがブートパーテーションは消えないのでそのまま実行します。ディスクをオンラインにできたら「回復パーテーション」と「EFIシステムパーテーション」が見えると思います。残りの領域は「未割り当て」となっているので、そのままコピー元のディスクのシステムボリュームから「ミラーの追加」をします。追加先ディスクを選んで進めると、「再同期中」という表示になり、しばらくする(けっこう待つ)と進捗率が表示されました。

進捗率が表示されるまで結構時間が掛かる
進捗率が表示されるまで結構時間が掛かる
ディスク障害の試験

システムボリュームのミラー構成ができたので、実際にディスク障害を想定した試験を行ってみます。

まず、プライマリのSATAケーブルを抜いた状態で起動させてみました。何事も無く Windows ブートマネージャが立ち上がり、普通に起動することを確認できました。ディスク管理を覗くと当然、外した方のディスクは「不足」となっています。

2つに分かれてて想像と違う
2つに分かれてて想像と違う

実際の場合は新しいHDDに起動パーテーションをコピーし直すところですが、それは省いて外したHDDを繋げてみます。しかし、起動しても復旧せず、論理的なディスクとしてバラバラに表示されるだけでした。

構成が復元し再同期開始されるのを期待したが…
構成が復元し再同期開始されるのを期待したが…

再同期は免れなくてもミラー構成は復元されると踏んでいましたが、色々操作してみても無駄でした。いったんベーシックディスクに戻してから、ダイナミックディスクにします(当然システムパーテーションは消えます)。「不足」になっていたミラーボリュームは、ミラーを解いて削除します。

いちどミラーを解いた状態
いちどミラーを解いた状態

ここまで来たら、最初のときと同様にミラーボリュームを構成してあげれば復旧完了です。ハードウェアのRAIDと比べると復旧の手間は掛かりますが、いちど練習しておけばいざという時にも何とかなるレベルだと思います。

最後に

問題なく Windows Server 2016 を普通のPCに入れることができました。デバイスマネージャを見るとまだ認識できてないデバイスがありますが、サーバーとして使う分にはいらないものばかりなのでそのままにします。ただ、これらのドライバもLANアダプタと同様な方法で動かせるかも知れません。

青いチューリップ
青いチューリップ
紫のパンジー
紫のパンジー

交配でできるレアな品種が2つ咲きました。青いチューリップは、白と交配させるとかなりの高確率で青が出ます。なのでうちのガーデンに来てくれれば簡単に増やせます。紫のパンジーはどの組み合わせがいいか実験中です。

なかなか咲かせられない人は、ID「9057 7991 438」を書いておきますので、友達申請してください。とび森みたく絶望的な確率じゃないので、気長に自分で交配するのも楽しいと思いますが。