スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

unattend.xml:Vistaで Windows Update 失敗の原因解明

T61pでの SSDのセットアップに時間がかかってしまいました。
Windows Update がうまくいかなかったからですが、ようやく一応の解決ができました。

Windows Update では、実に20個以上の項目のアップデートに失敗してしまい、原因を調査するのに非常に時間がかかりました。
Ultimate,Business を何度か再インストールを行い、30日間の猶予があるのに、アクティベーションをしてもみましたが、症状が変わりません。

WindowsUpdateFail.gif



Windows Update の失敗を調査するには、更新履歴の表示を行って、失敗している項目を一つ一つ右クリックして、エラーコードを確認します。

そしてエラーコードが 800f0826 以外のものを探さなくてはなりません。
エラーの原因が 800f0826 では、エラーの原因が特定できないのだそうです。

見つけたのは、『Windows Vista 用の更新プログラム (KB939159)』。
エラーコード 80070003 で失敗。これが原因で、他のアップデートも失敗するようです。

Windows Updateのヘルプによると 80070003 エラーを回避するには、Windows Update を一時停止し、一時更新ファイルを削除し、Windows Update を再起動する必要があるそうです。

『管理ツール』の『サービス』からWindows Updateを停止して、

一時ファイル

C:\Windows\SoftwareDistribution\DataStore
C:\Windows\SoftwareDistribution\Download


をすべて削除してから、Windows Update を再起動してやってみました。

しかしこれでは直りませんでした。


いろいろと検索してみると、SSDの問題ではなく、unattend.xmlを使って、userprofileやprogramdataをD:ドライブにおいたことに関連性があるようです。

試しに、Windows6.0-KB939159-x86.msu を手動でインストールしたところ、問題なくインストールできます。
どうも、Windows Updateのバグっぽいですね。



◇解決編

80070003 は Path Not Found エラーらしいので、次のようにしてみました。

・Vistaをクリーンインストール
・コマンドプロンプトを管理者として実行して
 mklink /J c:\users d:\users
 mklink /J c:\programData d:\programData


としてから、Windows Updateを行うと、うまくいきました。


追伸:
なお、mklink コマンドを使わずにセットアップしていた時の話ですが、D:ProgramDataが設定されているにもかかわらず、C:ProgramDataを勝手に作成するお行儀のよろしくないプログラムがあったようです。C:ProgramData配下のフォルダ名はMicrosoftとなっていました。

comment



Re

> D:ProgramDataが設定されているにもかかわらず、C:ProgramDataを勝手に作成するお行儀のよろしくないプログラムがあったようです。
ひでぇ~。私のところは現在 SP1 RC 検証中なので問題になっていませんね。
そういえば、"C:Documents and Settings" の junction 参照先間違っているので、直しておいた方がよいかと。

No title

ども、ありがとうございます。
>そういえば、"C:Documents and Settings" の junction 参照先間違っているので、直しておいた方がよいかと。
Dir /ad で確認すると、ほんとだ。ダメでした。
さて、
c:\ProgramDataを勝手に作成していた犯人を確認するのを忘れましたが、その時入れていたのは、Vista,Office 2007 Enterprise,Visual Studio 2008, MSDN,VSS 2005なので、このいずれかに絞られると思います。あとD:\ProgramData\Microsoft もしっかりありました。
ほかに Lenovo,Intel などは お行儀よく、D:\ProgramDataにフォルダを作成していました。

No title

Lenovo ねぇ。System update %PROGRAMFILES% に保存させるんですよ。
ACL を変更しているので動作に支障はないんですが、あんまり好ましくないですね。
なぜ %PROGRAMDATA% 使わない?

SYSTEM UPDATE の作業ディレクトリ

C:\Program Files\Lenovo\System Update\session ですね。さっきHDDのシステムに戻してみましたが、800Mほど消費してますねぇ。

管理人のみ閲覧できます

このコメントは管理人のみ閲覧できます
Secret

[PR] ヤフーオークション




trackback



本文中に言及リンクの無いトラックバックを受け付けない設定です。

プロフィール
スポンサー
最近の更新
リンク
問い合わせ
管理人への問い合わせはこちらから
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。