2018年6月20日水曜日

windows10 の更新エラーとコマンドプロンプトとWindows PowerShellの違い

しばらく使っていなかったWindows10のノートPCを起動したところ大量に更新が走った。

その中で、「Windows 10、バージョン 1803 の機能更新プログラム」がエラーになってしまい、正常に更新できない状態が続く。

その解決を探っている中で、Windowsのシェルスクリプトである「コマンドプロンプト」「Windows PowerShell」の違いで壁にぶつかったのでメモ。


■トラブル
・「Windows 10、バージョン 1803 の機能更新プログラム」をインストール→再起動したところ、起動中に「以前のバージョンのwindowsを復元しています」と出る。
・起動後に「設定」→「更新とセキュリティ」→「Windows Update」内の「更新の履歴を確認する」でみると、この「1803」正常にインストールされていないとエラーが。
☆エラーコードは「0xc1900130

■解決方法-やったこと
ネットで色々と確認したところ、この「0xc1900130」が出たときの対応として、
管理者権限のコマンドプロンプト で以下のコマンドを入力して、その後再起動、もう一度更新をインストールしてみるとあった。

◎コマンドプロンプトに入力するコマンド
SC config wuauserv start= auto
SC config bits start= auto
SC config cryptsvc start= auto
SC config trustedinstaller start= auto 


で、早速実験。
スタートメニューから、Windows PowerShell(管理者)を立ち上げて、上記のコマンドを入力してみると、エラーが!

赤文字で書かれているのは、
Set-Content : 引数 'start=' を受け入れる位置指定パラメーターが見つかりません。
発生場所 行:1 文字:1
+ SC config wuauserv start= auto
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidArgument: (:) [Set-Content]、ParameterBindingException
    + FullyQualifiedErrorId : PositionalParameterNotFound,Microsoft.PowerShell.Commands.SetContentCommand


うーん。
何がなんだか。

で、色々と考えていたら、「コマンドプロンプトで実行しろ」と書かれていたのに「Windows PowerShell」で実行していたことに気がつく。
※PowerShellのほうが上位互換という認識であったので。

コマンドプロンプトも確かWindows10に残ってたよね?と思い、 「スタートメニュー」→「Windowsシステムツール」を覗いてみたら、確かにそこには懐かしの「コマンドプロンプト」が。

で、立ち上げて「SC config wuauserv start= auto」を入力してみると、またエラーが。

これはあれです。権限です。
「管理者権限のコマンドプロンプト」で実行する必要があったのに、このコマンドプロンプトはどうも「管理者権限」ではないらしい。

で、またもやグーグル先生に確認。

するとありました。「コマンドプロンプト」を「管理者権限のコマンドプロンプト」にする方法。

コマンドプロンプトに以下を入力。
powershell start-process cmd -verb runas

すると、「管理者権限のコマンドプロンプト」が立ち上がることに。
その「管理者権限のコマンドプロンプト」で、

◎コマンドプロンプトに入力するコマンド
SC config wuauserv start= auto
SC config bits start= auto
SC config cryptsvc start= auto
SC config trustedinstaller start= auto 


を入力すると、無事に通った。

コマンドプロンプトとWindows PowerShellではPowerShellのほうが上位互換だと認識していて、コマンドプロンプトでできることはPowerShellでもできる、と思っていたところが盲点。
コマンドプロンプトに管理者権限モードがあることも初めて知った。

このあたりの情報を探り出すと、ものすごく高尚で高度で複雑な意見が飛び合う沼にはまるので、素人は遠くから結果だけみていたい。


■追記
肝心の「Windows 10、バージョン 1803 の機能更新プログラム」に関して。
上記のコマンドプロンプトのコマンドを実行後、PCを再起動、再度、最新の更新プログラムを検索→インストールしてみたところ、またエラーが!
今度のエラーコードは「0xc190011f」。

これに関してはネットの情報も少なく、しょうがないのでPCを再起動→再度更新を実行してみたところ、何故か今度はすんなりインストールできた。
なんなのだいったい。

ちなみにこの再更新を実行後の再起動には1時間くらい時間がかかった。
時間があるときだから良かったが、急ぎの時だったと思うとうんざりする。

とりあえずこれで様子見。






0 件のコメント :

コメントを投稿