WDS+MDT網路啟動自動部署windows(十三)騷操作,修改MDT資料庫,使用變數設定計算機描述

上官飞鸿發表於2024-05-04

簡介

我正在努力嘗試將一個被取消的功能重新實現。

在mdt安裝時,為計算機新增計算機描述,它將是未來一些自動化操作的變數,如使用人參數。

MDT 2010 - Setting the Computer Description in AD without a webservice - Deploy Vista

在 MDT 部署期間在 Active Directory 中設定計算機描述 – GivingSomethingBack (maikkoster.com)

MDT 提示輸入計算機描述的指令碼 - 軟體 - Spiceworks 社群

對我的幫助不大。並沒有完整實現我的需求。深挖MDT文件,我找到了這個

引用CustomSettings.ini檔案中的新列 | Microsoft Learn

初看起來就是我需要的。還想過做IIS,web查詢MDT資料庫這種曲線救國的方法呢。

修改表

修改表 | Microsoft Learn

似乎我不需要修改表。

這有描述欄位,我們去看看資料庫是什麼樣的。在表Computerldentity中。

修改和重新整理依賴檢視

修改和重新整理依賴檢視 | Microsoft Learn
在檢視ComputerSettings中,繼續查詢

右鍵--設計檢視,照貓畫虎,新增描述欄位

重新開啟檢視,已經可以看到描述欄位被讀出來了。

引用CustomSettings.ini檔案中的新列

引用CustomSettings.ini檔案中的新列 | Microsoft Learn

它示例是根據地點來篩選防病毒伺服器。

看看我們的是什麼。

自動生成的是根據 UUID,AssetTag,SerialNumber,MacAddress,滿足最後一個條件來篩選。看起來我們已經獲取這個表了。

它直接Properties=AVserver,我怎麼辦呢?我這是Properties=MyCustomProperty。

去任務序列看看吧。

找了半天,找到這麼兩行,在一個wsf指令碼中,似乎看出一些端倪。在wsf檔案中,oEnvironment.Item("OSDComputerName") 似乎就是計算機名。

看檔案格式,是VBScript,反正我也不會寫wsf,找個AI翻譯了一個bat修改登錄檔,也就修改計算機描述的指令碼,也是報錯。

那就試試直接執行vbs指令碼吧

' setComputerDescription.vbs
Const HKEY_LOCAL_MACHINE = &H80000002 
strComputer = "." 
Set objRegistry = GetObject _ 
    ("winmgmts:\\" & strComputer & "\root\default:StdRegProv") 
strKeyPath = "System\CurrentControlSet\Services\lanmanserver\parameters" 
strValueName = "srvcomment" 
strDescription = "Description changed programmatically" 
objRegistry.SetStringValue HKEY_LOCAL_MACHINE, strKeyPath, strValueName, strDescription 

' oEnvironment.Item("OSDComputerName")

儲存為vbs格式,可以使用 cscript setComputerDescription.vbs 命令來更改我的計算機說明。

直接懟,任務序列,新增一個command line任務。

成功與否,等測試訊息吧。

暫時測試到這裡,恢復看看是不是這條命令的問題。

相關文章