當前位置: 首頁>>技術教程>>正文


由於休眠狀態,無法安裝Windows(NTFS)文件係統

, , , ,

問題描述

每當我啟動Ubuntu時,都會收到一條消息,指出它無法掛載我的Windows分區,並且我可以選擇等待,跳過或手動掛載。

當我嘗試通過Nautilus進入Windows分區時,我收到一條消息,說這個分區處於休眠狀態,我需要進入文件係統並正確關閉它,這是我沒有遇到的問題,因此我不知道為什麽會發生這種情況。

這是我的分區表,如果需要更多數據,請告訴我。

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1            2048    20000767     9999360   83  Linux
/dev/sda2        20002814   478001151   228999169    5  Extended
/dev/sda3   *   478001152   622532607    72265728    7  HPFS/NTFS/exFAT
/dev/sda4       622532608   625141759     1304576   82  Linux swap / Solaris
/dev/sda5        20002816   478001151   228999168   83  Linux

最佳解決辦法

已提交bug關於您正在看到的Nautilus對話框,因為它建議可能導致數據丟失的潛在危險選項。請不要在此對話框中運行該命令,除非您想刪除保存的Windows會話並可能丟失未保存的工作。

Explanation: Why Linux can’t open hibernated Windows partitions:

You are seeing this error because you hibernated Windows instead of turning it off the normal way (in newer versions of Windows, hibernate might be the default option).

  • Hibernating saves the current state information to the hard disk and then powers down the computer.
  • Shutting down the computer closes all programs and ends all running processes before powering down the computer.

When you turn off Windows by hibernating it, you are essentially pausing the system and saving all of that information (into a big file called hiberfil.sys) This way when you resume from hibernation all of your applications and files will be exactly how you left them. It also sets a flag in hiberfil.sys to let other Operating Systems know that Windows is hibernated.

Making changes to your Windows (ntfs) partition while it is hibernated could be dangerous–it could cause Windows to not resume from hibernation or to crash after resuming. Because of this, the tool (ntfs-3g) that mounts (opens) the partition will not mount it in read-write mode if it sees a hibernation flag. As such, Nautilus, the default file browser, will not be able to automatically open this partition–hence the error message that you see–because it is trying to open it in read-write mode.

所有版本的Windows的解決方法:

有三種安裝休眠Windows分區的方法:

  1. 啟動進入Windows並關閉係統,完全關閉係統。然後,您可以引導回Ubuntu,並且在Nautilus中將其打開時,分區將自動以read-write模式掛載。請注意,”Shut Down”選項可能不是默認情況下在開始菜單中顯示的選項。您可能需要點擊旁邊的按鈕來查看更多選項。

  2. 手動將文件係統安裝為隻讀模式。

    • 使用以下命令檢查/media文件夾中是否有用於Windows分區的裝入點(用於裝入分區的文件夾):ls /media

    • 如果您沒有看到Windows分區的文件夾,則應使用以下命令創建一個文件夾:sudo mkdir /media/windows

    • 接下來,使用以下命令將分區以read-only模式掛載到此文件夾上:mount -t ntfs-3g -o ro /dev/sda3 /media/windows請注意,如果您的掛載點被調用其他名稱,則應更改/media/windows

    • 現在,您將能夠使用Ubuntu中的任何程序查看/打開Windows分區上的文件。但是,您將無法寫入分區或修改任何文件,因為它處於隻讀模式。

  3. 如果您需要以read-write模式安裝分區,並且無法或無法啟動到Windows並完全關閉,則還有第三種選擇。但是,這裏沒有包含它,因為它完全刪除了hiberfil.sys,並且會導致您在休眠的Windows程序中丟失所有未保存的信息。以下是man ntfs-3g關於將用於執行此操作的選項的引用。

    remove_hiberfile
                  Unlike in case of  read-only  mount,  the  read-write  mount  is
                  denied  if  the  NTFS  volume is hibernated. One needs either to
                  resume Windows and shutdown it  properly,  or  use  this  option
                  which  will  remove  the  Windows hibernation file. Please note,
                  this means that the saved Windows  session  will  be  completely
                  lost. Use this option under your own responsibility.
    

解決方案(僅適用於Windows 8和10):

Windows 8中有一項名為Fast Startup的新功能。如果啟用了此功能(默認情況下),則在選擇關機時,Windows 8實際上並不會完全關閉。相反,它執行”hybrid shutdown”。這就像冬眠;它使得啟動Windows 8的速度更快。因此,您需要禁用此功能才能正確關閉此功能,並能夠裝入Windows分區。為此,請啟動您的Windows 8並:

Note: disabling Fast Startup will most likely make your Windows 8 take a longer time to boot. There are no “exact” numbers, but let’s say that if it took you 10 seconds to boot into Windows 8, it will now take you 50 seconds after disabling this feature.

  1. 在小圖標視圖中打開控製麵板,然後單擊電源選項。 (見screenshot 1)

  2. 點擊選擇電源按鈕的功能。 (見screenshot 2)

  3. 點擊更改當前不可用的設置。 (見screenshot 3)

  4. 取消選中打開快速啟動(推薦)。 (見screenshot 4)

