この記事には広告を含む場合があります。
記事内で紹介する商品を購入することで、当サイトに売り上げの一部が還元されることがあります。
ども。あいしんくいっと(@ithinkitnet)です。
ActiveDirectory環境でGPOを利用し、Windowsクライアント端末に対してログオンスクリプトを設定したのですが、何故か「初回起動時のみ、ログオンスクリプトが動作しない」という奇妙な症状に遭遇しました。
結果的に原因は「キャッシュログオンしてたのでGPOが実行されなかった」のですが、ちょいと盲点でしたね。
クリック可能な目次
ログオンスクリプトが動かなくて試したこと
ログオンスクリプトが動かなくて困ってる人は多いらしく、いくつかの対処法が見つかりました。
その結果、GPOで設定したのはこちら。
Windows Server 2012 R2でログオン/ログオフスクリプト設定(ついでにログオンスクリプト遅延問題も解決)
中でも、Windows8.1からデフォルトになった「OS起動から5分間はログオンスクリプトが動かない」といった設定になっているらしく、◯◯には期待したのですが、残念ながら改善しませんでした。
ithinkit
って感じ。
せめてネットワーク使えるようになるまでログオンを待って欲しい。お願いだから!
キャッシュログオンが原因だった
ログオンスクリプトが動かなくて途方に暮れていた時、OS起動直後のあることに気付きました。
ithinkit
OS起動直後はネットワークが繋がっていないことに気付き、ビックリマークが消えるまで待ってからログオンしてみると、無事にログオンスクリプトが動きました!
要するにクライアント端末がネットワーク接続される前にログオンスクリプトが動こうとするけど、その時点だとADサーバと通信出来ないのでキャッシュログオンしてしまっていたというのが原因でした。
ログオンスクリプトが動かないのは「初回起動時のみ」と限定的だったのですが、原因を特定するまで時間を要しました。
ithinkit
キャッシュログオンを無効化すると、ADサーバと通信出来るようになるまでログインしたくても出来ないので、初回起動時だろうが問題なくログオンスクリプトが動くようになりました。
キャッシュログオンの無効化は「HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon」にある「CachedLogonsCount」」を0にすることで可能。
レジストリ修正は自己責任で!
GPOが上手く動作しない場合はこちら。
ActiveDirectoryでGPOが適用されない時に確認したいこと
ithinkit
以上、あいしんくいっとでした。