После изменения размера раздела NTFS Windows 10 больше не загружается
Мой компьютер настроен для двойной загрузки через Grub. Я использую Windows 10 и Ubuntu 17.10.
Ранее сегодня я работал в Ubuntu, и у меня не хватило места на моем разделе ext4. Чтобы увеличить его, мне сначала нужно было уменьшить загрузочный раздел Windows.
я использовал ntfsresize
сжать файловую систему (что она сделала без ошибок), а затем fdisk
удалить и воссоздать раздел. Я знал, что ntfsresize
а также fdisk
не согласен насчет МБ против МиБ, и для компенсации я проверил значение "байтов" в выводе ntfsresize
и преобразовал это в КиБ, а затем использовал это значение в fdisk
, Когда меня спросили, хочу ли я удалить существующую подпись NTFS, я ответил нет. Я установил тип диска на 11 (основные данные Microsoft). Из-за моего диска, использующего GPT, я не смог пометить диск как загрузочный в fdisk
вот я и открыла parted
и изменил его там вместо этого.
После всего этого я попытался перезагрузиться в Windows, чтобы запустить chkdsk, но вместо загрузки в Windows автоматически запускалось восстановление при загрузке. Он сказал, что не может автоматически восстановить Windows. Я открыл командную строку восстановления, и мой диск был обнаружен и смонтирован. (Хотя он смонтирован как E: вместо C:) я побежал chkdsk E: /F
и это успешно завершено. Я могу видеть все файлы на нем. Я пробовал бегать bootrec /FixMbr
который, казалось, работал, bootrec /FixBoot
который дал ошибку "Доступ запрещен", и bootrec /RebuildBcd
который смог обнаружить мою установку Windows и добавить ее в BCD.
Однако после всего этого, каждый раз, когда я пытаюсь загрузить Windows, он просто запускает Восстановление при загрузке. Я все еще могу загрузиться в Ubuntu, и я даже могу смонтировать диск C в режиме чтения-записи, используя ntfs-3g
,
Чего мне не хватать? Почему Windows отказывается загружаться, хотя раздел кажется здоровым?
Заранее спасибо!
РЕДАКТИРОВАТЬ: Вот мой вывод восстановления загрузки: http://paste.ubuntu.com/p/YCkzCcNdkN/
4 ответа
Я сделал то же самое (ntfsresize + fdisk) при установке Linux и столкнулся с той же проблемой. В конце концов, это похоже на работу из подсказки восстановления Windows:
fixboot /scanos
он нашел c:\windows, затем я запустил:
bcdboot c:\windows
Я тоже побежал chkdsk c:
, fixboot /mbr
а также bcdedit /set {default} recoveryenabled no
до этого, но я не думаю, что они связаны с проблемой.
Насколько я понимаю, команда bcdboot выше добавила возможность загрузки в новый c: \ windows для bootmgfw.efi. Действительно, после перезагрузки у меня было два варианта:
новый "windows 10, на разделе 3", который работал, и
"windows 10", чего не было (как раньше).
После загрузки я удалил нерабочую опцию из менеджера конфигурации (поиск "менеджер конфигурации", вкладка "загрузка").
Ссылка: [ https://docs.microsoft.com/en-us/windows/client-management/advanced-troubleshooting-boot-problems][1] [1 ]
Загрузитесь с Windows live cd и запустите
chkdsk /f/x/r
.
Я загрузился с загрузочного компакт-диска Linux и использовал
gparted
для проверки, но это не помогло. Затем я побежал
ntfsfix
но диск все еще был недоступен. Затем я загрузился с Windows live cd и запустил
chkdsk /f/x/r
и драйв стал доступен.
Я всегда повторяю, что размер диска Windows должен изменяться только в разделе "Управление дисками", поскольку Windows не допустит деструктивного изменения размера, что и произошло здесь.
Так как автоматическое восстановление не работает, загрузите Repair Startup в режиме командной строки и введите следующие команды:
diskpart
select disk 0
list partition
select partition X (X is the partition number where Windows is installed)
active
exit
Если это не сработает, и лучшего решения не будет найдено, потребуется переустановка Windows.
Я заметил, что когда я пытался сжать системный раздел Windows с помощью инструмента GParted, свободное пространство, отображаемое в Linux, отличалось от свободного места в Windows.
Я не могу объяснить технически, как это происходит, но в общих чертах при уменьшении раздела с помощью Windows часть места сохраняется для «зарезервированного хранилища Windows». Поскольку Linux не распознает этот формат, при сжатии раздела с помощью GParted происходит потеря данных.
Я провел тесты на виртуальной машине, и после выполнения процедур по ссылке ниже, чтобы отключить «Зарезервированное хранилище Windows», мне удалось уменьшить размер раздела в Linux, и операционная система смогла загрузиться без каких-либо проблем. Ссылка как отключить: здесь »
Для нетерпеливых:
dism /Online /Set-ReservedStorageState /State:Disabled