Как сделать флешку mbr

Как сделать загрузочную флешку (IV способа) | 26pk

Как сделать флешку mbr

Загрузочная Windows флешка создается на базе уже имеющихся файлов и не требуется iso образ. Флешка делается загрузочной независимо от того, скачиваете ли вы iso образ window 7 или распаковываете файлы в отдельную папку на жестком диске.

Существует множество инструментов и программ, которые способны сделать загрузочную флешку в некоторой степени быстрее, но только для старой аппаратуры компьютера. Намного быстрее проделать всё вручную, если конечно железо компьютера соответствует новым стандартам UEFI.

Простейший способ создания загрузочной флешки

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

Первый способ заключается в обычном копировании файлов Window 7 на флешку, затем в UEFI BIOS производятся настройки, где нужно выбрать или переместить загрузочный раздел повыше. Как это делается будет описано в конце статьи.

Второй способ ничем не отличается от первого, копируется содержимое операционной системы, производятся необходимые настройки в знакомом нам стареньком BIOS. Единственное, предварительно флешку нужно сделать активной и при помощи утилиты bootselect создать на USB накопителе MBR с кодом загрузчика BOOTMGR, иначе старый компьютер не сможет с неё загрузится.

1 способ (для новых компьютеров с поддержкой UEFI):

Первым делом нужно отформатировать флешку в FAT32 и скопировать туда все содержимое образа Windows 7, после чего зайти в BIOS / UEFI и осуществить требуемые настройки для загрузки с USB накопителя.

Осталось только перезагрузить компьютер и дождаться появления надписи «Press any key to boot from usb». У вас есть несколько секунд пока надпись не исчезла. В это время нужно нажать один раз (можно несколько) по любой из клавиш (или зажать и удерживать).

Копирование содержимого файлов Windows 7 на отформатированную в fat32 флешку.

2 способ (для старых компьютеров, использующих BIOS):

Если повторить первый способ где вшит обычный БИОС, скорее всего вы получите ошибку «Disk error. Press any key to restart», но никак не начнется установка Windows. Это значит, что у вас более старая версия материнской платы без поддержки UEFI.

Чтобы все хорошо работало на старом компьютере, выполните первый способ, который описан чуть выше. Далее требуется запустить командную строку от имени администратора:

Пуск- Все программы- Стандартные- Командная строка

Внимание!!! Убедитесь, чтобы флешка была подключена к USB контроллеру. Последовательно в командной строке выполните следующие команды:

Найдите свою флешку и запомните номер тома. Отличить флешку от жесткого диска просто, в разделе Тип должно быть отмечено как Сменный. Еще можно обратить внимание на размер накопителя и на его название (Метка).

Запоминаем номер тома для дальнейшей команды select volume:

Номер тома флешки TOSHIBA «6».

Далее найдите папку с Windows 7, (8 / 8.1 / 10 / mac os) которая может храниться: на компьютере, CD-DVD диске, да где угодно. Скопируйте полный путь к дистрибутиву с папкой \boot\bootsect. Затем запомните системную букву накопителя. Не закрывая командную строку выполните следующую команду:

  • F:\iso\U_7_x64\boot\bootsect /nt60 J: /mbr

Буква F – это раздел на котором хранится дистрибутив с Windows. Далее идет полный путь к нужной папке дистрибутива Windows.

Буква J – это съёмный накопитель или USB флешка.

Выполнив эту команду, выполняется обращение к утилите bootselect для создания на USB накопителе MBR с кодом загрузчика BOOTMGR.

Если делается загрузочный накопитель на платформе Windows XP, то в этом дистрибутиве нет такой папки с обращением к bootselect. В таком случае последнюю команду не следует выполнять, вполне достаточно команды чуть выше (active) при условии, что флешка уже имеет структуру MBR.

Если флешка имеет иную структуру, то попробуйте подцепить в командной строке папку семёрки, а на саму флешку запишите Windows XP.

Rufus — программа по созданию загрузочных флеш-накопителей

Rufus – это простейшая бесплатная программа предназначенная исключительно для создания загрузочных флеш-накопителей.

Скачать Rufus с официального сайта. Для удобства скачайте portable версию, она не требует установки и сразу доступна для работы.

В окне запущенной программы Rufus выберите ISO образ Windows XP к примеру (не важно), для этого щелкните на иконку дисковода (подробнее показано на скриншоте) и только потом произведите следующие настройки:

  • Устройство: выберите флеш-накопитель на который будут записаны установочный файлы операционной системы Windows 10 или иной версии;
  • Схема раздела и тип системного интерфейса: выберите MBR или GPT. GPT – это новая технология и работает она только на Windows 64 bit системах. Аппаратура компьютера также должна быть оснащена новейшим набором микропрограмм UEFI. Если у вас старенький компьютер на базе BIOS вместо UEFI, то железо компьютера попросту не поймёт данную архитектуру. Для BIOS нужно выбрать — MBR, для UEFI – то или другое, в зависимости от разрядности системы на 32 или 64 bit;
  • Файловая система: обязательно ставить FAT32 т.к. новые технологии UEFI в не заметят флешку в настройках и не смогут загрузиться. Старенький BIOS поддерживает обе платформы;
  • Новая метка тома: по желанию можно задать имя флеш0накопителя. Его название будет отображаться при заходе в Мой Компьютер;
  • Ставим еще 3 галочки напротив: быстрое форматирование, создать загрузочный диск, создать расширенную метку и значок устройства.