點擊保存更改。現在,關閉Windows 8並重啟到Ubuntu。

如果您仍然無法在未發生錯誤的情況下進行安裝,則可能需要完全關閉休眠模式。打開提升的命令提示符(右鍵單擊快捷方式,單擊“Run as Administrator”),然後輸入:

powercfg /h off

來源:Fast Startup – Turn On or Off in Windows 8

次佳解決辦法

即使無法訪問Windows,也可以在終端中使用ntfsfix

sudo ntfsfix /dev/sdXY

XY是分區,例如, a2(/dev/sda2)或b1(/dev/sdb1)

ntfsfix修複了一些基本的NTFS不一致性,重置了NTFS日誌文件並安排了第一次啟動到Windows的NTFS一致性檢查。

第三種解決辦法

如果要終止休眠會話,請在終端中運行此命令(按Ctrl + Alt + T打開終端)

sudo ntfsfix /dev/sdXY

XY是分區。例如:sda2或sdb1

如果你無法進入Win8,這也是有效的。

第四種辦法

我的解決方案是在/etc/rc.local中調用mntwindows腳本。這個腳本會檢查是否為休眠狀態,如果休眠狀態為隻讀狀態。為了確保腳本始終可以被調用,我將它放在/bin中並將其標記為可執行文件。腳本的內容如下

sudo mount /dev/sda[Partition Number] /media/[Any existing folder name]

#Mounts Windows
if [ $? -eq 14 ]
then
  echo "Windows is sleeping, I'm mounting as read-only"
  sudo mount -o ro /dev/sda[Partition Number] /media/[Any existing folder name]
fi

第五種辦法

這是因為Windows 8的快速啟動功能。

臨時解決方案將返回到Windows並重新啟動係統(而不是關閉)。永久解決方案是禁用快速啟動。

您可以使用本指南在Windows 8中禁用快速啟動:http://itsfoss.com/solve-ntfs-mount-problem-ubuntu-windows-8-dual-boot/

第六種辦法

Windows 8添加了”fast startup”功能。它確實使Windows在關閉後啟動速度更快,但作為副作用,它最終會使文件係統處於休眠狀態。

要在Win 8中禁用此功能,請在設置下搜索“選擇電源按鈕的功能”,單擊屏蔽以解鎖複選框,然後可以從此處啟用或禁用快速啟動。

前麵提到的警告,你想真的關閉Windows,而不是重新啟動,以便從Linux輕鬆訪問,仍然適用。

第七種辦法

對於Windows 10,我想出了如何關閉快速啟動。做了一個屏幕錄像來解決這個問題。轉到控製麵板>硬件和聲音>電源選項>係統設置然後點擊“更改當前不可用的設置”,並從“啟用快速啟動”中刪除勾號。來源:http://blog.shahariaazam.com/fast-startup-turn-on-or-off-in-windows-10

第八種辦法

在Windows 8上,這是正常的。您需要通過輸入shutdown /f /s /t 0通過cmd關閉Windows 8,然後才能工作。

第九種辦法

為了完成,下麵是另一個命令,將分區掛載為read-only(對於休眠Windows分區非常有用):

udisksctl mount --block-device /dev/sda3 --options ro

如果您有權使用文件管理器裝載分區(例如,如果您是管理員),那麽您應該能夠在不使用sudo的情況下運行此命令。

這在最新的Ubuntu版本中可用(如13.04和13.10)。

如果udisksctl不可用,那麽可能是udisks。它有不同的論點,所以請查看聯機幫助頁。

第十種辦法

根據我的經驗,上麵的adempewolff的流行和有用的答案是必要的,但還不足以讓我安裝Windows NTFS分區以便用Ubuntu編寫。正如其他地方指示的,我在嘗試安裝Ubuntu之前關閉了快速啟動功能,並在”Shutdown”菜單上刪除了休眠選項。

我仍然無法寫入Ubuntu的Windows分區。

我發現我還必須啟動Windows 8.1,啟動Windows授權的命令行(右鍵單擊左下方的Windows按鈕以輕鬆訪問此選項),通過Windows授權框允許它,然後輸入命令:

powercfg /h off

您可以通過以下方式查看結果:

powercfg /a

進行這一更改後,我可以從Ubuntu免費訪問Windows 8.1分區,無論是通過關閉還是重新啟動退出Windows。


我發現後來我能夠反轉這個並仍然可以訪問這個分區(但是像上麵一樣保持快速啟動不被檢查,並且從不要求Windows休眠)。可以預見的是,扭轉它的命令是:

powercfg /h on

我假設從Windows安裝中遺留下來的東西需要通過以這種特定方式關閉休眠來引導來清除。

據我所知,應該沒有理由撤銷這樣的第一步 – 它可能會提供一些額外的安全措施離開powercfg /h off

有關更多信息,請參閱Ubuntu man page for the Windows NTFS handler

參考資料

本文由Ubuntu問答整理, 博文地址: https://ubuntuqa.com/zh-tw/article/108.html,未經允許,請勿轉載。