經過:
事情是這樣的,某天我想在 win10 開共用資料夾傳 60G 的檔案,但發現一直不能共用,公司給的 win10 好像有鎖住,於是我就把邪念用到我的 win7 虛擬機上,我在外部直接延伸了原本的系統碟到 120G,然後在虛擬機裡面,將配置的空間獨立成一顆硬碟。當我傳完檔案,也將檔案拉出來後,悲劇就發生了。我那虛擬機空間不管怎麼用都沒辦法 free 掉。
反省
下次如果還想掛硬碟傳檔案,就不要用 extend 的方法,直接對虛擬機加一顆 hard disk 就不會有這種悲劇問題了。
開始減肥
虛擬機環境
- Windows 7 Pro
- hard disk (MBR)
- 硬碟做過重組,清理,未使用空間填 0(但沒啥效果)
修復流程
- 準備 MiniTool Partition Wizard(google 搜尋即可找到官方載點)。
- 將虛擬機 掛上新的 Hard disk。
- 在虛擬機 內打開 MiniTool -> Migrate OS -> 然後選擇新硬碟->調整目標硬碟大小->finish->點左上打的 Apply,軟體會重新開機把系統整顆拷貝過去。
- 拷貝完成後,關閉虛擬機,將原本那個肥胖硬碟移除,開啟虛擬機。
- 然後你就會發現”autochk not found skipping autocheck“,然後一直重新開機。
- 先使用建議修復,會失敗,先別離開,然後選擇使用其他系統工具->點選命令提示字元。
- 照著以下命令
會發現你在 x: 碟底下
x:\windows\system32>
先確定有沒有 autochk.exe 這個檔案
x:\windows\system32>dir C:\windows\system32
如果沒有
x:\windows\system32>copy .\autochk.exe C:\windows\system32
這時還沒做完
x:\windows\system32>bcdboot c:\windows
等跑完
x:\windows\system32>bootsect /nt60 all /mbr
等跑完
重開機後會發現可以選擇安全模式,這時候選倒數第幾個(後面有括號的選項),這時會成功進入 windows,成功進入後再重新開機會自動以一般模式進入,就成功登入了。
最後就是去虛擬機的資料夾把硬碟.vmdk 檔砍掉了(注意別砍到新的硬碟檔)。
ex:
Windows 7 x64-0.vmdk
Windows 7 x64-0-s001.vmdk
Windows 7 x64-0-s002.vmdk
Windows 7 x64-0-s003.vmdk
Windows 7 x64-0-s004.vmdk
Windows 7 x64-0-s005.vmdk
Windows 7 x64-0-s006.vmdk
Windows 7 x64-0-s007.vmdk
Windows 7 x64-0-s008.vmdk
Windows 7 x64-0-s009.vmdk
Windows 7 x64-0-s010.vmdk
Windows 7 x64-0-s011.vmdk
以上是隨手筆記。
參考連結
https://superuser.com/questions/499468/windows-7-boot-fails-autochk-not-found-skipping-autocheck