Translate

ラベル Windows の投稿を表示しています。 すべての投稿を表示
ラベル Windows の投稿を表示しています。 すべての投稿を表示

2017年12月18日月曜日

GPOを使ったWindows10の管理について

 グループポリシーを使ってWindows 10を管理する際に注意する点について、現在わかっている範囲の注意点を記録します。

 Windows 7までのクライアントPCをGPOで管理していて、そのままWindows 10の管理に移行すると問題が発生することがあります。
 それらの項目とその影響について簡単にまとめています。同じく悩んでいる人の参考になれば幸いです。

影響のあるGPOの項目

  • 一時記憶された移動プロファイルのコピーを削除する
  • インターネット上のWindows Updateに接続しない
  • イントラネットのMicrosoft更新サービスの保存場所にある署名済み更新を許可する

■一時記憶された移動プロファイルのコピーを削除する

 移動プロファイルを使っているコンピュータでユーザーがログオフした際に、ローカルPCからプロファイルの情報を削除します。
 セキュリティのことを考えてクライアントPCに個人情報を残さないように、この項目を設定しているとはまることが多いです。

場所

コンピュータの構成 > ポリシー > 管理用テンプレート > Windowsコンポーネント > Windows Update

英語表記

Delete cached copies of roaming profiles

影響

  • Windowsストアが使えない
  • ストアアプリが使えない
  • ログインするたびにスタートメニューが初期化され、インストールしたアプリケーションのショートカットが消える

■インターネット上のWindows Updateに接続しない

 WSUSを使っていると下手にWindows Update上から更新プログラムをダウンロードされないように制限をかけることが多い項目と思われます。
 WSUSの製品と分類の説明を見ていると"Windows 10 Feature On Demand"が「オプション機能」に該当するというように説明されていますが、英文の別の記事内の説明ではWSUSはこの項目をサポートしていないと説明されています。

場所

コンピュータの構成 > ポリシー > 管理用テンプレート > システム > ユーザー プロファイル

英語表記

Do not connect to any Windows Update Internet locations

影響

  • アプリと機能内のオプション機能の管理で機能の追加できない
  • 開発者モードに変更できない

■イントラネットのMicrosoft更新サービスの保存場所にある署名済み更新を許可する

 WSUSを使っているとクライアントPCはイントラネット上のサーバから更新プログラムをダウンロードするため、この設定が必要かと思っていたら大間違いでした。
 この項目を有効にしていると署名が一致しないためダウンロードしたファイルが破棄されWindows Updateが失敗します。
 ちなみにWindows7までは問題なく成功するため原因がわかりにくいです。

場所

コンピュータの構成 > ポリシー > 管理用テンプレート > Windowsコンポーネント > Windows Update

英語表記

Allow signed updates from an intranet Microsoft update service location

影響

  • Windows Updateの更新プログラムのダウンロードに失敗する

2017年8月8日火曜日

Windows Updateが失敗する問題の対処法

 Windowsの機能拡張やセキュリティ更新などシステム管理には必須のWindows Updateですが、ごくまれに更新中に失敗すると何度やっても更新できなくなることがあります。
 これまでのMSP(個別の更新プログラム)なら、Microsoftカタログから更新プログラムをダウンロードしてきて手動で更新したり、DISMを使ってクリーンナップすることで大体問題が解決するのですが、最近良くWindows Updateで見かける「品質ロールアップ」は若干事情が違うようです。

■対処法

 Windowsの更新プログラムは通常MSPファイルが使用されますが、品質ロールアップではMSUファイルが使用されます。
 MSPファイルによる更新の場合は「DISM」を使ってから、再度Windows Updateを実行したり手動で更新プログラムをインストールすることで大体の問題が解決します。
 MSUファイルによる更新の場合は「システム更新準備ツール」を使って解決させます。

■DISMを使う

 更新プログラムがMSPファイルだった場合、DISMを使ってクリーンナップをした後にWindows Updateを再実行します。もしくは、手動で更新プログラムをインストールする方法もあります。
  1. コマンドプロンプトを起動する
  2. 管理者権限を使ってコマンドプロンプトを起動します。
  3. DISMを実行する
  4. DISM.exe /Online /Cleanup-image /Restorehealth
    
  5. SFCを実行する
  6. sfc /scannow
    
  7. 再度Windows Updateを実行
  8. 再度Windows Updateを実行します。もしくは、Microsoft Update カタログから更新プログラムをダウンロードして手動でインストールします。