Остальное можно не трогать.

Как сделать загрузочную флешку при помощи UltraIso

Еще одна программа по работе с ISO образами Windows. UltraIso также способна сделать загрузочную флешку активной, для того чтобы иметь возможность загружаться с под dos. Всё это делается через встроенный Write Disk Image.

Откройте ISO образ Windows комбинацией клавиш Ctrl + O.

Перейдите в раздел Самозагрузка пункт меню «Запись образ Жесткого диска»:

В открывшемся окне Write Disk Image произведите настройки:

  • Disk Drive: выбор флешки;
  • Файл образа: путь к iso файлу;
  • Форматировать: отформатируйте флешку;
  • Запись: начните записывать образ загрузочной флешки.

Все пункты нужно выполнять последовательно.

Загрузить систему с USB-накопителя довольно просто. Для этого нет никакой необходимости заходить в UEFI BIOS, ведь существует более простой способ.

Инструкция для BIOS:

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

На данном скриншоте видно, что для захода в BIOS нам необходимо нажать на клавишу Delete. Но нас интересует как зайти в Boot меню напрямую. Обратите внимание на выделенный красным квадрат где изображена клавиша по входу в Boot меню.

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

Также вы можете узнать данные быстрые клавиши из инструкции к вашей материнской плате или поискать данную информацию в сети интернет.

У вас есть несколько секунд чтобы нажать (или зажать) на кнопку по заходу в Boot меню.

Из списка Boot меню выберите загрузку с USB-накопителя и нажмите Enter.

Готово. В данном случае это флешка Transcend.

Инструкция для UEFI:

Нет никакого отличия UEFI от BIOS для захода в меню Boot. Делаем тоже самое что и в предыдущей инструкции. Также смотрим какое сообщение нам выскакивает на экран монитора, немедля жмем нужную клавишу для захода в Boot меню.

Но обратите внимание на то, что для материнской платы ASUS на экране выскакивает сообщение неполного характера, нам предлагают только вход в UEFI. Но ничего, попробуем зайти в UEFI, а немного ниже уже попробуем разобрать как можно зайти напрямую в Boot.

Нажимаем Del или F2:

Теперь в UEFI BIOS переходим в меню Boot и прокручиваем все настройки в самый низ. Ищем настройку «Boot Option #1», именно первый номер. Де показано стрелочкой, выбираем из списка свою флешку.

Таким образом первый по счету будет идти загрузка с флешки, а на втором месте операционная система Windows. Для завершения настроек нужно нажать клавишу F10 и подтвердить сохранение, после чего компьютер автоматически перезагрузится.

Если на экране нет инструкции по заходу напрямую в Boot:

Ничего страшного, просто почитайте инструкцию к своей материнской плате или поищите в интернете какие кнопки отвечаю за данное действие.

Для моделей ASUS это обычно клавиша F8:

Настройка BIOS для установки Windows XP

Перед установкой Windows XP с флешки, следует обратить внимание на очень важный параметр режима работы контроллеров жесткого диска. Контроллер жестких дисков может работать в нескольких режимах.

Для установки Windows XP рекомендуется использовать режим IDE т.к. программа установки может просто не увидеть вашего жесткого диска. Для установки Windows 7 и более современной версии рекомендуется использовать режим AHCI.

Перейдите в пункт меню Main- Storage Configuration:

Выбираем нужный контроллер. Для XP это – IDE, для более новых версий установки обязательно ставим AHCI.

По завершению настроек нужно сохранить изменения нажатием на F10.

Если компьютер не загружается с флешки

Иногда в редких случаях на некоторых компьютерах требуется на время загрузки с флешки поменять совместимость аббревиатур. Для этого нужно переключиться с UEFI Boot в режим совместимости CSM Boot либо Legacy BIOS.

Но чтобы это сделать, следует посмотреть не заблокирован ли выбор других аббревиатур. Для этого перейдите в пункт меню «Security- Secure Boot», нажмите Enter и сделайте выбор переключателя в положение Disabled.

Теперь мы разблокировали выбор аббревиатур. Но чтобы выбрать другую аббревиатуру для разных UEFI BIOS, делается данная процедура по-разному.

Для некоторых систем выбор аббревиатур находится здесь:

Advanced- System Configuration

Для других же систем может находится прямо в пункт меню:

Boot- UEFI/BIOS Boot Mode Вам необходимо поменять UEFI Boot на любой другой совместимый режим загрузки: CSM Boot, Legacy BIOS и.т.д. Также можно посмотреть описание пунктов в правой колонке, поискать там подобные слова чтобы найти нужную настройку, не прибегая к знаниям английского языка.

После отключения режима UEFI в пользу режима совместимости CSM Boot, все загрузочные флешки загружаются без проблем.

После работы с флешкой обязательно верните настройки UEFI к исходному состоянию чтобы всё работало корректно как раньше и опять загружалась операционная система.

Заключение

В данной статье было приведено много примеров различных вариантов по созданию загрузочных флеш накопителей и последующей настройки UEFI BIOS для корректной работы при установке, а также чтобы обезопасить себя от непредвиденных случайностей, которые виной тому служат некоторые моменты, которые мы с вами рассмотрели.

Все описанные варианты по созданию загрузочной флешки работают с любой версией операционной системы Window 7, 8, 8.1, 10, XP.

