Данная фича вытащена из сборки RusLiveFull_DVD 10.03.2016
[Внешняя ссылка удалена для гостей]
В папку \IMA_ISO складываем образы загрузочных дисков для тестирования.
Для запуска этих образов в меню Grub4Dos есть пункт, позволяющий просканировать
эту папку на предмет наличия образов дисков. После сканирования будет создано
временное специальное меню Grub4Dos, позволяющее загрузить выбранный образ.
В меню будет исключительно список по названиям файлов.
Дефрагментированные несжатые образы будут загружены через прямой маппинг.
Названия образов должны быть английскими буквами, без пробелов (рекомендуется
придерживаться формата 8.3)!!!
----------------------------- Поддерживаются: ----------------------------------
- образы дискет/HDD (с расширением ima/img), в том числе, упакованные Gzip
(расширение gz). Функцию упаковки в этот формат имеет, например, 7-zip,
упакованные образы загружаются только маппингом в память!
- Iso-образы дисков (расширение iso), могут быть загружены одним из трёх
вариантов:
1. Образ дефрагментирован и незанят 4-й раздел первого носителя (hd0,3) -
монтированием образа как (hd0,3). Этот способ позволяет успешно загружать
некоторые Linux-сборки, работает только для флешек/HDD.
2. Образ дефрагментирован, но есть (hd0,3) - прямой маппинг образа. Так можно
успешно загружать только Win/Linux-ядро, смонтированный образ после перехода
ядра в защищённый режим "отвалится". Однако, некоторые ядра (например, все
сборки 2k10 или новый Parted Magic) имеют встроенный драйвер (для win-сборок
это FiraDisk или WinvBlock), позволяющий после загрузки ядра подмонтировать
промапленный образ - что позволяет успешно загружать такие сборки полностью.
3. Образ фрагментирован - маппингом в память (прямой маппинг для таких файлов
не поддерживается).
- Упакованные Iso-образы дисков (расширение iz). Такие образы будут загружены
маппингом в память (соответственно, для загрузки образа понадобится объём
памяти больше размера образа, а для очень больших образов это вооще невозможно).
! Если нежелательно использование монтирования образа из пред.пункта, этим же
вариантом можно загружать неупакованные образы (предварительно расширение нужно
сменить из iso на iz). При этом, если образ дефрагментирован, он будет загружен
прямым маппингом (фрагментированные - маппингом в память).
- Iso-образы дисков (расширение fir) с дополнительной загрузкой в память
виртуального флоппика с драйвером FiraDisk. Образ будет полностью загружен в
память (может быть фрагментирован), после загрузки РЕ-систем останется
доступен в виде виртуального CD-Rom со сборкой. Высокие требования по памяти -
примерно размер образа плюс требуемый для работы размер ОЗУ.
- Iso-образы дисков (расширение wbl) с дополнительной загрузкой в память
виртуального флоппика с драйвером WinVBlock. Если образ дефрагментирован, он
будет загружен прямым маппингом (иначе - маппингом в память), после загрузки
РЕ-систем останется доступен в виде виртуального CD-Rom со сборкой. Требования
по памети обычные, но для работы обязательно постоянное присутствие носителя
с файлом образа.
---------------------- Маппинг, FiraDisk, WinVBlock, ... ------------------------
Хочу сразу уточнить, что загрузка образами в большинстве случаев
неэффективна. Из исключений - так выгодно загружать LiveCD Касперского
(большое количество мелких файлов значительно быстрее загружается именно
из образа, особенно заметно это на FAT32-флешке/HDD и CD).
Итак, в общем случае, при загрузке маппингом в память загружается весь образ,
а уже после стартует загрузчик. Однако, Grub4Dos позволяет загружать образы
через прямой маппинг, т.е., образно говоря, эмулирует виртуальный CD/DVD/... и
подставляет в него нужный образ (подобно тому, как это делает, например,
CD/DVD-эмулятор Daemon Tools). При этом весь образ не считывается в память, а
происходит обращение к файлу образа. При такой загрузке загрузчик образа
стартует почти мгновенно, по ходу дела догружая нужные файлы из образа. Плюс
такого способа - низкие требования по памяти. Есть и ограничения. Во-первых,
образ обязательно должен быть дефрагментирован (т.е., идти одним сплошным
"куском"). Дефрагментацию отдельного файла делают несколько дефрагментаторов,
например, WinContig. Второе ограничение - образ должен оставаться доступен всё
время, пока работает запущенный образ (при обычной загрузке в память физический
носитель с файлом образа после запуска уже не нужен). Третье, и самое неудобное
ограничение (общее для любого вида программной эмуляции образов) - то, что при
переключении работы процессора (переходе в защищённый режим) образ "пропадает" -
т.е., он больше не доступен для системы.
Иногда последнее ограничение (без гарантий!) можно обойти с помощью монтиро-
вания образа как (hd0,3). Но только при условии, что образ дефрагментирован и
незанят 4-й раздел первого носителя (hd0,3). Этот способ реализован для загрузки
файлов с расширением Iso (при соблюдении оговоренных условий) и подходит, в
основном, для Linux-сборок. Дополнительная особенность способа состоит в том,
что так можно загружать из NTFS-разделов Linux-сборки, прямо не работающие с
этой файловой системой (запуск ведь происходит из образа со своей ф/с).
Для WinPE-сборок тоже есть дополнительный способ обойти третье ограничение.
Он состоит в использовании специальных драйверов FiraDisk или WinVBlock. Эти
драйвера позволяют после загрузки ядра и перехода процессора в защищённый режим
заново смонтировать съэмулированные GRUB4DOS образы в ОС как виртульный CDRom и
использовать их в дальнейшем. Для работы драйверов необходима их интегрирация в
само ядро... Замечу, что во все ядра сборки 2k10 интегрированы эти драйвера
(Winvblock для XP-сборок и FiraDisk для 7/8), т.е., любая сборка из 2k10 может
быть загружена прямым маппингом. Но это не единственный вариант загрузить сборку
таким способом! К счастью, Windows (или РЕ-сборка) могут подхватывать драйвер на
этапе загрузки. Для этого необходимо обеспечить
присутствие в системе при загрузке "дискетки" с нужным драйвером. Необязательно
это должна быть реальная дискета, вполне хватает съэмулированного тем же
Grub4Dos образа дискетки. Этот способ загрузки реализован для iso-файлов с
расширением fir/wbl.
Плюс FiraDisk в том, что файл образа может быть фрагментирован (тогда
используется исключительно маппинг в память):
- весь образ будет загружен в память (займёт много времени) и потребуется
много памяти (примерно размер образа плюс требуемый для работы размер ОЗУ).
- на флешках будет загружатся медленно
WinVBlock умеет использовать прямой маппинг (файл образа должен быть
дефрагментирован, иначе образ будет загружен в память!). Соответственно, при
загрузке требования по памяти ниже (практически - только требуемый для работы
РЕ-сборки минимум), быстрая загрузка из флешек.
Для запуска этих образов в меню Grub4Dos есть пункт, позволяющий просканировать
эту папку на предмет наличия образов дисков. После сканирования будет создано
временное специальное меню Grub4Dos, позволяющее загрузить выбранный образ.
В меню будет исключительно список по названиям файлов.
Дефрагментированные несжатые образы будут загружены через прямой маппинг.
Названия образов должны быть английскими буквами, без пробелов (рекомендуется
придерживаться формата 8.3)!!!
----------------------------- Поддерживаются: ----------------------------------
- образы дискет/HDD (с расширением ima/img), в том числе, упакованные Gzip
(расширение gz). Функцию упаковки в этот формат имеет, например, 7-zip,
упакованные образы загружаются только маппингом в память!
- Iso-образы дисков (расширение iso), могут быть загружены одним из трёх
вариантов:
1. Образ дефрагментирован и незанят 4-й раздел первого носителя (hd0,3) -
монтированием образа как (hd0,3). Этот способ позволяет успешно загружать
некоторые Linux-сборки, работает только для флешек/HDD.
2. Образ дефрагментирован, но есть (hd0,3) - прямой маппинг образа. Так можно
успешно загружать только Win/Linux-ядро, смонтированный образ после перехода
ядра в защищённый режим "отвалится". Однако, некоторые ядра (например, все
сборки 2k10 или новый Parted Magic) имеют встроенный драйвер (для win-сборок
это FiraDisk или WinvBlock), позволяющий после загрузки ядра подмонтировать
промапленный образ - что позволяет успешно загружать такие сборки полностью.
3. Образ фрагментирован - маппингом в память (прямой маппинг для таких файлов
не поддерживается).
- Упакованные Iso-образы дисков (расширение iz). Такие образы будут загружены
маппингом в память (соответственно, для загрузки образа понадобится объём
памяти больше размера образа, а для очень больших образов это вооще невозможно).
! Если нежелательно использование монтирования образа из пред.пункта, этим же
вариантом можно загружать неупакованные образы (предварительно расширение нужно
сменить из iso на iz). При этом, если образ дефрагментирован, он будет загружен
прямым маппингом (фрагментированные - маппингом в память).
- Iso-образы дисков (расширение fir) с дополнительной загрузкой в память
виртуального флоппика с драйвером FiraDisk. Образ будет полностью загружен в
память (может быть фрагментирован), после загрузки РЕ-систем останется
доступен в виде виртуального CD-Rom со сборкой. Высокие требования по памяти -
примерно размер образа плюс требуемый для работы размер ОЗУ.
- Iso-образы дисков (расширение wbl) с дополнительной загрузкой в память
виртуального флоппика с драйвером WinVBlock. Если образ дефрагментирован, он
будет загружен прямым маппингом (иначе - маппингом в память), после загрузки
РЕ-систем останется доступен в виде виртуального CD-Rom со сборкой. Требования
по памети обычные, но для работы обязательно постоянное присутствие носителя
с файлом образа.
---------------------- Маппинг, FiraDisk, WinVBlock, ... ------------------------
Хочу сразу уточнить, что загрузка образами в большинстве случаев
неэффективна. Из исключений - так выгодно загружать LiveCD Касперского
(большое количество мелких файлов значительно быстрее загружается именно
из образа, особенно заметно это на FAT32-флешке/HDD и CD).
Итак, в общем случае, при загрузке маппингом в память загружается весь образ,
а уже после стартует загрузчик. Однако, Grub4Dos позволяет загружать образы
через прямой маппинг, т.е., образно говоря, эмулирует виртуальный CD/DVD/... и
подставляет в него нужный образ (подобно тому, как это делает, например,
CD/DVD-эмулятор Daemon Tools). При этом весь образ не считывается в память, а
происходит обращение к файлу образа. При такой загрузке загрузчик образа
стартует почти мгновенно, по ходу дела догружая нужные файлы из образа. Плюс
такого способа - низкие требования по памяти. Есть и ограничения. Во-первых,
образ обязательно должен быть дефрагментирован (т.е., идти одним сплошным
"куском"). Дефрагментацию отдельного файла делают несколько дефрагментаторов,
например, WinContig. Второе ограничение - образ должен оставаться доступен всё
время, пока работает запущенный образ (при обычной загрузке в память физический
носитель с файлом образа после запуска уже не нужен). Третье, и самое неудобное
ограничение (общее для любого вида программной эмуляции образов) - то, что при
переключении работы процессора (переходе в защищённый режим) образ "пропадает" -
т.е., он больше не доступен для системы.
Иногда последнее ограничение (без гарантий!) можно обойти с помощью монтиро-
вания образа как (hd0,3). Но только при условии, что образ дефрагментирован и
незанят 4-й раздел первого носителя (hd0,3). Этот способ реализован для загрузки
файлов с расширением Iso (при соблюдении оговоренных условий) и подходит, в
основном, для Linux-сборок. Дополнительная особенность способа состоит в том,
что так можно загружать из NTFS-разделов Linux-сборки, прямо не работающие с
этой файловой системой (запуск ведь происходит из образа со своей ф/с).
Для WinPE-сборок тоже есть дополнительный способ обойти третье ограничение.
Он состоит в использовании специальных драйверов FiraDisk или WinVBlock. Эти
драйвера позволяют после загрузки ядра и перехода процессора в защищённый режим
заново смонтировать съэмулированные GRUB4DOS образы в ОС как виртульный CDRom и
использовать их в дальнейшем. Для работы драйверов необходима их интегрирация в
само ядро... Замечу, что во все ядра сборки 2k10 интегрированы эти драйвера
(Winvblock для XP-сборок и FiraDisk для 7/8), т.е., любая сборка из 2k10 может
быть загружена прямым маппингом. Но это не единственный вариант загрузить сборку
таким способом! К счастью, Windows (или РЕ-сборка) могут подхватывать драйвер на
этапе загрузки. Для этого необходимо обеспечить
присутствие в системе при загрузке "дискетки" с нужным драйвером. Необязательно
это должна быть реальная дискета, вполне хватает съэмулированного тем же
Grub4Dos образа дискетки. Этот способ загрузки реализован для iso-файлов с
расширением fir/wbl.
Плюс FiraDisk в том, что файл образа может быть фрагментирован (тогда
используется исключительно маппинг в память):
- весь образ будет загружен в память (займёт много времени) и потребуется
много памяти (примерно размер образа плюс требуемый для работы размер ОЗУ).
- на флешках будет загружатся медленно
WinVBlock умеет использовать прямой маппинг (файл образа должен быть
дефрагментирован, иначе образ будет загружен в память!). Соответственно, при
загрузке требования по памяти ниже (практически - только требуемый для работы
РЕ-сборки минимум), быстрая загрузка из флешек.