■システム更新準備ツールを使う

 更新プログラムがMSUファイルだった場合、システム更新準備ツールを使って問題を解決します。
  1. システム更新準備ツールをインストール
  2. システム更新準備ツールをダウンロードしてインストールします。
  3. 更新プログラムのダウンロード
  4. Microsoft Update カタログから問題のある更新プログラム(*.msu)をダウンロードする。
  5. ファイルをコピーする
  6. 「%SYSTEMROOT%\CheckSUR\packages」ディレクトリを作成し、そこに更新プログラムをコピーします。
  7. システム更新準備ツールを実行する
  8. システム更新準備ツールを実行します。

※注意

 ここでの説明はかなり省略している部分があります。例えば、システム更新準備ツールを使った出順の場合、作業1の前に問題のある更新プログラムを特定する作業があります。
 上手くいかない場合は下記の参考資料をご覧ください。

■参考資料


MSPファイルとは

 MSI(Windows Installer)でインストールされたプログラムの一部もしくは全ての設定やファイルを、修正または更新されたものに書き換えるためのパッケージです。通常「修正プログラム」や「更新プログラム」などと呼ばれています。

MSUファイルとは

 簡単に説明すると複数の更新プログラムをひとつのファイルにまとめたもので、Windows Updateスタンドアロン インストーラーというプログラムに関連付けられています。
 詳しくはこちらをご覧ください。

Microsoft Update カタログ

Microsoft Update カタログを使うと、Windows Updateの更新プログラムをダウンロードして手動でインストールする事ができます。更新プログラムには通常「KB○○」という番号が振られていますので、これを使って検索することが出来ます。ちなみにKBは「Knowledge Base」の略です。

2017年8月1日火曜日

PowerShellを使って特定のプログラムがインストールされているPCを調べる

 多数のPCを管理しているとどのPCにどのプログラムがインストールされているか把握しきれなくなってきます。記録を残して管理をしていても、記入漏れが発生したり、ユーザー自身がインストールしていることも・・・。
 そこで今回はPowerShellを使って、特定のプログラムがインストールされているPCからメールを送信する方法について説明します。
 FlashPlayerなんて勝手にインストールされるくせに、アップデートされずセキュリティホールだらけの古いバージョンが放置されるなんて日常茶飯事なので・・・。

PowerShellのスクリプトファイルを作る

 適当なファイル名、例えば「CheckProgram.ps1」などでスクリプトファイルを作成します。

CheckProgram.ps1の内容

Param(
[string]$program
)

$value = (Get-WmiObject -Class Win32_Product | Select-Object Name, Version | Select-String $program)

if ($value -ne $null) {
    $subject = $program + "が検出されました。"
    $computer = $env:COMPUTERNAME
    $encoding = [System.Text.Encoding]::UTF8
    $body = "Computer: " + $computer + "`r`n" + $value

    Send-MailMessage -to "to@example.com" -from "from@example.com" -subject $subject -body $body -encoding $encoding -SmtpServer "mail.example.com"
}
 プログラムの名称に引数「-program」で指定した文字列を含む場合、そのコンピュータ名とプログラム名、バージョンが「to@example.com」にメールが送られるようになります。
 Send-MailMessageの引数「-to」「-from」「-SmtpServer」は適所変更してください。

GPOでタスクスケジュールに登録する

 上で作成したスクリプトをタスクスケジュールで実行させます。トリガーの設定は適当に設定してください。
 新しく操作を追加し、操作には「プログラムの開始」、「プログラム/スクリプト」「引数の追加(オプション)」には下記の内容を設定します。

プログラム/スクリプト

powershell

引数の追加(オプション)

-NoProfile -ExecutionPolicy Bypass "\\example\scripts\CheckProgram.ps1" -program "Flash Player"
"\\example\scripts\CheckProgram.ps1"はスクリプトを保存したフルパスを指定します。
引数「-program」の後ろ("Flash Player")を変えることで別のプログラムの監視も出来ます。

2013年5月9日木曜日