Источник: https://26pk.ru/fleshki/kak-sdelat-zagruzochnuyu-fleshku

Всё о MBR, Boot-Record, Геометрии дисков (флешек)

Как сделать флешку mbr

Всё о MBR, Boot-Record, Геометрии дисков (флешек)

Так уж исторически сложилось, что после покупки флеш-брелков они форматируются как FDD, тобишь большая дискета. Ну и стандартные процедуры форматирования (по крайней мере та же WinXP) делают тоже самое, считают устройство дискетой и форматируют как дискету. Это важно! По сравнению с HDD дискета НЕ ИМЕЕТ MBR, таблицы разделов, а по первому сектору находится Boot-Record. Соответственно загрузиться с такого устройства можно ТОЛЬКО в режиме эмуляции FDD и все, других вариантов нет. А чтобы получить загрузочное устройство – нужно просистемить (вписать Boot-Record) дискету, т.е. загрузчик помещается в первый сектор.
Т.к. вам в большинстве случаев усиленно хочется установить grub4dos в MBR, то все очень просто – нет MBR, нет конфетки. Т.е. фигушки. Такое грузиться не будет ни при каких обстоятельствах. При необходимости получить именно загрузочную USB-дискету – вписывать загрузчик нужно в Boot-Record!!! И только в него. Но это не все, нужно будет также поправить grldr (HEX-edit'ором) или пересборкой grldr из исходников, с целью исключить из встроенного меню строку игнорирования поиска menu.lst с дискет. Прочитать вышенаписанное 100 раз и осознать раз и навсегда. После осознания приходит логический вывод, лучше использовать режим эмуляции HDD, на котором я более подробно и остановлюсь.

Для начал читать тут:

загрузочная запись
MBR под микроскопом
Master Boot Record (MBR)
Традиционная логическая структура жёсткого диска
Логическая структура жесткого диска

Если осилили, то значит уже сделан большой шаг))). Как вы (я надеюсь) уяснили структуры организации FDD и HDD существенно отличаются и следовательно нет какого-либо иного способа получить USB-HDD, кроме как воссоздать структуру HDD на флешке.

Вот тут и начинается самое интересное.

Заботясь о том, что пользователи бараны и не знают о том чего они хотят, Microsoft позаботилась о том, чтобы вы не смогли создать HDD-организацию данных, если устройство видимое Windows считается флопиком.

Какой можно найти выход из сложившейся ситуации?

1. Сказать операционке, что она работает с HDD и нивалнует)))
Hitachi Microdrive
После чего можно обычными методами бить флешку на разделы, форматировать и все будет хорошо.

2. Создать структуру через сторонние программы, которым пофигу то, что думает по поводу типа носителя Windows
HP USB Disk Storage Format Tool (HPUSBFW_Special)
Но другой вопрос насколько верно подобные утилиты воссоздают структуру и геометрию диска.

3. Сделать все ручками. Описывать не буду, слишком многа букаф.
Исходя из того, что структура размещения служебных данных меняется – нет безболезненного способа смены вида носителя HDDFDD без потери данных, т.к. многое нужно пересчитывать. Теоретически такую программу сделать можно, но нафиг никому (из тех кто знает как) не нужно.

Вот тут встает еще один интересный вопрос:

А чем поглядеть – правильно ли созданна структура служебных областей? Есть ли MBR? Что с Boot-Record? Как поживает Partition Table и все ли нормально с геометрией?
Вот вам ряд программ (ссылки давать не буду, искать лениво, гугл вам в помощь):

1. Acronis Disk Director
2. Paragon Partition Manager
3. WinHEX
4. Да в принципе что угодно, что позволит как минимум поглядеть в HEX-виде различные сектора диска, а в иделе сможет показать дешифрованную информацию, т.к. читать HEX-коды можно, но неудобно.

Итого, только в том случае, если вы знаете, что флешка со структурой данных HDD-типа, имеет смысл устанавливать grub4dos в MBR!!!
Ну где должен жить MBR вы уже в курсе? В первом секторе))), там где на FDD вместо этого живет Boot-Record.

Интересуют именно 512 байт. Если представляете что и как – достаточно одного взгляда, чтобы точно и определенно сказать (поглядев в HEX-код) MBR перед вами или BR (Boot-Record).
Кстати, таблица разделов живет в тех же 512 байтах, т.е.

настоятельно не рекомендую ручками переносить этот сектор с другого винчестера))). Править таблицу в таких случаях надо. Акронисы и некоторые другие программы умеют сами пересчитывать таблицу размещения, так что пользуйтесь ими.

На всякий случай, в очередной раз: прописать стандартную MBR можно:

1. Через консоль восстановления (fixmbr)
2. Из под Win98/Dos (fdisk /mbr) 3. Сторонними программами 4. Из предварительно созданной копии (тупо скопировать 512 байт в первый сектор) 5.

Из любого другого MBR (но потом поправить Partition Table)

При этом предпочтение нужно отдавать более новым версиям MBR (Master Boot Record – тока щаз догадался, что до сих пор не расшифровал), т.к.

они местами отличаются…

Назначение стандартного MBR достаточно простое – предварительная загрузка, определение активного раздела, передача управления на Boot-Record активного раздела.

Нестандартные MBR могут делать свои действия, и нестандартных MBR много))), практически все загрузчики пишутся в MBR перенакрывая стандартную функциональность и расширяя ее своей (grub4dos не исключение)

