Technically Impossible

Lets look at the weak link in your statement. Anything "Technically Impossible" basically means we haven't figured out how yet.

Intel RST導入済みPCへのWindows 10 May 2019 Update (Windows 10 1903)更新がブロックされるーその強硬的解決

f:id:espio999:20190728114143p:plain
Intel RST (Rapid Storage Technology)という技術がある。RAIDIntel Optaneをはじめとする、ストレージを最適化運用するための技術、それらのドライバを提供するものだ。
特定バージョンのIntel RSTが導入されている場合、Windows UpdateによるWindows 10 May 2019 Update (Windows 10 1903)への更新がブロックされるという障害がある。これは比較的新しい障害で、Microsoftサイトでの最終更新日は、2019年7月26日だ。Microsoftによると15.3.2.1054以降のバージョンでは問題がなく、15.9.6.1044を推奨するとしている。現時点での、Intel RST最新版は17.5.1.1021だ。

Updating to Windows 10, version 1903 on devices with certain versions of Intel® Rapid Storage Technology (Intel® RST) drivers

Intel社サイトでは、最新版もMicrosoft推奨バージョンのどちらも配布している。
インテル® ラピッド・ストレージ・テクノロジー
Intel® Rapid Storage Technology (Intel® RST) User Interface and Driver Version: 15.9.6.1044
Intel® Rapid Storage Technology (Intel® RST) User Interface and Driver Version: 17.5.1.1021

Windows 10 1903への更新を検討しているPCにIntel RSTが導入されていたとする。それが推奨バージョンよりも古ければ更新する、あるいは一時的にでも、Intel RSTをアンインストールする必要がある。とはいえ、それでもWindows 10 1903への更新はブロックされてしまうことがある。ブロック時に表示されるのがトップ画像だ。

同様の問題は海外のフォーラム・サイトなどで散見されるのだが、いずれも解決には至っていないようだ。どのページにも具体的な手順が示されていない。この投稿では、リスクを伴う強硬手段も含めて、Intel RSTが導入されている環境でのWindows 10 1903更新手続きを紹介する。

ここで紹介する手順では、Windows 10 1903を導入するため、一時的にIntel RSTを削除することになる。これはWndows 10 1903導入後に改めてインストールしなおすのだが、導入作業中には、Intel RSTを動作させない。そのため個別ストレージ、RAID構成の場合、一時的に標準ドライバで運用することになる。また、Intel Optaneを用いたハイブリッド構成では、ハイブリッド構成を解除する必要があるかもしれない。
これらの前提に支障がある場合、ここで紹介する手順は通用しない。

手順

Windows 10 1903の更新までには、次の手順を辿る。5の更新でも障害が解決しない場合、この投稿では手詰まりとなる。改善の手立てが見つからないため、更新を諦めるしかない。Windows Updateによる更新を中止し、現状維持で利用することになる。

失敗の場合 成功の場合
Windows Updateからの更新 2へ 6へ
Intel RSTのアンインストール
Windows Updateからの更新 4へ 6へ
強硬手段
Windows Updateからの更新 手詰まり 6へ
Windows 10 1903へのIntel RSTインストール

Intel RSTのアンインストール

まず導入しているIntel RSTのバージョンを確認する。推奨バージョン未満であれば、まず推奨バージョン、あるいは最新版をインストールした上で、Windows Updateから更新してみてほしい。ここでブロックされることがなければ、この投稿を読み進める必要はない。
ブロックされる場合、Intel RSTをアンインストールする。アンインストールはコントロールパネル、あるいは[設定]ー[アプリと機能]から行う。もしIntel Optane関連の機能も導入されているならば、あわせてアンインストールする。
環境に依存する問題を、念のため申し添えておく。アンインストール対象として一覧されるアプリケーションの内、特にIntel関連製品は「Intel」で始まるものと、「インテル」で始まるものがある。削除対象を見落とさないように。
アンインストール後、PCを再起動する。Intel RSTにはSATA AHCIコントローラなど、ドライバとして動作するものが含まれている。ここでの再起動は、これらのドライバ読み込みを解除するためだ。再起動後に、再びWindows Updateからの更新を行う。
これまでIntel RSTに含まれるドライバで稼働していたストレージは、標準ドライバでの運用に切り替えられる。

