休眠失敗;該系統找不到指定的文件

休眠失敗;該系統找不到指定的文件

最近我在我的 Lenovo Y480 上安裝了 Ubuntu 12.04.1 LTS。 Ubuntu 安裝後,休眠功能可以正常運作,但我要確保系統上的所有作業系統都可以正常運作,包括 OneKey Recovery(復原分割區)。值得注意的是,我使用從大學 DreamSpark 程式下載的磁碟映像從頭開始安裝 Windows 7,此外,我還必須使用 Paragon Backup & Recovery 來映像分割區,重新分割以將 Windows 分割區轉換為擴充分割區,安裝Ubuntu,然後恢復鏡像。在此過程中,我還使用 Windows 光碟編輯 BCD,以便重複使用已復原分割區的現有條目。我還使用了自動“修復計算機”選項。

經過驗證,我注意到「修復電腦」選項實際上寫入了錯誤的 BCD(恢復分區),我安裝了該分區並恢復了原始 BCD(從我之前製作的副本),然後重新啟動。此時我的 GRUB 壞了,但我能夠恢復它。至此,冬眠被打破。

我試過了,powercfg /h off然後powercfg /h on重新啟動,什麼都沒有。也嘗試按照指示增加休眠檔案大小這個帖子,但還是不行。執行shutdown /h收益率The system cannot find the file specified.(2)。什麼文件?

似乎安裝系統分割區有時可以工作,但我不想保留它,以防它被意外寫入。我該如何永久解決這個問題?

答案1

簡短回答:如果您使用磁碟管理為系統分割區新增和刪除了磁碟機號,Windows 將不會在下次重新啟動時重新掛載該分割區。系統分區是必要的,因為它包含 BCD,並且需要寫入 BCD 以便系統可以成功從休眠狀態恢復。如果分區未掛載,則無法寫入BCD,休眠將失敗。

如何修復它:

  1. 打開regedit並導航至HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices
  2. 尋找具有 模式的名稱#{guid},並將其全部刪除。您專門卸載的裝置將在重新啟動時再次顯示。
  3. 關閉regedit,然後開啟升級的命令提示字元。
  4. 執行mountvol /E以允許自動掛載(這樣系統分割區將被自動掛載但不分配磁碟機符號)。
  5. 重新啟動,並測試。

如果仍然不起作用,請將您的系統分割區設定為活動(引導)。當然,請確保啟用休眠功能,並且關閉混合睡眠。

較長的答案(過程):事實證明,安裝和卸載系統分區是罪魁禍首。 Windows 會將磁碟區“列入黑名單”,以便它不會在啟動時重新安裝。當我想到只有安裝了系統分割區時才起作用時,我意識到了這一點。在得出這個結論之前,我在同一磁碟機上安裝了 Windows 7 的另一個副本,認為這與 Windows 作為邏輯磁碟區有關。為了採取更好的措施,我檢查了它bcdedit,它能夠調出 BCD 配置。啟動回到原來的安裝,但找不到檔案。 (嗯...這裡找不到文件,休眠期間找不到文件...)檢查mountvol揭示了問題:它告訴我*** NOT MOUNTED UNTIL A VOLUME MOUNT POINT IS CREATED ***。啊哈!我卸載了系統分割區,這樣它就不會在重新啟動時顯示,並且因為 Windows 希望保留它,所以它在某處添加了一個條目來明確禁止安裝。因此bcdedit找不到BCD。需要 BCD 是有道理的,因為添加了一個特殊條目,以便系統可以恢復。因此,文件未找到錯誤引用了 BCD 儲存。

答案2

就我而言,解決方案是磁碟順序。我遵循了每一個建議(包括上面 GMMan 的回答)。 Windows 分割區被標記為活動分割區。確保每個設備都可以進入睡眠狀態。我很徹底。嘗試關閉 /h 時仍出現「系統找不到指定的檔案」錯誤。

該問題完全是由於 Windows 分割區所在的磁碟是磁碟 1(從零開始計數,因此是第二個磁碟)。

我有一個Linux Windows雙啟動環境,每個作業系統都有自己的硬碟。帶有 Grub 的 Linux HDD 在 BIOS 中列在第一位。 Windows HDD 排在第二位。所以我只是切換了他們的物理電纜並告訴啟動到 linux 硬碟,這樣我仍然可以獲得 grub。

當我嘗試休眠時,Windows 不再抱怨「系統找不到指定的檔案」。混合睡眠有效。經過這個小小的改變之後,一切都正常了。

長話短說。我認為您想要休眠的 Windows 分割區必須在分割區管理器中列為磁碟 0。

相關內容