Но тут есть еще ряд проблем:

1. А фиг его знает как и что BIOS читает с MBR при старте с устройства или же BIOS может быть “заточен” под стандартный MBR и ниче другое (т.е. могут быть проблемы) 2. Тупо могут быть ошибки в коде нестандартного MBR (grub4dos тоже этим грешит, ошибки правятся, и не факт, что их сейчас нет или не появятся новые)
3. Пресловутая геометрия, о которой будет чуть ниже (и позже).

Достоинства помещения grub4dos или иного загрузчика в MBR – в большинстве случаев не нужен Boot-Record, т.е.

он может быть поврежден или отсутствовать, при этом загрузчик сможет все равно работать (как пример: chainloder /ntldr – загрузка непосредственно лоадера { да, да…

это тоже загрузчик))) } ntldr минуя Boot-Record)
Ну и еще одно достоинство – вроде как просто все это… и достаточно хорошо документировано.

Далее по программе непонятное слово “геометрия” применительно к дискам (флешкам). Перечитать еще раз (а лучше несколько раз)

Загрузочная Запись – Master Boot Record (MBR)

Когда компьютеры были маленькими, а о законе Мура особенно никто не задумывался, тогда была CHS))), и хотя щаз LBA, но наследие прошлого осталось. Кстати, человеку свойственно на одни и теже грабли наступать неоднократно, вот тому подтверждение:
LBA-48
Короче говоря, так уж исторически сложилось, что некоторые вещи поменять нельзя, и хоть есть более логичные и казалось бы очевидные способы адресации все до сих пор завязано на CHS (Cylinder-Head-Sector), т.е. цилиндр, головка, сектор. И даже не думайте искать на флешке цилиндры с головками. Биосу побарабану, они должны быть и они есть))).
Теперь вернемся к флешкам. Дело в том, что количество ячеек памяти на флеш-памяти конечно и дешифратор работает тоже с определенным набором адресов (ну с поправкой на блочный принцип доступа). Про трансляции рассказывать не хочу, да и это не важно. Просто уясните один факт: в MBR все в CHS, с учетом LBA-адресации и цифери должны быть там правильные, т.к. при попытке доступа за пределы флешки – ничего хорошего из этого не получится. Более того, правильная геометрия нужна: для старта некоторых операционных систем, для правильной работы загрузчиков и менеджеров, для корректной работы программ модифицирующих ФС и разделы. Но в тоже время, некорректная геометрия не обязательно приведет к тому что у вас не будет грузиться что-либо))). Тут все зависит от того как повезет, как BIOS отработает и какую операционку вы стартануть пытаетесь. Отчего возникают проблемы с геометрией? Дык напомню, изначально имелась флешка размеченная как флопик, а вы пытаетесь сделать из нее HDD (где как минимум есть смещение на границу головки для выравнивания, согласно некоторых стандартов, для примера 63 сектора [хотя не факт, может меняться]). Ну и далее вся пляска начинается от объема флешки, где высчитывается количество получаемых секторов, и расчитываются границы раздела.

Дык вот, после пересчета некоторыми программами (аля форматерами) вполне может получится что значения CHS “вылазят” за пределы флешки или наоборот не дотягивают до конца, и как итог: получаем CHSLBA разной степени тяжести. А они должны быть равны.

Что тут можно сделать?

1. Вручную пересчитать))) размер раздела и скорректировать таблицу так, чтобы все совпадало. Тяжело, но можно. Формулы пересчета глядеть по ссылке выше.
2. Воспользоваться чем-нить, что сделает расчеты для вас))). Ну как пример я знаю Partition Magic (есть на том же Хирене). Т.е.

алгоритм действий (дубово простой, но рабочий): а) Сначала уменьшаем последний (или единственный раздел) в каком-нить Акронисе или Парагоне б) Загружаем Parition Magic и в нем расширяем до конца диска

Если не сделать шаг a) то Parition Magic при старте скорее всего ругнется на левую геометрию и попробует ее починить))). Иногда он чинит насмерть :).

Если же вы подсунете уменьшенный раздел, то ругаться не должен, а растянет его корректно.

Да, кстати, про LARGE-адресацию забудьте. Это был неудачный мутант, которого сейчас найти проблематично.
И напоследок, в grub4dos последних версий появились дополнительные параметры к команде geometry –tyne –sync (рекомендую ознакомиться).
И как итог: надеюсь после прочтения этой части вы точно можете сказать что у вас все впорядке с геометрией???

Таааак… Ну будем считать что на данном этапе у вас диск с правильной HDD-структурой и правильной геометрией диска.

Далее размышлизмы по поводу загрузчиков…

Как уже писалось выше grub4dos в MBR может давать весьма странные эффекты на некоторых компьютерах (ошибки BIOS, ошибки grub4dos, ошибки User'а), посему моя личная рекомендация: оставьте MBR родным!!! Нефиг там делать grub4dos.

Но всеже перечислю варианты их плюсы и минусы:

1. grub4dos в MBR. “+” – относительная простота установки, практически все утилиты пытаются его именно туда запхать, исключены промежуточные этапы в загрузке, т.е. Boot-Record раздела в принципе не нужен;

“-” – возможны проблеммы с совместимостью на материнках с кривым биосом.

2. Стандартный MBR и grub4dos в Boot-Record. “+” – гораздо бОльшая совместимость с оборудованием,

“-” – более тяжело его туда вписать, необходимость контроля того чтобы загрузчик находился в активном разделе (критично если на флешке несколько разделов), выполняется двухэтапная загрузка MBR->Boot-Record.

3. Стандартный MBR и стандартный Boot-Record.
“+” и “-” практически все относящееся к пункту 2. Единственное, что grub4dos еще дополнительно нужно прописывать в boot.ini (плюс нужен ntldr в корне флешки) если загрузочный сектор у вас от NT, если от Win9x/Dos то лучше не морочить голову и вписать от NT )))

