Исправьте Windows MBR с помощью Ubuntu Live CD и инструмента ms-sys.


13

Я пытаюсь исправить MBR, используя Ubuntu live CD. У меня уже установлен ms-sys, но из потоков, которые я видел, я не совсем уверен, в каком / dev мне следует выполнить команду:

sudo ms-sys --mbr7 /dev/???

(это правильный вариант mbr7 при использовании Windows 7?)

ubuntu@ubuntu:~$ sudo fdisk -l

Disk /dev/sda: 320.1 GB, 320072933376 bytes
255 heads, 63 sectors/track, 38913 cylinders, total 625142448 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x1f205b1f

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *          38          38           0    0  Empty
/dev/sda2   *        2048      206847      102400    7  HPFS/NTFS/exFAT
/dev/sda3          206848   155854847    77824000    7  HPFS/NTFS/exFAT
/dev/sda4       155854848   625137663   234641408    7  HPFS/NTFS/exFAT
ubuntu@ubuntu:~$ 

Почему /dev/sda1пусто?

Я пытаюсь исправить MBR, потому что при загрузке операционной системы у меня появляется черный экран.

Ответы:


7

Для восстановления MBR принятым методом является использование компакт-диска Windows. У нас не было такой роскоши. К счастью, у нас был Ubuntu Live USB.

Метод для исправления MBR:

  1. Загрузите машину с Live USB / CD.
  2. Установить Лило sudo apt-get install lilo
  3. Исправьте MBR, используя lilo, используя команду: sudo lilo -M /dev/sda mbr

Работает как шарм!


1
BG-Rescue Linux также имеет LILO и составляет всего 4 МБ
Стивен Пенни,

4

Во-первых, в вашей таблице разделов есть два активных раздела, которые могут помешать загрузке компьютера, даже если вы решите проблему MBR.

Загрузка MBR в Windows довольно прикольная, потому что она использует MBR «по умолчанию» для загрузки MBR активного раздела. Прежде чем изменять загрузочные записи, попробуйте снять отметку с одного из разделов и выполнить загрузку.

Если это не сработает, mbrвозможно, стоит изучить пакет . Он может установить MBR «по умолчанию» на ваш диск, который просто загружает загрузочный код из активного раздела.

По вашему вопросу читайте / следуйте этим пунктам на свой страх и риск. У этого материала есть возможность испортить вашу таблицу разделов. Сделайте резервную копию, используя dd if=/dev/sda of=table.bin bs=512 count=1сначала. Я бы также порекомендовал сделать резервную копию всех ваших файлов. Если я правильно понимаю документы, выполнение этих команд без -wможет помешать им писать что-либо без дополнительного вмешательства пользователя.

  • ms-sys /dev/sda будет проверять жесткие перегородки
  • Пожалуйста, прочитайте документацию здесь . Исходя из того, что я понял, это ms-sysможет быть довольно опасно и предназначено для уничтожения всей вашей MBR вместе с таблицей разделов в нескольких ситуациях. Казалось бы, вы используете не ту утилиту для работы.
  • ms-sys --ntfs /dev/sdaXгде sdaXваш раздел с Windows 7 на нем. Это может сделать то, что вы ожидаете, но, вероятно, нет.

Я думаю, что у вас есть неправильная утилита для работы здесь. Это не «исправляет» MBR, оно уничтожает и создает их. Возможно, вам повезет, и новая таблица разделов будет соответствовать новой, но я бы на это не рассчитывал. Попробуйте загрузить компакт-диск grub, наберите chainloader (hd0,<win7 partition>)+1в командной строке и посмотрите, загружается ли он. Это поможет диагностировать, где ваша проблема. Если это не помогло, используйте установщик dist для Windows, чтобы исправить MBR.


2

Вот два решения, которые сработали для меня.

Загрузите Linux и убедитесь, что у вас есть работающее интернет-соединение, и наберите в терминале следующее.

1. Решение

sudo apt-get install syslinux

Если пакет был установлен, используйте следующую команду для записи MBR:

sudo dd if=/usr/lib/syslinux/mbr.bin of=/dev/sda

2. Решение

sudo apt-get install mbr

Если пакет установлен, используйте следующую команду для записи MBR.

sudo install-mbr -i n -p D -t 0 /dev/sda

Общее для обоих

Замените sda, если вы хотите установить MBR на другой диск. Не ставьте sda1, sda2или sda3. Просто поместите это как sdaдля жесткого диска. Наконец перезагрузите компьютер и Windows должна загрузиться.


Будет ли ddстирать весь sdaдиск?
Павел Власов
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.