Нужна помощь для ручного расчета MBR после /bin/dd виртуального жесткого диска Virtualbox на реальный жесткий диск на 32-битном ноутбуке P4 (2003)

Вопрос или проблема

У меня есть старый ноутбук, на который я пытаюсь установить OpenStep 4.2 с пакетом Patch 3 (который поддерживает более 8 ГБ и имеет VESA-драйвер) на ноутбук 2003 года, который является 32-разрядным Pentium 4 с 512 МБ оперативной памяти и контроллером жесткого диска ICH4M IDE, который обратно совместим с драйвером контроллера PIIX4 (я отредактировал шестнадцатеричные идентификаторы PCI для PIIX4 и изменил их на мой ICH4M, что работает).

Мне пришлось использовать Virtual Box для создания образа жесткого диска, так как у моего ноутбука нет дискет для чтения драйверов перед чтением CD-ROM.

Мне удалось создать загрузочный образ 2.88 МБ в VirtualBox, а затем загрузить образ дискеты одного из фреймворков GRUB, который позволяет загружать образы дисков или .iso (я забыл, какой именно). Тем не менее, он все равно не смог обнаружить записываемый DVD-привод и загрузить CD-ROM OpenStep.

Образ Open Step для Virtual Box — это плоский образ 512 МБ, и мне удалось /bin/dd записать его на мой жесткий диск на 40 ГБ с C/H/S 16,383/16/63, который, согласно исследованиям, является LBA, и драйвер использует команду IDE IDENTIFY для чтения размера жесткого диска.

Вопрос в том, как мне вручную отредактировать MBR, чтобы он отображался как один раздел на 512 МБ на жестком диске? В данный момент ничего не отображается. У меня есть доступ к Lubuntu, который, когда вы используете Partition Manage, просто показывает пустой диск.

Образ Open Step как-то работает, в данный момент у драйвера IDE возникают проблемы, так как он не обнаруживает мой DVD-ROM привод (что сейчас не страшно). Но я хочу иметь возможность создать раздел DOS/FAT на диске, чтобы я мог передавать файлы между другой ОС, которую я хочу установить на жесткий диск.

Без тэгов Nextstep, Openstep.

Ответ или решение

Для успешного выполнения задачи по редактированию MBR (Master Boot Record) и созданию основных разделов на вашем жестком диске для установки OpenStep 4.2, необходимо выполнить несколько последовательных шагов. Рассмотрим весь процесс более детально.

Шаг 1: Подготовка инструментов

Поскольку у вас есть доступ к Lubuntu, вам понадобятся следующие утилиты:

  • fdisk или parted для работы с разделами;
  • hexdump или специальные редакторы для редактирования MBR;
  • dd и другие стандартные утилиты Linux.

Шаг 2: Проверка устройства

Сначала необходимо убедиться, что операционная система распознает ваш жесткий диск.

  1. Откройте терминал и выполните команду:
    sudo fdisk -l

    Убедитесь, что ваш жесткий диск отображается в списке. Он может иметь название, например, /dev/sda.

Шаг 3: Редактирование MBR

Чтобы создать один раздел размером в 512MB и сделать его активным, следуйте инструкции ниже.

  1. Загрузите оригинальный MBR:

    sudo dd if=/dev/sda of=mbr_backup.bin bs=512 count=1
  2. Откройте MBR в редакторе:

    hexdump -C mbr_backup.bin

    Найдите 446-й байт, где расположено таблица разделов. Каждая запись таблицы занимает 16 байт и вам потребуется создать новую запись для вашего 512MB раздела.

  3. Вычислите размер блока для 512MB. С учетом максимального размера сектора (512 байт) и его адреса, для раздела в 512MB:

    • Начало будет на 2048-й записе (что соответствует 1 MiB или 2048 секторам).
    • Конец будет на 4095-й записе (512MB в секторах 1024).

    Формат таблицы разделов:

    Offset 0x1BE: Partition Table
    Bytes 0x0: Boot Indicator (0x80 для активного раздела, 0x00 для неактивного)
    Bytes 0x1: Start Head, Start Sector, Start Cylinder
    Bytes 0x4: Partition Type (например, 0x06 для FAT16)
    Bytes 0x5: End Head, End Sector, End Cylinder
    Bytes 0x8: Start LBA (в вашем случае это 2048)
    Bytes 0xC: Size in sectors (1048576, что даст 512MB)
  4. Отредактируйте таблицу разделов, записав соответствующие байты. Вы можете использовать hex-редактор, такой как hexedit, для внесения изменений.

Шаг 4: Восстановление MBR

После успешного редактирования, запишите новый MBR обратно на диск:

sudo dd if=mbr_modified.bin of=/dev/sda bs=512 count=1

Шаг 5: Создание и проверка раздела

Однако, рекомендуем использовать fdisk или parted для создания и управления разделами:

sudo fdisk /dev/sda

В FDISK:

  • Введите n для создания нового раздела.
  • Выберите p для создания первичного раздела.
  • Укажите номер раздела (например, 1).
  • Укажите значения начального и конечного секторов, используя рекомендованные вами числа.
  • Введите w для записи изменений.

Шаг 6: Форматирование раздела

После создания раздела, вам нужно его отформатировать:

sudo mkfs.vfat /dev/sda1

Шаг 7: Проверка

Для проверки созданного раздела выполните:

sudo fdisk -l

Или смонтируйте его:

sudo mount /dev/sda1 /mnt

Заключение

Теперь у вас есть один активный раздел на жестком диске размером 512MB, что позволит вам переносить файлы между операционными системами. После этого можно продолжить работу с OpenStep 4.2, устраняя все остающиеся проблемы с драйверами или совместимостью.

Оцените материал
Добавить комментарий

Капча загружается...