4. Стандартный MBR и патченый стандартный Boot-Record от NT.
Все то что для пункта 3, только можно обойтись без ntldr и boot.ini (патчится сектор на предмет замены ntldr на grldr), уточню, что просто переименовывать файл grldr в ntldr с неизменным загрузочным сектором не желательно. Может глючить.

5. Извращения типа Plop в MBR -> Grub4dos в Boot-Record и еще какая-нить хрень прикручена… (рассматривать извращения не буду: многабукаф,глюкаф и прочих особенностей).

Я просто не в состоянии расмотреть все комбинации установки и предугадать все нюансы ваших действий, поэтому следующая часть в картинках будет о том, как сделать работающую флешку по наиболее рабочему (на мой взгляд) методу используя то что есть под рукой (для того чтобы можно было показать в картинках).

Источник: http://greenflash.su/publ/4-1-0-57

MBR для флешки своими руками или как сделать из одного устройства три

Как сделать флешку mbr

Мое почтение читающему! Топик мог бы получиться просто катастрофически огромным, поэтому перейдем сразу к делу. Впереди вас ждет рассказ, о том, как можно одну флешку сделать одновременно загрузочной как для ОС семейства Windows, так и *nix, а также сделать из нее live-usb. Заранее прошу прощения за жаргон, не сторонник, но так короче.

Аннотация

Как-то пришлось много раз подряд устанавливать на одну и ту же машину кучу разных операционных систем, как от товарищей господ из Майкрософт, так и любимых всеми нами *nix`ов. При этом инсталляторы вновь устанавливаемых ОСей периодически терли загрузчики ранее установленных, так что приходилось их восстанавливать вручную, загружаясь с live-usb.

Но самое ужасное, что при всем при этом под рукой была всего одна флешка (и еще 15 компьютеров правда, но толку от них было мало, так как разбирать их по причинам гарантии в надежде на лишний жесткий диск было нельзя). Флешка к счастью была большого объема.

Вот тут-то и возникла идея сделать из одной флешки две, а лучше три (хотя можно и 4) разных девайса.

Немного теории

Как сделать из одной флешки несколько с целью последующей установки на нее одновременно нескольких установщиков ОС и еще live-операционки? Ответ очевиден — сделать на флешке несколько разделов!

Покопавшись в интернете глубинах подсознания вспомнил из институтского курса, что информация о разделах хранится в первом секторе диска флешки, называющемся Master Boot Table (MBR), а точнее в отдельной его части, называемой partitions. Находится эта часть по смещению 0x01BE и представляет собой 4 поля по 16 байт, каждое из которых представляет собой запись об отдельном разделе. При этом в принципе возможно на одном устройстве иметь и большее количество разделов, но это сложнее и нам для флешки хватит и четырех.

Инструментарий

В форточных ОС существует неприятное ограничение на количество разделов флешки. Оно не должно превышать 1. Точнее разделов может быть сколько угодно, но ОСь будет видеть только первую из записей в partitions.

Собственно это и определило выбор средств для форматирования флешки.

Будем работать с линуксовым fdisk`ом!

Сам загрузчик будем писать на FASM`е, так как для программирования кода, выполняющегося вне ОС он наиболее удобен на мой взгляд.

Работать с флешкой в виде блочного устройства можно с помощью ужасной destroy data (dd), но раз уж тут выходит такая мешанина операционок, то воспользуемся более дружественной оконной DMDE.

Краткое лирическое отступление

На самом деле особенность работы ОС семейства Windows с флешками позволяет используя предлагаемую мной технологию абсолютно безболезненно по отношению к дальнейшему использованию флешки в качестве ординарного накопителя данных. Отрезав от имеющихся у меня в наличии 16 GB парочку в конце, я стал обладателем 14-гиговой флешки, работающей с точки зрения винды как и прежде (т. е. другие разделы были не видны), но при этом при попытке загрузки с нее из BIOS позволяющей устанавливать ОСи из двух гигабайтных разделов, созданных в конце.

Зубофлешко-дробильный аппарат

Начнем с самого простого, разметим файловую систему на нашей флешке. В частности я использовал флешку Transcend JetFlash 16 GB (была получена в качестве подарка, а дареному коню как известно… Хотя нареканий в ее адрес у меня за 1,5 года использования нет).

Как я уже говорил, пользоваться будем линуксовым fdisk`ом (под рукой оказалась старенькая виртуальная машина Ubuntu 9). Итак, монтируем флешку (так как сидим под X-ми, то просто втыкаем ее в порт). Получаем устройство /dev/sdb. Запускаем fdisk, натравив его на новое устройство: root@kubuntu:/# fdisk /dev/sdb Имеем выхлоп:The number of cylinders for this disk is set to 1953.