Windows7のショートカットの名前が~(2)になる

 スタートメニューやタスクバーにショートカットを登録する機能は、常に使うアプリケーションが同じ場所に表示されるので非常に便利で使いやすいです。
 筆者もシステム管理をする関係で非常に多くの種類のアプリケーションを使うので、タスクバーに15個程、スタートメニューに10個程を登録しています。 非常に便利な機能なのですがごくまれに問題を起こします。

 それが今回紹介するショートカットの名前になぜか「(2)」が追加されます。中の数字は3以上になることもあるようです。

■症状

 ユーザーが登録したスタートメニューやタスクメニューのショートカット名に「(2)」が追記される。たとえば「メモ帳」の場合、「メモ帳(2)」となる。

■原因

 同じ名前のショートカットが2つ以上登録されると、名前が重複しないようにショートカット名の後ろに自動的に「(2)」「(3)」…といった具合で数字が追記されるようになっています。
 何らかの原因でショートカットが表示されなくなり、さらにショートカットを登録すると上記のルールにのっとって「(2)」が追記されます。
 ちなみに、ショートカットが表示されなくなる原因については不明です。自宅のPCでは発生したことがないことから、ドメインがらみのリダイレクションなどが関係している可能性があります。

■解決方法

 解決方法は次の場所から表示されなくなったショートカットを削除して、ショートカットを再登録することで解決します。
 登録されている場所は、WindowsXPでクイックメニューのショートカットが登録されていたところに近いですが、また仕様が変更されているようです。

スタートメニューのショートカットの場所

%AppData%\Microsoft\Internet Explorer\Quick Launch\User Pinned\StartMenu

タスクバーのショートカット場所

%AppData%\Microsoft\Internet Explorer\Quick Launch\User Pinned\TaskBar
  1. ショートカットが保存されている場所をエクスプローラで開く
    上記の場所をエクスプローラにコピー・ペーストすると簡単です
  2. スタートメニューやタスクバーに表示されないショートカットを選択して削除する
  3. スタートメニューからショートカットを再作成する

2013年2月25日月曜日

Adobe Readerをグループポリシーを使ってクライアントに一斉配布する方法

 社内のシステム管理をしているとクライアントのアプリケーションの更新に頭を悩ませることが多くなります。特にPCの台数が10台未満であればそれほど問題にならないのですが、ある程度まとまった台数になってくると特に更新頻度の高いソフトウェアでは非常に多くの時間が浪費されてしまいます。

 そこでWindows Serverを利用しているとグループポリシーを使って、インストーラ(MSIファイル)を自動的にすべてのクライアントに割り当てる方法について説明します。
 また、Adobe Readerの更新のようにmspファイルで配布される場合、グループポリシーのソフトウェア インストールでは更新できません。そこでスタートアップスクリプトを使用して更新する方法についても説明します。

■手順

  1. 再配布可能なAdobe Readerのインストーラを入手する
  2. インストーラからMSIファイルを抽出する
  3. グループポリシー「ソフトウェア インストール」に登録する
  4. グループポリシー「シャットダウン スクリプト」に登録する
  5. Windows XPの対策

■説明

設定手順は次の通りです。

1. 再配布可能なAdobe Readerのインストーラを入手する

 Adobe Readerを一斉配布するには、次のサイトから申し込みをして再配布可能なAdobe Readerを取得手に入れる必要があります。

2. インストーラからMSIファイルを抽出する

 AdobeのサイトからダウンロードしたインストーラファイルはEXE形式のため、そのままではグループポリシーで利用することができません。
 Adobe ReaderのインストーラからMSIファイルを取り出す必要があります。
  • インストーラファイルに”-nos_ne”のオプションをつけて実行する
  • 実行後、WindowsVista/7の場合「%ProgramData%\Adobe\Setup」に、WindowsXPの場合「%ALLUSERSPROFILE%\Application Data\Adobe\Setup」に保存されている、「AcroRead.msi」ファイルと「Data1.cab」ファイルを取り出す。
詳しい説明は次のサイトを確認してください。
Adobe Reader のMSI インストーラーを企業内配布用に抽出する

