ReactOS 0.4.5 Hybrid USB

Как сделать ReactOS 0.4.5 Live USB и как сделать ReactOS 0.4.5 Boot USB уже известно, но неплохо было бы иметь универсальную флешку с которой можно как загрузить РеактОС, так и установить ОС на жёсткий диск.

Такое решение уже есть для CD носителя и называется HybridCD. Поскольку текущие USB драйверы пока не «загрузочные», то разработчики придумали «хитрый план» для тех, у кого нет в компьютере привода CD-DVD. Этот план заключается в том, что ISO-образ ReactOS сначала копируется в оперативную память (Ram-диск) и уже оттуда происходит загрузка ОС. Это конечно лучше, чем совсем ничего, но этот метод работает только для LiveCD (BootCD не работает) и довольно медленный — запись на Ram-диск зависит от производительности процессора.

Если открыть «официальный» HybridCD ISO-образ, то в нём можно найти ещё один ISO-файл. Это и есть LiveCD, который будет грузиться через оперативку. Поскольку с моими USB драйверами этот «хитрый план» как бы отпадает за ненадобностью, то я обычно удаляю этот ISO с готовой флешки. А также удаляю три последних пункта в меню загрузки.

«Оригинальный» ISO-образ hybridcd-ReactOS-0.4.5-vgal.iso.7z, получен командой «ninja hybridcd» в ReactOS Build Environment (RosBE). Отличается от «официального» тем, что в нём используются мои USB драйверы. Для возможности загрузки с USB были сделаны небольшие изменения в PnP менеджере и в загрузчике RoS. Также была сделана пробная версия usbhub драйвера, которая позволяет загружаться с флешки. Пока этот вариант мне не очень нравится, работает не со всеми устройствами, его надо «доводить до ума». Поэтому после установки ReactOS на HDD (буквально после первого этапа установки) этот драйвер надо заменить на «обычный», не загрузочный. Это можно сделать с помощью этой же самой флешки, только выбрав в меню загрузки пункт «LiveCD».

Чтобы упростить весь процесс, я распаковал полученный ISO-образ, выкинул лишнее, изменил freeldr.ini, добавил freeldr.sys и «стандартный» usbhub.sys. Не стал изменять unattend.inf, потому что это более безопасно, и для ноутбуков это не нужно (у них есть клавиатура). Вообщем всё что я делал раньше (ссылки в самом верху). В результате получился вот такой «облегчённый» вариант hybridcd-ReactOS-0.4.5-vgal.7z.

Всё что необходимо — это с помощью Rufus сделать чистую загрузочную ReactOS флешку и скопировать на неё файлы из архива. Я уже рассказывал об этом в Как установить ReactOS на флешку — второй вариант. Также для реального компьютера понадобится заменить файлы мини драйверов usb (o|u|e) hci.sys от XP\W2003. Причём в данном случае надо сделать это два раза — для Live и для Boot папок. Если клавиатура только USB, то измените также файл «unattend.inf».

Теперь можно пробовать загружаться. Не забывайте также, что ReactOS находиться в стадии разработки. Это значит, что в любой момент у ОС могут возникнуть проблемы, большие и маленькие. Поэтому сохраняйте ВСЕ важные данные перед экспериментами с ReactOS.

Upd: Можно для красоты поменять в загрузочном меню все x-CD на x-USB 🙂 И кстати, я изменил параметры в [LiveCD_LogFile] секции ini-файла, так что теперь можно снимать логи через этот вид загрузки. Спасибо за идею Андрею Шаталову!

Комментарии по этой теме можно оставлять здесь — vk.com/vgalnt