There is nothing wrong with that, but this is larger than 1024,and could in certain setups cause problems with:1) software that runs at boot time (e.g., old versions of LILO)2) booting and partitioning software from other OSs (e.g.

, DOS FDISK, OS/2 FDISK) Command (m for help): mCommand action a toggle a bootable flag b edit bsd disklabel c toggle the dos compatibility flag d delete a partition l list known partition types m print this menu n add a new partition o create a new empty DOS partition table p print the partition table q quit without saving changes s create a new empty Sun disklabel t change a partition's system id u change display/entry units v verify the partition table w write table to disk and exit x extra functionality (experts only) Считаем, что диск чистый и не содержит ни одного раздела. В противном случае командой d исправляем этот недостаток (не забыв скопировать нужные данные заранее). Задача проста — создать три раздела. Разделы будем создавать основные (primary), чтобы вся информация о них хранилась в partitions MBR`а. Воспользуемся командой n. Первый раздел самый большой (14 ГБ), так как его потом будет видеть Windows, и его будем использовать в качестве обычной флешки:Command (m for help): nCommand action e extended p primary partition (1-4)pPartition number (1-4): 1First cylinder (1-15320, default 1): 1Last cylinder or +size or +sizeM or +sizeK (1-15320, default 15320): +14336M Второй и третий по гигабайту:Command (m for help): nCommand action e extended p primary partition (1-4)pPartition number (1-4): 2First cylinder (13674-15320, default 13674):Using default value 13674Last cylinder or +size or +sizeM or +sizeK (13674-15320, default 15320): +1024M Command (m for help): nCommand action e extended p primary partition (1-4)pPartition number (1-4): 3First cylinder (14652-15320, default 14652):Using default value 14652Last cylinder or +size or +sizeM or +sizeK (14652-15320, default 15320):Using default value 15320 Проверим полученные результаты, распечатав сформированную таблицу разделов командой p:Command (m for help): p Disk /dev/sdb: 16.0 GB, 16064184320 bytes64 heads, 32 sectors/track, 15320 cylindersUnits = cylinders of 2048 * 512 = 1048576 bytesDisk identifier: 0x0dee0000 Device Boot Start End Blocks Id System/dev/sdb1 1 13673 14001136 83 Linux/dev/sdb2 13674 14651 1001472 83 Linux/dev/sdb3 14652 15320 685056 83 Linux Как видим имеем три раздела: 14 ГБ, 1ГБ и остатки (чуть меньше гига). Остается сохранить полученные изменения командой w:Command (m for help): wThe partition table has been altered! Calling ioctl() to re-read partition table.Syncing disks.root@kubuntu:/# Отключаем флешку от виртуальной машины и моментально лицезреем всплывающее окошко следующего вида: Видно, что флешка стала восприниматься Windows, как устройство значительно меньшего размера. Что ж, форматируем! Получаем первый раздел, готовый к использованию. Но что делать с двумя другими? Первое, не факт, что самое умное (но главное, что рабочее!), что пришло на ум — это обмануть старушку Windows и поменять местами записи в таблице разделов. Итак, воспользуемся программой DMDE, откроем флешку, как блочное устройство и покопаемся в байтиках загрузочного сектора. Выбрали подходящее по размеру устройство. Открыли его и первое, что видим — это таблицу разделов, разбитую по полям. Не устраивает, лезем к сырым байтам. Нажимаем F2 и видим содержимое MBR. Помним, что partitions (записи о разделах) хранятся с 446 байта. Красным выделена запись о первом разделе. Далее делаем ход конем! Сохраняем все три записи куда-нибудь в блокнотик, а на место первой записи записываем вторую (crtl+e, записываем, ctrl+w сохраняем). Закрываем DMDE, перетыкаем флешку и… бинго! Видим следующее окошко: Windows на этот раз увидела второй раздел в гигтар размером. Потираем руки и форматируем. Как не сложно догадаться, далее стоит на место первого записать третий, а на место второго скопировать с первого. Снова отформатировать и вернуть полученную запись на третью позицию (не забываем, что записи 16 байт, а при форматировании меняется байт идентификатора файловой системы). На последнем шаге возвращаем из блокнотика на место первую запись. В результате, если подмонтировать такую флешку к Ubuntu, получим три разных раздела, а в случае Windows — только один — первый. Способом, аналогичным способу форматирования разделов, на флешку легко устанавливаются всевозможные операционки. Я на свою установил следующие:

  • Раздел 1 (14 ГБ) — установщик Windows 7 (+ также используется как обычная флешка)
  • Раздел 2 (1 ГБ) — live-usb Windows (bartPE)
  • Раздел 3 — live-usb Linux (backtrack)

А где же код?

Что дальше? Имеем прекрасную флешку с тремя операционками и… огромным минусом! Чтобы после загрузки BIOS компьютер начинал грузиться с флешки, один из ее разделов должен быть активным (значение первого байта в записи partitions 0x01).

Легко, скажите вы, воспользуемся все той же любимой DMDE. Возможно, но тут сталкиваемся с очередной проблемой — что, если мы часто меняем мнение по поводу того, с какого раздела флешки грузиться? Не редактировать же каждый раз таблицу разделов из DMDE вручную.

Конечно нет, автоматизируем этот процесс!

Еще немного теории

Из чего состоит MBR? MBR — это загрузчик + запись таблицы разделов.