3. グループポリシー「ソフトウェア インストール」に登録する

 ドメインに参加しているクライアントのシステムがアクセスできる共有フォルダ(たとえば「\\ドメイン名\SYSVOL\...」など)に抽出したファイルを保存する。
 ドメインポリシーの「コンピュータの構成 → ポリシー → ソフトウェアの設定 → ソフトウェア インストール」を開き、メニューの「操作 → 新規作成 → パッケージ」から登録を行います。

4. グループポリシー「シャットダウン スクリプト」に登録する

 mspファイルに関してはソフトウェア インストール ポリシーが利用できないため、グループポリシーのスクリプトを利用します。
 また、スタートアップ スクリプトを使用しても同じことが実現できますが、PCが使用できるまでに時間がかかるため、ここではシャットダウン スクリプトを利用した例を説明します。
 ドメインポリシーの「コンピュータの構成 → ポリシー → Windowsの設定 → スクリプト → シャットダウン」を開きスクリプトを追加する。
 実行するファイルは「msiexec.exe」でパラメータには「/p "ファイル名.msp" /qn」という形で入力します。
 今回の例では次のようになります。
スクリプト名: msiexec.exe
パラメータ: /p "\\domain\SYSVOL\domain\scripts\Acrobat\AdbeRdrUpd11001.msp" /qn
スクリプト名: msiexec.exe
パラメータ: /p "\\domain\SYSVOL\domain\scripts\Acrobat\AdbeRdrSecUpd11002.msp" /qn

 5. Windows XPの対策

 これらのポリシーをWindows XPに適用しようとすると、インストールが実行されないことがあります。この場合Windows XPにパッチを適用する必要があります。
WindowsXPにWindowsServer2008のグループポリシーを適用する

2013/5/28 次の内容を修正しました

  • スクリプトを「スタートアップ」から「シャットダウン」に変更し、合わせて挿絵を変更しました。
  • 手順4のスクリプトのパラメータから「reinstall=all reinstallmode=vomus」を削除しました。

Windows XPにWindows Server 2008のグループポリシーを適用する

 Windows Server 2008以降のドメイン環境でWindows XPクライアントを使用していると、一部のグループポリシーが適用されないことがあります。
 適用されないポリシーの中には次のようなものがあり、ほかにもいろいろとあるとは思いますが利用するとかなり便利なものも含まれています。

適用されないものの例

  • ネットワークドライブの割り当て
  • ソフトウェア インストールの割り当て
  • など

■説明

  これらのグループポリシーはWindows Server 2008になってから追加されたもので、Windows XP発売時点では含まれていなかったポリシーです。これらのポリシーをWindows XP上ででも正しく機能させるためのパッチがMicrosoftから提供されています。
 このパッチをWindows XPに適用することでWindows Vista以降と同じようにポリシーを適用することができます。

 WindowsXPのサポート終了が1年ちょっとという時期になって今更ではありますが・・・

2012年12月7日金曜日

64bit版WindowsとODBC

 64bit版Windowsで32bitのアプリケーションを動作させようと思うと、WOW64と云う機能が用意されているため思いのほかすんなりと動作してくれます。 ただし、ODBCやActiveXなどを利用しているとやや問題が出てくるようです。
 ここではODBCを使っている場合に生じる問題に関する解決方法について説明します。

症状

 ODBCを利用しているアプリケーションで、DSNの設定を正しく行っているにもかかわらず「データ ソース名および指定された既定のドライバーが見つかりません」といったエラーメッセージが表示される。

原因

 64bit版Windows上ではODBCのドライバにも、64bitと32bitの両方が用意されているために起こります。

説明

 64bit版Windowsで32bitアプリケーションを動作させると、WOW64が自動的にアプリケーションを64bitにエミュレートして、アプリケーション側には意識させること無く動作させることができます。ただし、このときODBCやActiveXなどの外部モジュールに関しては32bit版が利用されます。
 コントロールパネルのODBCアドミニストレータでDSNを設定した場合、通常64bit版のODBCの設定が開かれます。このため、ODBCアドミニストレータでDSNを設定していても、いざアプリケーションを起動すると「データ ソース名および指定された既定のドライバーが見つかりません」といったエラーメッセージが表示されます。

対処方法

 次のファイルから32bit版のODBCアドミニストレータを起動して、DSNの設定を行います。
%windir%\syswow64\odbcad32.exe

参考資料

Microsoft - KB942976

