Как загрузить виртуальную машину с флешки с помощью программы Virtual Machine USB Boot
В главном окне программы жмём Add (Добавить).
В пункте VM name жмём на стрелочку
и выбираем в выпадающем списке название виртуальной машины, которую мы хотим загрузить с флешки. На моём ноутбуке две виртуальные машины: Windows 10 и Windows 7,
я хочу загрузить с флешки Windows 10, поэтому выбираю в списке её.
В пункте Drive to add and boot выбираю загрузочную флешку.
Важно : теперь, если у вас запущена VirtualBox, её надо закрыть, так как виртуальную машину будет запускать программа Virtual Machine USB Boot 1.5.
Запускается виртуальная машина и выходит ошибка: FATAL: No bootable medium found! System halted.
Примечание : Для загрузки VirtualBox с USB-флешки программа Virtual Machine USB Boot 1.5 специально создаёт vmdk-файл, именно этот файл соединяет виртуальную машину с USB-флешкой. Данный файл vmdk создаётся в личной папке программы: C:\Users\Имя пользователя\VirtualBox VMs\Windows 10 (название виртуальной машины).
Чтобы не было ошибки «FATAL: No bootable medium found! System halted» при загрузке виртуальной машины с флешки, нам самим нужно создать IDE-контроллер для файла vmdk.
Жмём на кнопку Носители.
Жмём на кнопку в форме ромбика и выбираем Добавить IDE-контроллер.
Контроллер IDE добавлен.
З апускаем программу Virtual Machine USB Boot 1.5 заново
И виртуальная машина загружается с флешки.
Если вы используете немного устаревшую версию виртуальной машины VirtualBox 4.3.34, то с ней подобных проблем не будет. Программа Virtual Machine USB Boot 1.5 автоматически создаст IDE-контроллер для файла vmdk.
Виртуальная машина на флешке
Несмотря на то, что я все больше использую разные онлайн-сервисы для решения многих задач, на флешке у меня всегда есть набор незаменимых portable-приложений, которые запускаются без установки на любом компьютере. Разработчики сами часто выкладывают портабельные версии своих продуктов. Но если даже нет, то за них это зачастую делают энтузиасты. В конце концов, сейчас уже каждый может скачать замечательную утилиту Cameyo и сделать portable-версию практически любого приложения. Цель достигается за счет так называемой виртуализации: приложение помещается в специальный контейнер, в котором эмулируется нужные для его работы ветки реестра, файлы на диске и т. д. Где бы оно ни запускалось, для него всегда будут созданы такие тепличные условия. 🙂 Увы, виртуализировать таким образом можно далеко не всё. Когда мне кровь из носа понадобилась портабельная виртуальна машина, на которой можно было бы запускать гостевые ОС, оказалось, что VirtualBox под Cameyo не работает. На официальном сайте подходящей версии виртуальной машины не было, однако на форуме я нашел ссылочку на интересный проект — Portable-VirtualBox.
Настройка portable-версии виртуальной машины
Хакер #157. Деньги на багах в Chrome
Цель разработки — заставить VirtualBox работать без установки и запускаться откуда угодно, например с USB-носителя. Интересно, что утилита полностью написана на скриптах AutoIt (все исходники открыто лежат, но из-за этого, правда, и выглядит не очень изящно. Но главное-то — результат. Итак, скачиваем приложение (у меня это Portable-VirtualBox_v4.1.6-Starter_v6.4.8-Win_all.exe) и запускаем его — программа предложит выбрать путь для распаковки. После этого можно запустить Portable-VirtualBox.exe. Все настройки выставляются автоматически, исправлять что-то вручную (например, пути) не требуется. Появившееся окно — это так называемый лончер. Он появляется один раз и предназначен для загрузки последнего дистрибутива VirtualBox и извлечения оттуда нужных файлов. Интересно, что на этом этапе файлы можно еще и особым образом упаковать, чтобы они занимали меньше места на USB-флешке (хотя при нынешних размерах флешек это едва ли актуально). Жмем на кнопку «Download installation files of VirtualBox», выбираем разрядность системы (например, «Extract the files for 32-Bit system») и ждем, пока лончер сделает все свое дело. Чтобы установщик адаптировал пути под систему (поправил нужные параметры в конфиге VirtualBox.xml), бинарник Portable-VirtualBox.exe нужно запустить еще раз. Вуаля — у нас в распоряжении есть полноценная VirtualBox. Без какой-либо установки в систему.
Учитывая, что виртуальная машина всегда находится не в выключенном состоянии, а в режиме «Save the state», ее запуск происходит очень быстро. Поэтому она всегда готова к работе без лишнего геморроя. И где угодно.
Степа Ильин
Главный редактор «Хакера» с 2012 по начало 2014 года. Сейчас с командой единомышленников строит компанию Wallarm, разрабатывающую решения для защиты веб-приложений от хакерских атак и обнаружения в них уязвимостей.
2 виртуальные машины для Windows 10
Про Linux поговорили, теперь пора устанавливать выбранную систему.
Я уже выбрал и скачал несколько дистрибутивов, а также распланировал дальнейшие действия. Мне интересно развернуть Zimbra Collaboration Suite. Это программный продукт для автоматизации совместной деятельности рабочих групп, который легко может соперничать с Microsoft Exchange, Google Docs и Google Apps. А для расширения возможностей Zimbra установить не очень пока популярное в России расширение ZeXtras, которое добавляет в программу бекапы, мобильность, управление хранилищем данных и администрирование. Такие планы. Но обо всём по порядку. Во времена работы сисадмином я бы взял тестовый компьютер и всё бы разворачивал там, но дома настолько свободных машин нет, так что придётся воспользоваться виртуализацией.
Виртуальные машины незаменимы для тестирования новых операционных систем или новых программ. Для Windows 10 я бы выделил три решения для виртуализации, но за VMware Workstation надо платить и поэтому я его исключу из этого обзора. Остановимся на Hyper-V от Microsoft и VirtualBox от ORACLE. Я рассмотрю установку программ и из возможность, так как разворачивание самих виртуальных машин — тема отдельной статьи.
Hyper-V
Если на вашем компьютере установлена Windows 10 Pro или Enterprise, то эта операционная система имеет встроенную поддержку виртуальных машин Hyper-V. Еще в Windows 8 появилась технология виртуализации, ранее доступная только в серверных ОС Microsoft. Это решение оказалось более удачным, чем входившая в Windows 7 виртуальная машина Windows Virtual PC.
Если ваш процессор поддерживает требуемые технологии виртуализации, компонент Hyper-V установится без проблем.
Важный момент: ваш процессор должен поддерживать технологии виртуализации. В BIOS должны быть включены следующие параметры:
Если технология поддерживается и параметры включены, то для установки Hyper-V достаточно зайти в:
Панель управления ➝ Все элементы панели управления ➝ Программы и компоненты ➝ Включение и отключение компонентов Windows
В открывшемся окне Компоненты Windows выберите все элементы раздела Hyper-V. Или просто нажмите Win + R, введите OptionalFeatures и нажмите Enter.
Опытные пользователи могут установить Hyper-V одной командой PowerShell:
После установки потребуется перезагрузка.
После перезагрузки Hyper-V можно найти в списке программ в меню Пуск в папке Средства администрирования Windows. Или же нажать Win + R, ввести virtmgmt.msc и нажать Enter.
И приступить к настройке и установке любой операционной системы.
VirtualBox
VirtualBox — простой, мощный и бесплатный инструмент для виртуализации от ORACLE. Позволяет создавать виртуальные машины и устанавливать практически любую современную операционную систему: Windows, MacOS, FreeBSD или Linux. Система поддерживает работу с сетями, поэтому, при желании можно дать виртуальной машине выход в Интернет. VirtualBox поддерживает как 32 так и 64 разрядные версии операционных систем и способен работать с виртуальными компьютерами, созданными в программе VMware Workstation.
Основные особенности VirtualBox:
С официального сайта нужно скачать VirtualBox и VirtualBox Extension Pack. Для начала надо установить саму программу, а затем Extension Pack — набор расширений, который необходим, чтобы виртуальная машина полностью поддерживала сетевые подключения и периферийные устройства (USB-накопители, флешки, принтеры). Для установки достаточно запустить файл и подтвердить установку в Virtual Box.
Для начала работы необходимо нажать на кнопку Создать и следовать указаниям пошагового мастера.
Спасибо за внимание. Следите за постами, дальше будет интереснее
Спасибо, что читаете! Подписывайтесь на мои каналы в Telegram, Яндекс.Мессенджере и Яндекс.Дзен. Только там последние обновления блога и новости мира информационных технологий.
Респект за пост! Спасибо за работу!
Хотите больше постов? Узнавать новости технологий? Читать обзоры на гаджеты? Для всего этого, а также для продвижения сайта, покупки нового дизайна и оплаты хостинга, мне необходима помощь от вас, преданные и благодарные читатели. Подробнее о донатах читайте на специальной странице.
Заранее спасибо! Все собранные средства будут пущены на развитие сайта. Поддержка проекта является подарком владельцу сайта.
Собираем VirtualBox под Windows
Введение
Как известно большинству пользователей Windows-версии VirtualBox (далее — VB, не путать с Visual Basic), в релизе 4.3.14 разработчики этой программы добавили дополнительный механизм защиты, называемый «hardening» (что можно перевести как «упрочнение»), который привёл к многочисленным проблемам совместимости VB с антивирусами, драйверами крипто-модулей и даже отдельными обновлениями самой Windows, в результате чего виртуальные машины попросту отказываются запускаться. В лучшем случае пользователю приходится ждать около месяца, пока проблемная программа, о которой он сообщит разработчикам, окажется учтена в следующем релизе VB. В худшем случае придётся либо удалять конфликтующую программу (или системное обновление), либо откатывать VB до версии 4.3.12 — последней, в которой не было этой защиты. Многочисленные предложения к разработчикам о добавлении пользовательского списка исключений или опции, отключающей защиту целиком, остаются без внимания. Единственный внятный ответ с их стороны звучит так: «не хотите защиту — компилируйте из исходников сами». Что ж, придётся этим заняться.
Несмотря на то, что процедура сборки описана на официальной вики, она неполна и кое в чём устарела, а сама сборка так и норовит выдать странные ошибки. Поэтому когда я всё-таки пробился до конца сей процедуры, я решил, что её описание заслуживает отдельной статьи. Инструкция время от времени обновляется и на текущий момент адаптирована для VB версии 6.1.18, но если кого-то заинтересует сборка более ранних версий VB или библиотек, информацию можно выцарапать из истории правок.
Содержание
Постановка задачи
Изначально я планировал упростить себе задачу и обойтись минимальной пересборкой, чтобы устанавливать официальный дистрибутив и просто подменять в нём бинарные файлы. Однако оказалось, что такой подход не сработает, поскольку не учитывает использование системных механизмов установки и регистрации драйверов и COM-компонентов. Можно было бы попытаться разобраться в деталях и написать автоматизирующий скрипт, но я решил замахнуться на более крупную дичь: самостоятельно собрать полноценный дистрибутив, максимально близкий к официальному и отличающийся от него только отсутствием hardening’а.
Сразу скажу, что на 100% задачу решить не удалось. Слабым звеном оказались гостевые дополнения, которые в официальном пакете собраны под Windows (32- и 64-битную), OS/2, Linux и некоторые другие *NIX-системы. В комментариях соответствующего Makefile указано, что сборка осуществляется удалённо на разных машинах, а настраивать такой комплект виртуалок мне не улыбалось. В итоге я решил собирать из исходных кодов всё, кроме дополнений, ISO-образ которых буду просто скачивать с сервера Oracle. Я пока не исследовал вопрос наличия hardening’а в дополнениях, но даже если он там есть, сообщений о вызванных им проблемах мне до сих пор не попадалось.
Пара предупреждений
• Проблемы безопасности
Про hardening известно, что добавили его не просто так, а для закрытия некой уязвимости VB. Подробно рассказать о сути уязвимости Oracle категорически отказывается, несмотря на то, что в официальных дистрибутивах проблема исправлена много лет назад. В общих чертах речь идёт о том, что системный механизм внедрения библиотек в чужие процессы в случае VB может приводить к неавторизованному повышению привилегий на хостовой машине, и что для этой уязвимости VB есть реально использующиеся эксплойты. Если это вас не пугает, можете продолжать чтение, но я вас предупредил.
• Подписывание драйверов
Как известно, начиная с Vista, 64-битная Windows в обычном режиме запрещает загрузку драйверов, не подписанных сертификатом с цепочкой доверия, ведущей до корневого сертификата Microsoft (а в Windows 10 при загрузке с включённым Secure Boot драйверы и вовсе должны быть подписаны непосредственно самой Microsoft). Поэтому прежде чем компилировать VB даже для личного использования, необходимо продумать решение этой проблемы: либо купить сертификат, либо попробовать найти сервисы, предоставляющие услугу подписывания драйверов для разработчиков open source (если они, конечно, согласятся подписать заведомо уязвимый драйвер), либо перевести свою Windows в тестовый режим и использовать самоподписанный тестовый сертификат.
Далее я буду ориентироваться на этот последний вариант, но в нужных местах укажу, как поменяется процедура при наличии полноценного сертификата.
• Прекращение поддержки 32-битных хостовых систем
Начиная с версии 6.0 в VirtualBox была официально прекращена поддержка 32-битных хостов (к гостевым системам это не относится), однако сама возможность работы в этих системах ещё оставалась. В версии 6.1 сделан следующий шаг, и 32-битная версия пакета окончательно удалена из инсталлятора (за исключением библиотеки программного интерфейса). Я в своей сборке применил аналогичные модификации, а из статьи удалил все ставшие неактуальными инструкции. Если вам нужна поддержка таких систем, вы можете попробовать самостоятельно собрать 32-битный вариант, воспользовавшись предыдущими версиями статьи из репозитория. Но нужно понимать, что чем дальше, тем больше проблем будет возникать, и не все из них можно будет решить самостоятельно. Разумным выходом будет либо оставаться на предыдущих версиях VirtualBox, либо перейти на 64-битную систему.
Готовим окружение
Официально в качестве сборочной системы рекомендуется Windows версии 8.1 или 10. Моя сборочная система построена на базе Windows 7 SP1 x64 ещё с тех времён, когда это была рекомендуемая версия, и проблем пока что не возникало. Если вы выделяете для сборки отдельную машину (реальную или виртуальную), имейте в виду, что ей необходим доступ в Интернет.
Для создания сборочного окружения потребуется немаленький набор программ. Если для программы присутствует портабельная версия, я использую её, а не инсталлятор.
Если вы не планируете собирать такой же пакет, как я, то некоторые из перечисленных инструментов могут вам не потребоваться. Здесь я вкратце перечислю, какую роль они выполняют.
Программа | Версия | Путь установки |
---|---|---|
Visual Studio | 2010 Professional | C:\Program Files (x86)\Microsoft Visual Studio 10.0\ |
SDK | 7.1 | C:\Program Files\Microsoft SDKs\Windows\v7.1\ |
SDK | 8.1 | C:\Programs\DevKits\8.1\ |
WDK | 7.1.0 | C:\WinDDK\7600.16385.1\ |
ActivePerl | 5.26.1 Build 2601 x64 | C:\Programs\Perl\ |
ActivePython | 2.7.14.2717 x64 | C:\Programs\Python\ |
WiX | 3.11.1.2318 | C:\Programs\WiX\ |
Qt | 5.6.3 | C:\Programs\Qt\5.6.3-x64\ |
MinGW-64 | 4.5.4 | C:\Programs\mingw64\ |
Cygwin | — | C:\Programs\cygwin64\ |
SDL | 1.2.15 | C:\Programs\SDL\x64\ |
cURL | 7.74.0 | C:\Programs\curl\ |
OpenSSL | 1.1.1i | C:\Programs\OpenSSL\ |
gSOAP | 2.8.110 | C:\Programs\gSOAP\ |
libvpx | 1.7.0 | C:\Programs\libvpx\ |
libopus | 1.3.1 | C:\Programs\libopus\ |
MiKTeX Portable | 2.9.6942 | C:\Programs\MiKTeX\ |
NASM | 2.14.02 x64 | C:\Programs\nasm\ |
DocBook XML DTD | 4.5 | C:\Programs\DocBook\xml\ |
DocBook XSL Stylesheets | 1.69.1 | C:\Programs\DocBook\xsl\ |
Особенности установки программ
В этом разделе я привожу указания или инструкции для отдельных пакетов, где процедура неочевидна или требует дополнительных шагов.
• Windows SDK v7.1
При установке могут возникнуть проблемы из-за устаревших версий компиляторов и рантайма: они не могут установиться поверх более новых версий, установленных с VS 2010, и инсталлятор считает это критической ошибкой. Необходимо либо отключить соответствующие галочки, либо предварительно удалить из системы пакеты с именами вида «Microsoft Visual C++ 2010 Redistributable», «Microsoft Visual C++ 2010 Runtime», «Microsoft Visual C++ Compilers…» (SDK установит старые версии пакетов, а Windows Update потом обновит их до актуальных).
• Windows SDK v8.1
Достаточно установить только средства разработки (Windows Software Development Kit).
• WDK v7.1
Достаточно установить только сборочные окружения (Build Environments).
• Qt 5.6.3
Начиная с версии Qt 5.7.0 прекращена поддержка сборки в MSVC версий ниже 2012, поэтому используем 5.6.x.
Для Visual Studio 2010 официальные сборки отсутствуют, поэтому необходимо сначала собрать библиотеку из исходных кодов.
• MinGW
Архив просто распаковывается в выбранный каталог установки.
• Cygwin
• OpenSSL
• libvpx
• libopus
• gSOAP
• MiKTeX
• DocBook
Для распаковки архива XML DTD нужно создать отдельный каталог и поместить туда все файлы. Архив с XSL Stylesheets уже содержит нужный подкаталог, поэтому достаточно его просто распаковать и переименовать полученный подкаталог.
Последние штрихи
• Добавление сертификатов
Если у вас нет полноценного сертификата, то рекомендуется создать хотя бы персональный (с ним проще загружать драйверы, чем совсем без подписи). Для этого нужно открыть консоль с повышенными привилегиями и выполнить в ней следующие команды, которые создадут и добавят в личное хранилище два сертификата (SHA-1 и SHA-256):Имя для сертификатов («Roga and Kopyta Ltd») и путь к файлам можно выбирать по своему усмотрению. Также нам потребуются цифровые отпечатки сгенерированных сертификатов. Откройте консоль управления сертификатами (запустите certmgr.msc ), откройте там список персональных сертификатов. Дважды щёлкните на первом из сертификатов «Roga and Kopyta Ltd», в открывшемся диалоге перейдите на вкладку Состав. В поле «Алгоритм подписи» будет указано sha256RSA или sha1RSA. Далее, в самом конце списка будет поле «Отпечаток» со значением в виде последовательности шестнадцатеричных чисел. Скопируйте это значение куда-нибудь. То же самое повторите для второго из сертификатов. Не забудьте отметить, какой из них был SHA-256, а какой — SHA-1.
• Сборка xmllint
• Различные правки VB
• Файл конфигурации сборки VB
Собираем VirtualBox
Для удобства я написал батник, выполняющий все эти шаги автоматически. Если вам регулярно нужно пересобирать пакет, удобнее пользоваться им.
Послесловие
Размер статьи оказался неожиданностью для меня самого. Когда я начинал её писать, то намеревался подробно рассказывать, почему на каждом этапе было выбрано то или иное решение, какие конкретно ошибки выскакивают, если не применить очередную правку, и какие могут быть альтернативные подходы к решению этих ошибок. Но постепенно понял, что если бы я всё это описывал, статья получилась бы и вовсе неприподъёмной. Поэтому прошу прощения за встречающийся кое-где стиль «делай так, а почему — не скажу». Сам недолюбливаю такие инструкции, но тут не видел иного выхода. Впрочем, в отдельных местах я всё-таки постарался хотя бы вкратце пояснить суть происходящего.
Огромное количество аспектов сборочной системы VB осталось за кадром: как из-за нежелания раздувать текст, так и по причине моей лени, когда, найдя какой-то обходной путь для очередной проблемы, я не лез в глубины системы сборки, а поскорее переходил к следующему этапу. В конце концов, моей главной задачей было не найти оптимальный путь, а собрать, наконец, свой вариант актуального VirtualBox’а: сидеть на 4.3.12 уже поднадоело, но я не мог обновлять один из своих основных рабочих инструментов на нечто, что в любой момент может просто отказаться работать на неопределённый срок. Правда, по мере выхода новых версий я иногда узнаю о каких-нибудь новых возможностях сборочной системы и, опробовав их, добавляю соответствующую информацию в статью.
Надеюсь всё же, что, несмотря на недостатки, эта статья окажется кому-нибудь полезной. Для тех, кому лень поднимать всё вышеописанное нагромождение программ, но интересно расковырять получающийся в итоге дистрибутив, я выложил инсталлятор на Яндекс-диск: 6.1.18. Все драйверы в них (да и остальные файлы) подписаны недоверенным сертификатом, так что в 64-битной Windows этот вариант VB заработает только в тестовом режиме. Если имеются вопросы, пожелания, предложения — велкам в комментарии или в личку. И да пребудет с вами Open Source!