Windows 10 忘記密碼

Laurence Chen
4 min readJan 21, 2020

--

朋友拜託我幫他一個忙,「他有很重要的資料放在他 windows 10 的筆電裡,但是他真的把密碼忘了,想請我幫他把資料取出來。」

我很少思考這一類的問題,一開始想的方法滿暴力的,就是把硬碟從筆電上拆下,用另一台電腦掛載這顆硬碟來讀資料。後來,轉念一想,其實重點是要使用另一個作業系統來讀資料,但是不見得需要是另一台電腦。於是我就想到了 bootable CD 。由於現在的 USB 都滿大的,也可以直接把 Linux 的 iso image 做成 bootable USB 。

然後,我就開始用這些相關字串上網查資料。查的字串有:
1. windows 10 忘記密碼
2. reset windows password linux usb

實際的操作步驟:
1. 首先,我先去 https://unetbootin.github.io/ 下載了 unetbootin 這隻程式。

2. 利用 unetbootin 來製作 bootable USB 。bootable USB 不需要很大的硬碟空間,2~4 G 就絕對足夠。然而,不夠新的 USB ,它的傳輸速度很慢,之後的操作會很痛苦。所以我建議使用 USB 3.0 的 USB flash 。
* 一個需要特別注意的點是: unetbootin 它不會自動將你的 USB 上所有的資料刪光,所以如果你重覆用同一個 USB 製做不同 Linux distribution 的 bootable USB ,記得先手動將資料刪光。
* 我一度嫌 Ubuntu 18 的 ISO 太大,下載很慢,想改成用 Puppy Linux ,結果 Puppy Linux 的 USB 卻無法開機,所以還是乖乖換回 Ubuntu 。

3. 將筆電重新開機,按 F2 切換到 BIOS,關閉 fast boot / secure boot control 等相關選項。之後就可以順利用 USB 來開機

4. 接下來就參考 top-password.com
* 以 USB 開機之後,先選 Try Ubuntu
* Software and Updates > Community-maintained free and open-source software” 選項 >Close
*
sudo apt-get install chntpw
* Windows\System32\Config 資料夾下 , chntpw -l SAM

5. 我照著 top-password.com 的方法做,做到 chntpw 的時候,就出現問題了。我遇到了錯誤。長成這樣子:
root@sam:/media/sda3/Windows/System32/config# chntpw -i SAM
chntpw version 1.00 140201, (c) Petter N Hagen
openHive(SAM) failed: Read-only file system, trying read-only
openHive(): read error: : Read-only file system
chntpw: Unable to open/read a hive, exiting..

6. 我後來照著 superuser 的教學,「開啟 Windows 的 login 畫面,按住 shift 同時按下關機。」才順利地移掉 hibernation file 。

7. 重做了步驟 5 ,並且接著下指令
* chntpw -u 使用者名稱 SAM
* [q]>1
* [q]> q
* wirte hive files? (y/n) [n] : y

2024/01 更新:
新文章已經轉換到 https://replware.substack.com 發表,歡迎讀者訂閱

--

--

Laurence Chen
Laurence Chen

Written by Laurence Chen

IT 顧問、講者、作家。喜歡快速迭代 (fast iteration) 與提高產出。 著作:「從錯誤到創新」 https://leanpub.com/errors_to_innovation/ 網站:https://replware.dev/

No responses yet