Arch.iso на флешке. Вернём потеряные гигабайты

а если у меня есть внешний винт в боксе zalman zm-ve300 который умеет монтировать образы на virtual CD/DVD, но вот образ арча он не монтирует, можно ли как нить приспособить? или только флешка и только dd?
Natrio
Можно попытаться сделать гибрид, то есть использовать и GPT, и MBR сразу, чтобы в MBR было видно только раздел с данными
Думаю не выйдет. Нужен первый раздел. А первая запись в MBR занята отметкой GPT-диска. Будет ли GPT без нее нормально работать? ХЗ.
В трех оставшихся записях можно без проблем указать три существующих раздела. Но винда то их не увидит.
Lupus pilum mutat, non mentem.
jim945
Думаю не выйдет. Нужен первый раздел. А первая запись в MBR занята отметкой GPT-диска. Будет ли GPT без нее нормально работать? ХЗ.
В трех оставшихся записях можно без проблем указать три существующих раздела. Но винда то их не увидит.
Может быть, я пока не изучал вопрос методов скрещивания MBR с GPT, потому и оставил этот вариант под вопросом. Другие уже явно не проходят.
Хотя нет. gdisk прекрасно справляется с данной задачей. Создает гибридные gpt mbr таблицы.
Причем в нем можно спокойно первым указать фат раздел. Остальное место можно пометить занятыми gpt.
Только предупреждает, что возникнут проблемы при работе с Маком.
И, из того, что я читал, gparted может обратно затереть mbr. Так что им лучше не пользоваться.
Lupus pilum mutat, non mentem.
Вобщем кому интересно. Разбил флешку. Поставил арч. Grub по вики. Грузится как на bios так и efi.
Recovery/transformation command (? for help): p
Disk /dev/sdc: 30283008 sectors, 14.4 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): 48F52BBE-787C-4486-BA44-A02AB9816A50
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 30282974
Partitions will be aligned on 2-sector boundaries
Total free space is 1247 sectors (623.5 KiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   1            2048          206847   100.0 MiB   EF00
   2          206848          411647   100.0 MiB   8300
   3          411648        17188863   8.0 GiB     8300
   4        17188864        30281727   6.2 GiB     0700
   5              34            2047   1007.0 KiB  EF02  BIOS boot partition
Recovery/transformation command (? for help): o

Disk size is 30283008 sectors (14.4 GiB)
MBR disk identifier: 0x00000000
MBR partitions:

Number  Boot  Start Sector   End Sector   Status      Code
   1              17188864     30281727   primary     0x07
   2                     1     17188863   primary     0xEE
   4              30281728     30283007   primary     0xEE

С efi разделом погорячился. Достаточно 30 мб. Надо будет уменьшить.
Четвертый раздел (Он же первый в MBR) в fat.
Завтра доберусь до XP, проверю как там будет работать.
Lupus pilum mutat, non mentem.
В прошлый раз я что-то протупил насчёт гибрида – в GPT просто зарезервирован начальный сектор под MBR для совместимости, и в этой MBR можно спокойно описать нужный раздел как первый, а остальное место, даже раньше первого раздела – как следующие с кодом 0xEE.

Соответственно, grub-install уже давно привычный к "защитному" MBR-сектору в GPT, то бишь объяснять ничего не надо – груб ставится строго на GPT, и для BIOS (в BIOS boot partition), и для UEFI (в EFISYS).

jim945
С efi разделом погорячился. Достаточно 30 мб. Надо будет уменьшить.
На флешке с отступом первого раздела 2048, я сделал BIOS boot partition на секторах 64-159, и EFISYS на 160-2047, размером в 944К. (Когда-то на дискетах FAT бывала и меньше.) Образ груба EFI/BOOT/BOOTX64.EFI для GPT+vfat имеет размер 114K, так что хватает.
Хотя говорят, некоторые UEFI якобы понимают только FAT32. Может быть.

jim945
И, из того, что я читал, gparted может обратно затереть mbr. Так что им лучше не пользоваться.
По моему опыту, parted/gparted – на редкость глючный комбайн, который замахивается сразу на всё, но ничего не делает толком.

jim945
gdisk прекрасно справляется с данной задачей. Создает гибридные gpt mbr таблицы.
Справляется, подтверждаю. Но не сказать, чтобы прекрасно.

gdisk успешно создаёт "гибридную" MBR, но у него есть два бага – маленький и большой.

Маленький баг состоит в том, что он предлагает для FAT-раздела код 7, который в GPT соответствует любой форточной ФС, но в MBR соответствует только NTFS, и форточка может и не понять, так что надо вовремя его поправить и вместо "7" указать "c".

Большой баг в том, что создавая гибридную MBR, gdisk просит ввести разделённый пробелами СПИСОК номеров разделов из GPT, которые надо отобразить в MBR, но в реальности делает гибрид только для первого раздела в списке, а остальное игнорит.

Ну, и на закуску, ещё одна забавная багофича – gdisk зачем-то предлагает отобразить в MBR раздел EFISYS, причём первым, говоря что это якобы хорошо для груба. (Это неправда, поскольку EFISYS нужен в MBR только при отсутствии GPT). Разумеется, на это нельзя соглашаться ни под каким видом, иначе FAT-раздел с данными, ради которого и затевался гибрид, будет невидим для форточек.


Завтра доберусь до XP, проверю как там будет работать.
Проверил – FAT-раздел успешно видят форточки XP и 7. Осталось убедиться, что будет грузиться в UEFI.
Проверил на XP. Определяется, работает корректно. Место не занятое виндовым разделом определяется как защищенные gpt разделы.
Natrio
Осталось убедиться, что будет грузиться в UEFI.
На UEFI грузится, работает. EFISYS fat16. (Пишут, что некоторые материнки поддерживают только fat32.)
Natrio
Маленький баг состоит в том, что он предлагает для FAT-раздела код 7, который в GPT соответствует любой форточной ФС, но в MBR соответствует только NTFS, и форточка может и не понять, так что надо вовремя его поправить и вместо "7" указать "c".
XP его определила, но пришлось в ней отформатировать. Сама поставила "с". Так что ничего страшного.
И да. Это всего лишь выбор по умолчанию. Он же предлагает ввести свой код.
Natrio
Большой баг в том, что создавая гибридную MBR, gdisk просит ввести разделённый пробелами СПИСОК номеров разделов из GPT, которые надо отобразить в MBR, но в реальности делает гибрид только для первого раздела в списке, а остальное игнорит.
Подверждаю.
Natrio
Ну, и на закуску, ещё одна забавная багофича – gdisk зачем-то предлагает отобразить в MBR раздел EFISYS, причём первым, говоря что это якобы хорошо для груба. (Это неправда, поскольку EFISYS нужен в MBR только при отсутствии GPT). Разумеется, на это нельзя соглашаться ни под каким видом, иначе FAT-раздел с данными, ради которого и затевался гибрид, будет невидим для форточек.
Тут и так понятно, что форточный раздел должен быть первым в MBR.
Natrio
На флешке с отступом первого раздела 2048, я сделал BIOS boot partition на секторах 64-159, и EFISYS на 160-2047, размером в 944К. (Когда-то на дискетах FAT бывала и меньше.) Образ груба EFI/BOOT/BOOTX64.EFI для GPT+vfat имеет размер 114K, так что хватает.
Хотя говорят, некоторые UEFI якобы понимают только FAT32. Может быть.
То есть BIOS boot partition такого размера наверняка хватит? и почему не с 34 сектора?
EFISYS тоже туда сунуть. хорошая идея. Придется пересоздать. Готовый раздел почему-то уменьшается со 100мб только до 32. Если меньше, то вываливается с ошибкой. Знаю, знаю. Parted :)
Lupus pilum mutat, non mentem.
jim945
То есть BIOS boot partition такого размера наверняка хватит?
Раньше fdisk по-умолчанию создавал в MBR первый раздел с 63го сектора, и в этот зазор в 31КБ стартовый образ GRUB2 core.img (~25КБ, если без LVM:) по-прежнему влезает.
Ну и в BIOS boot partition аналогичного размера он, разумеется, тоже влезет.