После того, как микропрограмма BIOS проверит компьютер (POST), она производит копирование первого сектора диска, с которого предполагается проводить загрузку операционной системы в память по адресу 0x7С00 (процессор работает в реальном режиме адресов) и передает туда управление.

Далее кодом загрузчика MBR (все, что до 446го байта) осуществляется проверка готовности диска, проверка записей таблицы разделов (активной должна быть только одна!) и выбор активного раздела с последующей передачей управления загрузчику ОС.

Что сделаем мы

Чтобы избавиться ограничения на количество одновременных активных разделов на диске подменим код загрузчика из MBR своим собственным, который будет проверять записи, находить отмеченные как активные и ждать от пользователя нажатия клавиши с цифрой, соответствующей номеру раздела, с которого стоит производить загрузку.

Как я уже говорил, код будем писать на FASM (а отладка осуществлялась в Bochs). Далее представлен листинг без особых пояснений, иначе топик никогда не закончится. Хотелось бы только отметить, что так сложилось, что это моя первая программа на ассемблере, поэтому не судите строго. Что делает код было описано выше.

;регистр dl cодержит номер загрузочного диска! use16;======== Копируем самого себя по адресу 0000:0600h =================== mov ax, 7C0h mov ds, ax xor si, si mov ax, 60h mov es, ax xor di, di mov cx, 0FFh ;в cx лежит число повторений функции копирования слов ;[DS:SI] => [ES:DI]; SI += 2; DI += 2; rep movsw ;Передаем управление на новое расположение кода jmp 0000:0618h ;======== Приветствуем пользователя =================================== mov ax, hello_msg_1 call print mov ax, hello_msg_2 call print ;======== Проверяем таблицу разделов =================================== mov si, [part_adr] mov bh, 80h mov cl, -1partitions_chek: cmp cl, 3 ;если уже было проверено 4 записи, выходим из цикла и переходим к обработке записей je partition_select add si, 10h inc cl mov bl, [es:si] cmp bl, bh jne partitions_chek ;запись не является загрузочной call partitions_process ;запись загрузочная! ;[es:si] содержит адрес записи в таблице разделов ;cl – номер раздела jmp partitions_chek ;======== Подпрограмма вывода инофрмации об активном разделе =============================partitions_process: mov ax, boot_part_msg call print mov di, part_num add [ds:di], cl mov ax, part_num call print sub [ds:di], cl mov di, boot_flags mov ch, 0 add di, cx mov byte[ds:di], 1 ret;;======================================================================= partition_select: ;Обрабатываем пользовательский ввод mov ax, select_part_msg call print choise: mov di, boot_flags mov si, [part_adr] mov ah, 0 int 16h p0: cmp al, 48 jne p1 add si, 10h jmp disk p1: cmp al, 49 jne p2 add si, 20h jmp disk p2: cmp al, 50 jne p3 add si, 30h jmp disk p3: add si, 40h cmp al, 51 je disk wrong_choise: mov ax, wrong_input_msg call print jmp choise disk: mov ah, 0 sub al, 48 ; сначала проверка, выбрал ли пользователь действительно загрузочный раздел add di, ax cmp byte [ds:di], 0 je wrong_choise ; по [es:si] содержится запись таблицы разделов ; о выбранном загрузочном диске mov ah, 41h ; проверка поддержки диском расширенного режима (> 8 GB) ; dl содержит номер диска mov bx, 55AAh int 13h jc ext_not_present_error shr cx, 1 jnb ext_not_present_error cmp bx, 0AA55h je read_boot_sect ext_not_present_error: mov ax, ext_not_pres_msg call print int 18h read_boot_sect: mov ah, 42h mov di, DAP_structure add di, 8 add si, 8 mov ebx, [ds:si] mov [ds:di], ebx mov si, DAP_structure int 13h jc ext_not_present_error jmp 0000:7C00h;======== Подпрограмма вывода сообщений ================================print: push si push bx mov bx, ax xor si, si mov ah, 0Eh p: mov al, [bx + si] cmp al, 0Ah int 10h je end_print inc si jmp p end_print: pop bx pop si ret ;=======================================================================hello_msg_1 db '************************', 0Dh, 0Ahhello_msg_2 db '*WELL`s LOADER (c) 2011*', 0Dh, 0Ahboot_part_msg db 'Find bootable partitions:', 0Dh, 0Ahselect_part_msg db 'Select part to boot from (press 0 … 3)', 0Dh, 0Ahwrong_input_msg db 'Wrong choise. Try again', 0Dh, 0Ahext_not_pres_msg db 'a disk read error occured', 0Dh, 0Ahpart_num db '0', 0Dh, 0Ahpart_adr dw 1AEhboot_flags db 4 dup (0)DAP_structure db 10h, 0, 1, 0, 0, 7Ch, 0, 0, 8 dup (0) Как видно, программа загрузчика представляет из себя чистый бинарник без всяких точек входа, секций и прочей сложноты. Режим работы процессора — реальный (16-разрядный). Чтобы использовать этот загрузчик, его необходимо залить на флешку в первый сектор (с помощью DMDE, например), при этом сохранив нетронутой таблицу разделов. Размер скомпилированного бинарного файла 442 байта.

Перспективы

Источник: https://habr.com/ru/post/122699/

Ошибка «No bootable device insert boot disk and press any key» или как создать универсальную загрузочную флешку, совместимую как с Legacy, так и с UEFI, с помощью программы Bootice

Как сделать флешку mbr

Письмо от читателя:

