Диск Windows монтируется только для чтения (РЕШЕНО)
В настоящее время Windows использует файловую систему NTFS. Linux поддерживает эту файловую систему для чтения, записи, создания, форматирования и выполнения других операций.
Тем не менее, иногда при попытке смонтировать диск Windows может возникнуть одна из двух ситуаций:
- диск монтируется, но только для чтения. Специальное указание опция монтирования с правами записи не помогает
- диск вовсе не монтируется из-за ошибки
К примеру, при попытке смонтировать диск:
|
1
|
sudo mount /dev/sdb4 /mnt/disk_e |
может возникнуть ошибка, что диск доступен только для чтения:
|
1
2
3
4
5
|
The disk contains an unclean file system (0, 0).Metadata kept in Windows cache, refused to mount.Falling back to read-only mount because the NTFS partition is in anunsafe state. Please resume and shutdown Windows fully (no hibernationor fast restarting.) |
А это пример ошибки, когда диск не смонтирован вовсе:
|
1
2
3
4
5
6
|
The disk contains an unclean file system (0, 0).Metadata kept in Windows cache, refused to mount.Failed to mount '/dev/sdb1': Операция не позволенаThe NTFS partition is in an unsafe state. Please resume and shutdownWindows fully (no hibernation or fast restarting), or mount the volumeread-only with the 'ro' mount option. |
Для решения этой проблемы нужно начать с установки драйвера ntfs-3g. Во-первых, он в любом случае необходим для полноценного функционирования файловой системы NTFS в Linux. Во-вторых, в этот пакет включена утилита ntfsfix, которая может помочь решить проблемы с диском Windows.
Для установки в Debian, Linux Mint, Ubuntu, Kali Linux и их производные:
|
1
|
sudo apt install ntfs-3g |
Для установки в Arch Linux и производные:
|
1
|
sudo pacman -S ntfs-3g |
Затем вновь попробуйте смонтировать диск — вполне возможно, что в этом случае он будет доступен с правами записи.
Если вновь возникла проблема, то отмонтируйте диск и запустите команду вида:
|
1
|
sudo ntfsfix /ПУТЬ/ДО/ДИСКА |
Пример команды для проверки и исправления проблемы с диском /dev/sdb4:
|
1
|
sudo ntfsfix /dev/sdb4 |
Пример вывода:
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
Mounting volume... The disk contains an unclean file system (0, 0).Metadata kept in Windows cache, refused to mount.FAILEDAttempting to correct errors... Processing $MFT and $MFTMirr...Reading $MFT... OKReading $MFTMirr... OKComparing $MFTMirr to $MFT... OKProcessing of $MFT and $MFTMirr completed successfully.Setting required flags on partition... OKGoing to empty the journal ($LogFile)... OKChecking the alternate boot sector... OKNTFS volume version is 3.1.NTFS partition /dev/sdb4 was processed successfully. |
Команда выводит причину проблемы: диск содержит нечистую файловую систему. Метаданные, хранимые в кэше Windows, препятствуют монтированию.
Затем выполняется ряд операций, каждая из которых заканчивается статусом OK и наконец сообщение was processed successfully говорит о том, что всё прошло успешно.
После этого вновь попытайтесь смонтировать диск — всё должно быть нормально.
Решение ошибки «Windows is hibernated, refused to mount».
Выполнение рассмотренной команды
|
1
|
sudo ntfsfix /dev/sda4 |
может завершиться неудачей:
|
1
2
3
4
5
6
7
8
9
10
11
12
|
Mounting volume… Windows is hibernated, refused to mount.FAILEDAttempting to correct errors…Processing $MFT and $MFTMirr…Reading $MFT… OKReading $MFTMirr… OKComparing $MFTMirr to $MFT… OKProcessing of $MFT and $MFTMirr completed successfully.Setting required flags on partition… OKGoing to empty the journal ($LogFile)… OKWindows is hibernated, refused to mount.Remount failed: Operation not permitted |
Обратите особое внимание на строку «Windows is hibernated, refused to mount» которая повторяется дважды. Она означает, что работа Windows завершилась гибернацией, такой диск не может быть смонтирован для записи. Если вы специально выключили компьютер таким образом, то перезагрузитесь и выключите без гибернация или быстрого запуска.
Но это может не помочь, поскольку последние версии Windows делают гибернацию автоматически, без ведома пользователя.
Гибернация Windows и быстрый перезапуск
На компьютерах, на которых возможна двойная загрузка в Windows или Linux, Windows должна быть полностью выключена перед загрузкой в Linux, в противном случае файловые системы NTFS на внутренних дисках могут остаться в несогласованном состоянии, а изменения, сделанные Linux, могут быть проигнорированы Windows.
Таким образом, Windows нельзя оставлять в режиме гибернации при запуске Linux, чтобы избежать несоответствий. Кроме того, необходимо отключить функцию быстрого перезапуска, доступную в последних системах Windows. Этого можно добиться, выполнив в качестве администратора команду Windows, которая отключает как гибернацию, так и быстрый перезапуск, а также удаляет файл hiberfile:
|
1
|
powercfg /h off |
Если вы не хотите отключать гибернацию, то для одноразового выключения компьютера Windows без гибернация выключите его командой:
|
1
|
shutdown /s /t 0 |
Удаление файла гибернации
Когда том NTFS находится в спящем режиме, монтирование для чтения и записи запрещается, и том принудительно монтируется только для чтения. Необходимо либо возобновить работу Windows и правильно её выключить, либо использовать опцию remove_hiberfile, которая удалит файл гибернации Windows. Обратите внимание, это означает, что сохранённый сеанс Windows будет полностью утерян, но сама Windows не пострадает. Напомним, что в файле гибернация хранится содержимое оперативной памяти на момент выключения. Кстати, именно поэтому размер файла гибернация равен размеру оперативной памяти компьютера. Используйте эту опцию под свою ответственность.
Пример команды с указанием опции remove_hiberfile:
|
1
|
sudo mount -t ntfs-3g -o remove_hiberfile /dev/sda2 /mnt/spide |