и почему не с 34 сектора?
По привычке. Я в MBR с 64го сектора впихивал EFISYS, чтобы BIOS-образ не затереть. Если gdisk говорит, что можно с 34го сектора, то скорей всего так оно и есть.

jim945
Придется пересоздать. Готовый раздел почему-то уменьшается со 100мб только до 32. Если меньше, то вываливается с ошибкой.
Почти пустой раздел с одним файлом действительно проще пересоздать, чем пережимать. А насчёт размера он ругается потому, что для FAT32 нужно как минимум 33MБ. mkdosfs тоже отказывается работать с ключом -F32 при меньшем размере. Хотя если там на самом деле FAT16 (минимум 9МБ), то это очередной баг parted.

P.S.
У меня тоже на UEFI загрузилось.
Natrio
Хотя если у там на самом деле FAT16
На самом деле fat16. меньше 32 отказываетcя делать.

В итоге считаю, что пришел к оптимальному расположению разделов.
Recovery/transformation command (? for help): p
Disk /dev/sdc: 30283008 sectors, 14.4 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): 48F52BBE-787C-4486-BA44-A02AB9816A50
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 30282974
Partitions will be aligned on 2-sector boundaries
Total free space is 0 sectors (0 bytes)

Number  Start (sector)    End (sector)  Size       Code  Name
   1             162            2047   943.0 KiB   EF00  EFI System
   2        30151902        30282974   64.0 MiB    8300  Linux filesystem
   3            2048        16779263   8.0 GiB     8300  Linux filesystem
   4        16779264        30151901   6.4 GiB     0700  Microsoft basic data
   5              34             161   64.0 KiB    EF02  BIOS boot partition
Recovery/transformation command (? for help): o

Disk size is 30283008 sectors (14.4 GiB)
MBR disk identifier: 0x00000000
MBR partitions:

Number  Boot  Start Sector   End Sector   Status      Code
   1              16779264     30151901   primary     0x0C
   2                     1     16779263   primary     0xEE
   4              30151902     30283007   primary     0xEE
/boot можно не использовать, но корень зашифрован. Разместил в в конце диска. Если что всегда размер можно подогнать.

Флешка все тесты прошла успешно. BIOS, UEFI, Windows.
Цель достигнута. Спасибо, что пнули данной темой, чтоб наконец разобрался :)
Lupus pilum mutat, non mentem.
я не понимаю, почему все внимательно делаю по вики, но после
mkfs.ext4 /dev/sdx1
рушится загрузка, что-то изменилось?
кто в курсе?
 
Зарегистрироваться или войдите чтобы оставить сообщение.