Здравствуйте, админ.

Прочитал вашу статью о создании загрузочной флешки с Windows 10, буквально на следующий день купил новую флешку, форматировал её в FAT32 и точно так, как показано в вашей статье скопировал на неё все файлы Windows 10, затем перезагрузился, и вошёл в загрузочное меню своего компьютера, выбрал для загрузки флешку, но загрузки с флешки не произошло, на экране монитора вышла ошибка «No bootable device insert boot disk and press any key» другими словами «Отсутствует загрузочное устройство». Что интересно, попытался с этой же флешки загрузить ноутбук с БИОСом UEFI и попал в программу установки Windows 10, то есть флешка всё-таки загрузочная! Ещё раз проверил флешку на другом обычном компьютере и с флешки не удалось загрузиться. Не могу понять, в чём же дело? Где-то на вашем сайте Владимир объяснял причину, но не найду такой статьи.

Привет всем! Меня зовут Владимир и я отвечу на этот вопрос. В статье “Как создать загрузочную флешку с Windows 10” админ написал, что для создания флешки достаточно скопировать файлы образа Windows 10 на накопитель и флешка автоматически станет загрузочной. Для компьютеров с включенным UEFI это так. Для компьютеров с обычным BIOS или выключенным интерфейсом UEFI это не так. Коротко объясняю почему, уверен, вы всё поймёте. Установку операционных систем Windows (от Vista до 10) запускает загрузчик BOOTMGR, который находится в, скопированном на флешку, дистрибутиве. Но флешку BIOS видит как HDD. И чтобы BIOS передал управление загрузкой нашему BOOTMGR, на флешке должна быть создана MBR c кодом загрузчика BOOTMGR (Windows NT 6.x) и активный раздел с PBR (загрузочной записью раздела) BOOTMGR.

При обычном форматировании флешки средствами Windows (в файловую систему NTFS или FAT32) PBR станет BOOTMGR, а MBR какой была до форматирования такой и останется (то есть новая флешка не будет загрузочной после простого копирования на неё файлов Windows 10).

У админа получилось потому, что он всё проделал на старой флешке, когда-то уже бывшей загрузочной и на ней были ранее установлен нужный код и раздел был активный. Обновить коды и сделать раздел на флешке активным можно и после копирования файлов Windows на флешку.

Сделать это можно двумя способами: с помощью утилиты Bootice, а также командной строки. Показываю оба способа.

Обновляем коды и делаем раздел на флешке активным с помощью утилиты BOOTICE

Итак, поставим себя на место нашего читателя. Подсоединяем новую флешку к компьютеру и форматируем её в файловую систему FAT32,затем копируем на неё содержимое ISO-образа Windows 10.

Файлы Windows скопированы на флешку.

Если у вас новый ноутбук с включенным интерфейсом UEFI, то ноутбук прекрасно загрузится с этой флешки, но если UEFI отключен или вы пытаетесь загрузить обычный компьютер с простым BIOS, то появится ошибка при загрузке «No bootable device insert boot disk and press any key». Открываем утилиту WinSetupFromUSBвыбираем в списке накопителей нашу флешку и жмём на кнопку Bootice.

Выбираем в списке нашу флешку. Жмём Parts Manage.

Как видим, на флешке нет активного раздела (в пункте Act. отсутствует буква A).

Создаём активный раздел на флешке. Выделяем флешку левой мышью и жмём кнопку Activate. 

В пункте Act. появляется буква A).

Close

Жмём Process PBR.

На флешке должен быть активный раздел с PBR (загрузочной записью раздела) BOOTMGR. Отмечаем пункт BOOTMGR boot record, нажимаем Install /Config Close.

Жмём Process MBR

На флешке должен быть активный раздел с MBR c кодом загрузчика BOOTMGR (Windows NT 6.x). Отмечаем пункт Windows NT 5.x/6.x MBR, нажимаем Install /Config Close.

Exit

Всё! Теперь с этой универсальной флешки можно загрузить любой компьютер или ноутбук с включенным интерфейсом UEFI или простым BIOS. 

Альтернативный способ с использованием вместо Bootice командной строки 

Обновляем коды и делаем раздел на флешке активным с помощью командной строки. Активным раздел делается с помощью diskpart:

diskpart

lis vol

sel vol 6 (6 номер тома флешки, в вашем случае может быть другим).

active

Ещё загрузочные коды можно обновить с помощью консольной bootsect:

bootsect /nt60 x: /mbr

x буква флешки

В Windows 7 запустить утилиту можно из дистрибутива смонтированного в виртуальный привод, команда:

y:\boot\bootsect /nt60 x: /mbr

y буква привода.

Можно использовать и команду:

x:\boot\bootsect /nt60 x: /mbr

Коды будут обновлены, но будет сообщение что код обновлён ненадёжно, так как при обновлении кода не был отключён диск.

Вот и всё.

Метки к статье: Флешка Флешка UEFI и Legacy WinSetupFromUSB

Источник: https://remontcompa.ru/zagruzochnyy-nositel/page,1,2,816-kak-sdelat-zagruzochnoy-novuyu-fleshku-ili-vse-sekrety-sozdaniya-zagruzochnoy-fleshki-s-windows-7-81-10.html

Поделиться:
Нет комментариев

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

    Ваш e-mail не будет опубликован. Все поля обязательны для заполнения.

    ×
    Рекомендуем посмотреть