當虛擬機本機帳號無法登入時,該如何處理呢?
最近公司發生了一個奇特的狀況,
某台伺服器登入本機帳號時因密碼到期更改密碼,
結果改完了出現存取被拒!?
該帳號是本機administrator居然也會存取被拒!?
經一查,
原因是因為之前透過GPO修改這個帳號的密碼,
但當時修改的時候,
忘記勾選「密碼永久有效」,
導致密碼過期,
過期之後也沒有去改他,
之後這台因為離開網域的時候不是用一般的離開的方法,
而是直接從AD去刪物件,
最後導致這個情況發生。
既然有問題出來了,
那就必須要找方法解決,
在網路上找到這篇文章:
https://www.itread01.com/content/1502524690.html
透過五次的shift來叫出命令提示字元,
進而變更密碼,
不過這方法僅限於虛擬機,
而這次要記錄的是Hyper-V版本,
以下就是這次的紀錄~
1. 先將有問題的Volume拿到其他台好的機器掛載起來
看是要從「磁碟管理中心」掛起來還是左鍵兩下掛起來都可以
(↑掛載到實體機上)
2. 將「Windows\System32」之中的「sethc.exe」備份起來
由網路上得知,
按下五次的Shift而叫出的程式是把「sethc.exe」這隻程式叫出來,
所以我們要變動的就是這支應用程式,
(↑先把「sethc.exe」備份出來,備份到哪就看你)
2. 修改「sethc.exe」的安全性權限並刪除
這裡就比較困難一點了,
把「Windows\System32」中的「sethc.exe」刪掉,
但刪除時會說沒有權限刪除,
(↑沒有權限無法刪除)
這樣就只能修改安全性了,
(↑沒有權限新增/刪除)
不過沒有權限新增/刪除,
所以只能先繼承安全性囉,
(↑這裡就看要改誰囉,因為我這個是測試環境,所以就改成Everyone,正式環境的情況下是不建議改成Everyone的)
改好之後就按下「套用」和「確定」,
好了之後再度開啟「sethc.exe」的安全性設定,
(↑這時候就可以新增/刪除了)
(↑一樣,因為是測試環境才是用Everyone,正式環境不建議設定Everyone)
設定完成之後,
就進行刪除的工作啦~
(↑刪掉了)
3. 找到「cmd.exe」檔案,複製並將複製出來的檔案名稱改成「sethc.exe」
因為按五次Shift,
會叫出「sethc.exe」這隻應用程式,
但它似乎只會認名稱,
不會去管到底執行什麼,
所以我們就把「cmd.exe」複製一份出來,
把複製的那一份改名成「sethc.exe」。
(↑雖然改名之後看起來跟原來的「sethc.exe」,但執行之後卻是「命令提示字元」)
4. 把虛擬硬碟掛載回去原來的虛擬機上進行測試
好了之後,
就把虛擬硬碟掛回去原本的虛擬機上進行測試,
(↑掛上去之後,按下五次的Shift,就跑出「命令提示字元」囉)
(↑透過"net user"指令,修改密碼)
(↑輸入新的密碼後,登入成功)