Active-Directory

Drive Mount 的組策略登錄腳本正在執行但未應用

  • September 19, 2015

提前感謝您的任何幫助。我已經在網際網路上搜尋了幾個小時來尋找答案,並發現了許多需要注意的提示/項目,但對我沒有任何幫助。

設置:

  • 域控制器 = Windows 2008 R2
  • 客戶端機器 = Windows 7 Pro x64 SP1

我有一個應用於使用者和 2 台機器的 GPO。GPO 執行 2 個登錄腳本。

其中一個腳本用於安裝驅動器。它可以在一台客戶端機器上完美執行,但不能在另一台機器上使用相同的使用者。

**注意:**此任務必須使用登錄腳本來完成。內置驅動器安裝 GPO 通過重新啟動/等導致隨機憑據記憶體失去,這讓我的使用者感到非常沮喪,我早就與之抗爭了。這個登錄腳本在我的一個客戶端上執行良好,所以我知道這可以在另一個客戶端上解決。

場景/問題:

由於 gpresult /r /v 輸出,我可以確認腳本在客戶端上執行 - 我得到了兩個腳本的正確“最後執行”時間戳,證明它們已執行。

1個腳本正常工作。它執行一些 .reg 導入和其他一些任務。

第二個腳本用於安裝驅動器並且不起作用。

但是,當從使用者桌面手動執行 .bat 時,它確實有效。證明腳本語法有效,並且使用者具有權限。

以下是腳本內容:

@echo off
timeout /t 3
net use * /delete /yes
timeout /t 3
net use I: \\10.10.6.13\Share0 /user:DOM\myuser F@kePass1 /p:YES
net use \\10.10.6.13\Share1 /user:DOM\myuser F@kePass1 /p:YES

請注意,我有意省略了第二次裝載的驅動器號。

我嘗試過的一些事情:

  • 禁用快速登錄:Administrative Templates\System\Logon\Always wait for the network at computer startup and logon = Enabled
  • 禁用 UAC
  • 重新創建 GPO
  • 將腳本放入僅執行腳本執行的隔離 GPO
  • 各種“強制”開/關變化
  • 腳本中的各種“超時”設置以強制等待等。
  • 強制“同步執行登錄腳本”
  • 啟用“執行可見的登錄腳本” - 但是我什麼也沒看到。

一些關鍵的注意事項:

  • 由於gpresult /r /v輸出,我可以確認腳本在客戶端上執行 - 我得到了兩個腳本的正確“上次執行”時間戳。
  • 其他腳本正常執行,只是驅動器安裝不起作用。
  • 從登錄使用者的桌面執行完全相同的腳本(.bat 文件)將正常工作。
  • 不工作的客戶端是虛擬機,另一個是硬體桌面。我不認為那會很重要。VM 位於我們專用的 ESX 場中,該場在同一子網上容納許多其他節點。我知道網路配置在管理程序上是正確的。
  • gpupdate /force每次我進行 GPO 更改並確保它應用時,我都會執行gpresult /r /v- 然後至少註銷並經常在策略更改之間重新啟動。

我正在考慮也許將文件登陸到目標機器上,然後創建一個任務以在登錄後執行它。但是,為了將文件放在每個客戶端上,他們需要訪問共享,這就是我想要完成的。

解決方案背景/資訊:

正如格蘭特在對原始問題的評論中發布的那樣:授予登錄使用者或組(域使用者/等)對共享的訪問權限,而不是在net use命令中明確定義使用者名/密碼解決了問題。

這也解決了 GPO 驅動器安裝的問題。未定義“登錄身份”欄位並允許它在登錄使用者工作的情況下自動進行自動身份驗證。

這確實解決了問題,但是這並沒有回答為什麼我最初嘗試使用共享域帳戶不起作用的根本原因。

答案摘要/分步:

  • 授予使用者或組對共享的訪問權限(在文件伺服器上) - 我個人只允許所有“域使用者”
  • 不要net use像我最初所做的那樣使用命令定義顯式(共享)使用者來訪問掛載。

這解決了登錄腳本和 GPO 驅動器安裝的問題。我最終放棄了腳本,只使用了 GPO。不幸的是,這並沒有確定為什麼它首先使用顯式帳戶失敗的根本原因

如果有人有一個環境,​​他們“必須”以這種方式設置它,我預見他們會遇到很多挫折。

引用自:https://serverfault.com/questions/722616