強硬手段

ここで紹介しているのは簡単な操作ではあるものの、PCの動作が不安定になるなどのリスクを伴う。このリスクを念頭に対応してほしい。

Intel RSTをアンインストールしても更新がブロックされる場合、次の2つが原因として考えられる。

  1. Intel RSTがまだ稼働している。
  2. Intel RSTは稼働していないが、それに関連する何かを、Windows 10 1903の更新プログラムが検知している。

まず1の可能性を考えるため、稼働中のドライバを確認する。そのためにDriverViewを用いる。これは稼働中のドライバを一覧表示してくれるフリーウェアだ。次のサイトからダウンロードできる。
www.nirsoft.net

ダウンロードしたファイルを解凍し、EXEファイルを実行する。Driver Nameでソートし、iaStorで始まるドライバを探す。具体的には次のドライバだ。どれか一つでも表示されていれば、Intel RSTはまだ稼働中だ。

  • iaStorA.sys
  • iaStorAC.sys
  • iaStorAVC.sys
  • iaStorV.sys

ここでIntel RSTの稼働を止めると同時に、2の可能性も考える。結局のところ、Windows 10 1903更新プログラムが、これらのファイルを見つけることができなければよいのではないか?ということだ。そこで、これらのファイルをシステム・フォルダから退避させることにする。退避先はUSBドライブなどだ。これらのファイルは次のフォルダに格納されている。対象ファイルを退避先へコピーしたら、このフォルダ中の対象ファイルは削除する。

C:\Windows\System32\drivers

削除後、PCを再起動する。起動後、DriverViewを再確認し、対象ファイルが表示されていないことを確認する。
ここまで対応したら、改めてWindows Updateからの更新を行う。

Windows Update動作中、再起動後のスタック、停滞、

環境に依存するとはいえ、大規模アップデートは完了までに数時間を要することがある。Windows 10 1903の導入でもその事情は変わらない。進捗が特定の%に達したところで、一見停止しているかのごとく長時間、停滞することがある。私の場合、インストール中:94%で停滞を経験した。
進捗度合いが更新されていないだけで、更新作業が継続しているのか、あるいは失敗しているのかを見分ける方法はない。念のため、次の事柄を確認しておくと良い。

ストレージ空き容量 特にシステム・ドライブについて16~32GBの空き容量が必要と言われている。
サード・パーティのセキュリティ・ツール 更新作業中は停止するか、アンインストールする。
USB接続機器1 更新作業に必要、最低限の機器のみ接続する。例えばUSBメモリスマートフォンタブレットなどは外す。
USB接続機器2 先の話題に関連し、PC本体以外のUSBにも機器が接続されていないか、確認する。例えばモニタに付属のUSB端子だ。接続されていれば、機器を外す。

また、インストール完了後の再起動中、「電源を切らないでください」と表示されている状態でも、同様の停滞が発生する。私の場合、27%で停滞を経験した。この状態では、正直なところ、待つ以外の手立てがない。私は諦めて、PCはそのままに就寝した。
その後、PCは必要な作業を終え、スリープを経てから休止状態へ移行したようだ。起床後、キーボードを叩いたら、PCは無事に復帰した。

Intel RSTの再導入

Windows 10 1903への移行が完了したら、改めてIntel RSTを導入する。Microsoftの推奨は15.9.6.1044だが、私は最新版をインストールした。
インストール完了後、PCを再起動し、次のフォルダを確認する。

C:\Windows\System32\drivers

私の環境では、次の3ファイルが復帰していた。

  • iaStorAC.sys
  • iaStorAVC.sys
  • iaStorV.sys

あらかじめ退避しておいたiaStorファイル群とは異なる組み合わせだが、更新後の環境が支障なく動作している限り、このままで運用する。退避しておいたファイル群を元に戻すことは「しない」。