前天去參加台灣微軟揪甘心的「Vista 回娘家」活動,收穫還頗多。但今天要提的不是課程內容,而是在最後的FAQ 討論...
有人在會中詢問Vista 應該如何更改SID,因為該公司在大量部署時有使用到KMS Server 及NewSID 工具,但卻發現一個很嚴重的問題;NewSID 看起來更改了SID,可是實際在KMS Server 上的使用仍有很多奇怪的問題。
針對這點,本場活動的講師-Eric Huang 及現場熱情支援的台灣微軟專案技術部副理-簡志偉先生有說明,雖然NewSID 這工具能在Vista 下使用,但實務上還是用Vista 內建的Sysprep 程式做更換SID 的動作比較正確。
如果想在Vista 用NewSID 工具,一般人大概會先碰到無法存取SID 的錯誤訊息,
這是由於UAC的關係,所以改由系統管理員的身份再去執行,就會正常了
但是,為什麼會不建議在Vista 下使用,我後來終於發現原因了
在執行更換SID 的過程,程式會去更新系統及使用者的相關資訊,但是....自從Vista/Server 2008 開始,使用者的資料已經改存放在「C:Users」目錄之下。那這工具在Applying 啥鬼啊...
所以,正確更改SID 的方法應該是拿出Vista 內建的Sysprep 系統準備工具,
到 開始 -> 空白欄位裡輸入「sysprep」-> 按下Enter 鍵
接著系統會開啟「C:Windowssystem32sysprep」目錄,再執行sysprep 程式
開啟程式後請選擇OOBE模式,並務必勾選「一般化」,否則不會重新產生SID
然後,點選「確認」就收工啦
只是,我對這種方法還頗有微詞:
1. 只要選擇OOBE 模式,會在重開機後要求新增使用者,及重新命名電腦名稱。
假如在Sysprep 前,Vista 裡面已經有一個名為「User」的帳號,那麼在電腦重開會進入歡迎畫面,也就是準備新環境,此時就不能再建一個名為「User」的帳號,因為Sysprep 不會清除相關帳號資訊。
此外,再用「User」登入時,Vista 會重新產生設定檔(如圖示紅色圈選位置,藍色為Sysprep 前之設定檔),除非你用Sysprep 時沒有勾選「一般化」。
2. 驅動程式不會自動設定先前已安裝的。
我的測試環境是VMWare,原本在虛擬機器裡面已經安裝的「VMWare SVGA II」顯示驅動,在執行Sysprep 後,又變回了標準繪圖卡。
雖然上面這兩點很合理,因為一更改SID 後,舊有的使用者設定無法跟原始的SID 對應,勢必要重新產生。而且Sysprep 本來就是用來封裝Windows 並產生映象,重複供給組織或客戶群使用,所以不會自動安裝原環境的驅動。
但是,說實話....我只不過想要換個SID 而已,有必要這麼複雜嗎?
能不能拜託微軟再把NewSID 這麼好用的工具更新一下吧!
能不能把SID改成特定的??求教
很抱歉,目前尚未看到有相關工具,
如果有的話,我會盡快回應您及分享。
手邊沒有vista 可試, 因您有vm的vista, 可否代測小弟的想法
如果new sid 無法在vista 生效只是因為上述您說的路徑不同的話
小弟的想法是:
使用ntfs junction 功能將 c:\documents and settings 連接到 c:\users
命令提示字元語法
junction "c:\documents and settings" c:\users
移除junction 方法
junction -d "c:\documents and settings"
如果測試ok, 可否告知
感恩
這方法恐怕也不可行,因為處理上似乎沒有這麼簡單,
而且目前NewSID這支工具也已經被宣告終止,
原因有寫在開發者的部落格文章裡:The Machine SID Duplication Myth。
這技巧同時也可以套用在 Windows Server 2008 或 Windows Server 2008 R2 嗎?