После прочтения вопроса AskUbuntu о двухсекционных живых USB-накопителях, вопроса StackExchange о разбиении загрузочных USB-накопителей, форумов Ubuntu о загрузочных USB-накопителях с разделами и многих других ресурсах, которые я потратил в последние 2 дня, не сумев создать то, что мне нужно ,

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

  • раздел данных объемом 28 ГБ, который будет содержать несколько переносимых программ (Open Office, GIMP, шестнадцатеричный редактор и т. д.)
  • раздел 4 ГБ с установленной Kali Linux

Я пытался использовать fdisk, gdisk (GPT fdisk) и встроенный в Mac OS X инструмент создания разделов для создания этих разделов. Я также пробовал различные комбинации выделения блоков, предшествующего свободного пространства, размеров разделов EFI и т.д. Я пытался использовать только MBR, гибридный MBR+GPT и только GPT.

Независимо от того, что я делаю, результаты одинаковы: раздел 28 ГБ виден на всех компьютерах (Mac, Windows, Linux), раздел 4 ГБ виден на компьютере не Windows (Mac, Linux), но нет разделов можно увидеть по BIOS. Я просто не могу загрузиться с него.

Для установки Kali Linux я использую следующую команду с ISO, скачанную с их сайта:

sudo dd if=~/Downloads/kali-linux-2.0-i386.iso of=/dev/disk2s3 bs=1m

Я также пытался изменить файл .iso файл .img соответствии с руководством Ubuntu по установке Linux на флэш-диск, но вместо этого использование этого не имело никакого эффекта.

Я также попробовал несколько руководств здесь, в SuperUser, в том числе это руководство по установке Knoppix со вторым разделом, который ставит Knoppix в первый раздел, и поэтому диск не будет работать в Windows.

Я уверен, что упускаю что-то простое, но я вырываю свои волосы, пытаясь понять, что это такое :) Почему BIOS не видит мою флешку?

Обновить

Еще один день, еще одна попытка.

Посмотрев на форумы и файл .iso я наконец соединил два и два и понял, что файл .iso уже содержит MBR. Запись .iso в раздел была излишней. Однако это вызвало загадку: как написать все .iso кроме MBR?

У меня была интересная идея, которую я попробовал:

  1. Я уничтожил флешку, чтобы вытащить MBR, разделы и т.д.
  2. Я скопировал .iso поверх (используя dd), чтобы он функционировал как обычный 4 ГБ диск Kali Linux
  3. Я использовал fdisk для редактирования MBR ... однако вместо перемещения данных я вывел раздел из списка. Первый раздел вышел из секторов 500000-600000 (не фактические номера секторов, просто пример), второй раздел - из 400000-500000, а третий раздел - из 0-400000 (Kali Linux)
  4. Я пометил третий раздел как загрузочный

Теперь, когда я перезапустил свой Mac с флешкой (удерживая нажатой клавишу Option), я увидел диск! Хотя почему-то сказано "Windows" вместо "Универсальный USB" или что-то еще ... Weird. Но я не ставил это под сомнение. Я нажал на диск и дрожал от волнения! ... До этого:

isolinux.bin missing or corrupt
No bootable device -- insert boot disk and press any key

Видит око да зуб неймет :(

1 ответ1

1

Я пробую то же самое. Я наткнулся на учебник Tlroche, который заставил меня думать, что я все об этом ошибался.

Из этого урока я понял, что мне нужна отдельная MBR на диске. GRUB, установленный там, перечислит файлы .iso которые у меня есть на этом диске. И он не использует dd для установки этих .iso . Это просто копирование самих файлов .iso .

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

# mkdir media/my-looped-iso-dir
# mount -o loop ~/iso-to-mount.iso /media/my-looped-iso-dir

Затем вы можете просмотреть содержимое этого .iso в каталоге /media/my-looped-iso-dir . Поэтому после того, как GRUB2 установит живой .iso он ищет файлы, необходимые для загрузки, а именно - загрузочное ядро Linux (vmlinuz) и образ RAMdisk (initrd.*) Они должны быть указаны в файле grub.cfg который вы должны будете составить самостоятельно (не так сложно, как кажется - примеры в ссылке).

На самом деле, я забираю это обратно. Настройка grub.cfg будет самой сложной частью. Но пример в ссылке обеспечивает хорошую отправную точку. Добавлять особо нечего, просто настройте пункты меню для любых .iso которые вы хотите иметь доступными для загрузки.

Кроме того, вы можете добавить все, что вы хотите в оставшееся пространство (разделить его или нет - до вас). Пакеты .deb , вероятно, были бы моим первым выбором, если бы я использовал только дистрибутивы на основе Debian - и я думаю о том, чтобы иметь такой загрузочный USB, как Kali, Tails и BunsenLabs (ранее Crunchbang). Но двоичные файлы, с полным исходным кодом, что угодно. Иди ветчиной (кроме того, иметь заполненную базу данных keypassx было бы неплохо)

Это тоже хорошо, потому что когда мне нужно обновить файлы .iso , я просто вынимаю старый и вставляю новый. Обновите grub.cfg menuentry и все готово !

РЕДАКТИРОВАТЬ: я забыл упомянуть, что вы будете разметить USB-накопитель и создать там файловую систему. Эта файловая система должна иметь /boot setup для установки grub - # grub2-install (снова пример в ссылке). Убедитесь, что он помечен как загрузочный, и вы должны быть хорошими.

Опять же, это все в ссылке ... так что просто ... я знаю ... прочитайте ссылку!

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .