5.2 Загрузка с обратной связью

5.2 Загрузка с обратной связью

Я искал это довольно много, но все, что я смог найти, этоVLite. Кстати, я говорю об эквиваленте загрузки Windows с собственного VHD, а не о виртуализации.

решение1

Жратваможет отображать практически любые файлы образов дисков и загружаться с них

  • grub4dosи grub1 поддерживают mapкоманду загрузки сизображения только для чтения. Я не уверен в их возможностях загрузки образов чтения-записи. Существует 2 типа отображения

    • Карта памяти:Изображение естьзагружено в памятьперед отображением в качестве диска, обычно используется с образами дискет. При использовании отображения памяти файл образа диска может быть несмежным. Например:

      map (hd0,0)/win98.ima (fd0)
      
    • Прямая карта:отобразить файл с помощьюint13, требует, чтобы файл был непрерывным

      map (device)/path/file.iso (hd32)
      

      После того, как все сопоставления будут сделаны, вам нужно будет зафиксировать их с помощьюmap --hook

      Эти типы отображения позволяют вам легко загружать любые живые дистрибутивы Linux. При необходимости вы можете использоватькаспер rw постоянныйобраз диска дляэнергонезависимые данные. Для получения более подробной информации читайтеLiveCD/Сохранение

  • В grub2вам придется использоватьloopbackкоманда, которая может быть использована для загрузки как в режиме только для чтения, так и в режимеизображения для чтения и записи

    5.2 Загрузка с обратной связью

    GRUB может считывать данные с образа (будь то CD или HDD), хранящегося на любом из доступных ему хранилищ (см.петляОднако сама ОС должна уметь находить свой корень.

    Обычно это включает запуск программы пользовательского пространства, работающей до обнаружения настоящего root. Это достигается за счет загрузки GRUB специально созданного небольшого образа и передачи его в качестве ramdisk ядру. Это достигается с помощью команд kfreebsd_module, knetbsd_module_elf, kopenbsd_ramdisk, initrd(см.initrd), initrd16(видетьinitrd), multiboot_moduleили multiboot2_moduleв xnu_ramdiskзависимости от загрузчика.

В прошломубииспользовал ту же технику для загрузки Ubuntu из образа без корневого раздела ext4


Если вы используете syslinux, то есть эквивалентная функция, которая называетсяМЕМДИСК

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

MEMDISK имитирует диск, запрашивая фрагмент верхней памяти для диска и (очень маленький — обычно 2 КБ) фрагмент нижней (DOS) памяти для самого драйвера, а затем перехватывая прерывания BIOS INT 13h (драйвер диска) и INT 15h (запрос памяти).

Видеть

Связанный контент