2012年11月2日金曜日

Windows7でアプリケーションが「応答なし」になる

 ドメイン環境でWindows7を使用していると、不特定のアプリケーションで「応答なし」となってしまうことがあります。
 特定のアプリケーションやタイミングなどによって起こらず、最終的にログオフか再起動しないと改善しないこの問題について、マイクロソフトに対処方法が掲載されていたので紹介しておきます。

■原因

 ユーザープロファイルのAppDataをリダイレクトしてい場合、MS IME10の辞書ファイルを作成中にフォルダが見つからないと、作成処理がループしてCPUを100%使い切るようです。

■対象

  • Windows Vista 以降
  • Windows Server 2008 以降

■対処方法

 次のフォルダを作成することで改善されます。
%AppData%\Microsoft\IMJP10
 グループポリシーのログオンスクリプトなどで次のコマンドを実行することで、自動的にフォルダを作成することができます。また、ポリシー適用の範囲をWindowsVista以降にすることで、不要なフォルダの作成も防ぐこともできます。
md "%AppData%\Microsoft\IMJP10"

■参照元

フォルダリダイレクト環境にて Microsoft IME を利用するアプリケーションが応答しなくなる

2012年10月16日火曜日

「Windows セットアップはこのコンピューターのハードウェアで動作するように Windows を構成できませんでした」の対処方法

 初期のWindows7のインストールCDでPCをセットアップしようとすると、下記のようなエラーが出てセットアップが途中で失敗してしまいます。
 原因は適切なストレージドライバが見つからないことのようですが、インストール途中にドライバをインストールすることで回避することができます。
 その対処方法についてまとめておきます。

■エラー

Windows セットアップはこのコンピューターのハードウェアで動作するように Windows を構成できませんでした

■対処方法

 対処方は次の通りです。
  1. Intelから最新のストレージドライバをダウンロードする
  2.  http://www.intel.com/support/chipsets/imsm/sb/CS-031502.htm
  3. USBメモリにドライバを保存する
  4. Windowsのインストールを開始する
  5. 「Windowsのインストール場所を選択してください」で「ドライバの読み込み」をクリックし、先ほどのドライバを読込む

■参考サイト

詳しい内容はこちらを参考にしてください。

Windows 7 ベースまたは Windows Server 2008 R2 ベースのコンピューターでのインストール エラーの「Windows セットアップ Windows コンピューターのハードウェアを構成できませんでした」

2012年6月13日水曜日

Windowsキー

 タスクバーのスタートメニューを開くためのWindowsキーですが、Windowsキーを使った便利なショートカットが意外とたくさんあります。
 新たに発見したショートカットもあったので説明と合わせて備忘録に残します。

ショートカットの一覧

Windowsキーと
組合せるキー
説明
EWindowsエクスプローラを開く
Rファイル名を指定して実行
Lコンピュータのロック
Windowsキー

2012年2月17日金曜日

既定のブラウザ(メールクライアント)の設定が毎回出てくる

 ブラウザやメールクライアントにMicrosoft製の製品以外を使用していると、まれに既定のブラウザやメールクライアントの設定を毎回聞いてくることがあります。
 この不具合による問題点と解決方法を以下に説明します。

■問題点

このような症状が出ている場合、次のような問題も発生します。
  • 毎回既定の設定を聞いてくる
  • アプリケーションからメールに添付して送信しようとするとエラーになる、もしくはOutlookExpressが起動する
  • アプリケーションからURLを開こうとするとエラーになる、もしくはInternetExplorerが起動する

■解決方法

次の設定を行うことで既定のブラウザやメールクライアントを変更することができます。
  • Windows XP

  1. コントロールパネルを開き「プログラムの追加と削除」を起動します。
  2. ダイヤログの左端にある「プログラムのアクセスと既定の設定」を選択します。
  3. 右の枠から「カスタム」を選択して、既定のブラウザやメールクライアントにチェックを付けます。
  • Windows Vista/7

  1. スタートメニューから「既定のプログラム」を選択し「コントロールパネル」の「既定のプログラム」を開きます。
  2. 次に「プログラムのアクセスとコンピュータの既定の設定」を選択します。
  3. 「カスタム」を選択して、既定のブラウザやメールクライアントにチェックを付けます。 

■参考資料