puhpol
- Стаж: 10 лет
- Сообщений: 892
- Репутация:75[+] [-]
|
Статья от coka На настоящий момент новые компьютеры используют UEFI загрузку и так же флешки стремительно растут в объеме. В связи с этим у многих возникают вопросы - как создать Мультизагрузочную флешку, чтобы она наиболее подходила вам, в смысле функциональности и удобства. По этим причинам в этой статье предлагаю рассмотреть возможность использования загрузчика GRUB2 (как один из вариантов) и только для UEFI загрузки а так же разбиения на разделы флешек большого объема. Причины, по которым принято такое решение это: 1. Авто определение программ, с которыми вам работать, это grub.cfg или menu.lst. 2. Возможность использовать загрузчик grub4dos, как более привычный для компьютеров с обычным BIOS. UEFI загрузка - основополагающее требование - файловая система должна быть любой FAT и файлы загрузчика находятся в определенном месте (в нужных папках на том разделе). Большинство программ для UEFI boot - х64, но некоторые производители софта имеют поддержку UEFI boot - х32, который здесь рассматривать не будем. Теперь определимся с составом программ, которые хотелось бы увидеть на флешке и подготовить ее соответственно им, так же по возможности чтобы это работало при UEFI boot. 1. Установка Окошек. 2. Сборки от conty9; KopBuH91; Sergei Strelec; Xemom1 (наверно перебрал). 3. Акронисы или Парагоны или что-то в этом роде. 4. Антивирусы. 5. Линух установки или лайвы. 6. Утилиты. Подготовка флешки и установка загрузчика Можно делать дальнейшее и другими программами, но... Наиболее универсальной утилитой (на мой взгляд) является Bootice. Взять можно здесь. Причины, по которой флешка разбивается на разделы. 1. Жаба душит отдать все под FAT32. 2. Хочется иметь возможность сохранять файлы более 4 ГБ. 3. Касперскому для сохранения баз. 4. Да мало ли для чего... Делаем разделы на флешке 1. Открываем Bootice и идем в Parts Manage. 2. Открываем Re-Partitioning. 3. Выбераем USB-HDD mode (Multi-Partitions). 4. Выставляем нужные значения размера разделов (разделов может быть от 1-го до 4-х) и нажимаем ОК. 5. Открываем в проводнике "Мой Компьютер" и производим форматирование раздела флешки. 6. Возвращаемся в Bootice и идем в Parts Manage, там переназначаем букву следующему разделу (выделив его и нажав на Assign Drive Letter). 7. Форматируем так же как и 1-й раздел. Для формата флешек или раздела более 32 ГБ,чтобы это обойти ограничение (если у вас старая версия Bootice), можно использовать fat32format, для переключения между разделами используйте Bootice, переназначая буквы разделу. Установка загрузчика grub4dos Открываем Bootice и идем в Process MBR, где можно сразу выбрать GRUB4DOS 0.4.5c/0.4.6a (grldr.mbr)/ Если такой вариант не устраивает, то Process MBR пропускаете или там отмечаете любоеб что вам нравится и устанавливаете его, а после переходите в Process PBR. В PBR устанавливаете GRUB4DOS 0.4.5c/0.4.6a (FAT/FAT32/NTFS/ExFAT), а если и так не нравится, то прописывайте в PBR - BOOTMGR с дальнейшим его переименованием. Загрузчик должен прописан и находиться на 1-ом активном разделе с файловой системой FAT32. Заполнение мультизагрузочной флешки Возьмем за основу любую сборку с поддержкой UEFI от AlexGen FILTH puhpol и т. д. Так как вы находитесь на этом сайте, то будем потрошить m0nkrus FAN 3. У нас уже есть установка Windows 7/8.1 и Live от conty9, работающие при UEFI boot. Осталось прикрутить GRUB2 для Linux, ведь Win PE на основе 7ки или 8ки, прикручиваются к UEFI загрузке, с помощью BCD Edit программы Bootice. Редактируется файл BCD, который находится на флешке по пути: /efi/microsoft/boot Для совмещения загрузчиков пришлось разнести их по разным разделам флешки, т. к. были совпадающие файлы. Теперь загрузка происходит таким образом: в начале стартует GRUB2, где можно прописать загрузки Linux систем и переход в меню установки Windows и запуска WinPE в UEFI режиме. Для этого надо знать UUID разделов флешки. -------------------------------------------------------------------------------------------------- menuentry "Установка Win7/8.1 и запуск WinPE в UEFI режиме (x64)"{ search --fs-uuid --no-floppy --set=root B4EF-6BC8 chainloader (${root})/efi/boot/bootx64.efi } -------------------------------------------------------------------------------------------------- menuentry "Konboot x64 " { search --fs-uuid --no-floppy --set=root B903-79FF chainloader (${root})/efi/boot/KonBoot/bootx64.efi } -------------------------------------------------------------------------------------------------- В приведенных примерах - Это два раздела одной флешки (UUID=B4EF-6BC8)и(UUID=B903-79FF) Это позволяет переключатся между Grub2 EFI и Windows EFI и запускать программы, работающие в режиме UEFI, не отключая Secure Boot. После разбития флешки на разделы в BooICE она назначает букву лишь одному разделу, который и будет загружаться в начале. Поэтому Grub2 EFI ставим на 1-й активный раздел, имеющему назначенную букву. 2-ой раздел отдаем под сборки Windows EFI (установка и Live CD). Добавление программ происходит редактированием файла grub.cfg по пути /boot/grub/grub.cfg Картинка меню, расположение строк и их цвет указаны в THEME.TXT, если используется тема для Grub2 При использовании простого оформления все указывается в файле.cfg. Для загрузки компьютеров с обычным BIOS используется загрузчик grldr и menu.lst расположенные на 1-ом активном разделе и пропиской grub4dos в PBR. P.S. Запускал х64 Асронисы; Парагоны; Антивирусы с сохранением обновленных баз, многие Линухи... Что знаю, то подскажу, а чего нет, то самообразование никто не отменял.
|
Отправлено: 03-Авг-2016 11:09
(спустя 1 год 8 месяцев)
Heckfy
- Стаж: 8 лет 6 месяцев
- Сообщений: 26
- Репутация:0[+] [-]
|
puhpol, Нерационально, похоже на танец с бубнами. Использовать 2-а раздела под загрузчики, да ещё необходимость uuid, которые у каждого индивидуальны. Не похоже, что автор искал универсальный и рацональный метод. Можно проще и универсальнее: 1) с помощью bootice разбить диск (флеш, карту) на 2-а или 3-4-е раздела, для совместимости с bios с разметкой mbr. Один из которых небольшого размера, достаточео 100 Мбайт, рекомендую сделать последним номером, будет в fat32, которому можно назначить идентификатор EF. Первый раздел в ntfs (не исключаю и exFAT), чтобы он был виден в Windows, на нем размещаем загружаемое, последующие разделы можно выделить под linux (ext2, btrfs и т.п.). 2) далее с помощью того же bootice прописываем в mbr fat32 загрузчик, для пущей простоты grub4dos. На этом же разделе fat32 размещаем все загрузчики, в т.ч. efi. Забрасываем в efi/boot менеджеры grub2-efi, переименовав их в bootx64.efi и bootia32.efi соответственно, если требуется там же grub.cfg с ссылкой на конфигурационный файл, где сам загрузчик grub2-efi. Чтобы не заниматься установкой grub2-pc, grub2-efi из ubuntu и т.п. можно воспользоваться проектами grub2win и т.п. 3) Далее возвращаемся к grub4dos, в корне раздела размещаем файл grldr и в нем прописываем загрузку grub2-pc. Т.е. grub4dos в mbr нам нужен лишь как удобный костыль для запуска grub2-pc, это особенно актуально для таких проектов как grub2win устанавливаемых через windows. Хотя grub4dos можно оставить и основным загрузчиком. Однако, более универсальным будет использовать grub2 и для bios и uefi. 4) загрузчики windows размещаем в /boot и /efi/microsoft соответственно. После этого у нас будет достаточный набор. Переключаться между разделами для редактирования конфигурационных файлов загрузчиков из под windows можно с помощью bootice. В случае linux этого не требуется.
|
Отправлено: 19-Окт-2016 11:51
(спустя 2 месяца 16 дней)
sanek-van
- Стаж: 10 лет
- Сообщений: 21
- Репутация:0[+] [-]
|
Немного дополню. Для того что бы не было пересечения файлов, в директории Efi\Boot создаем под папки (к примеру): 2к10; Fan; Xmpe; Sstr. В эти папки копируем из соответствующих сборок файлы bootx64.efi и BCD. Для 2к10 дополнительно в папку Efi скопировать из сборки папку мелкософт с загрузчиком. Опробовано на флешках с одним и двумя разделами. В файле grub.cfg прописываем:menuentry "2K10_8x64" --class windows { insmod /boot/grub/x86_64-efi/chain.mod insmod /boot/grub/x86_64-efi/fat.mod insmod /boot/grub/x86_64-efi/exfat.mod insmod /boot/grub/x86_64-efi/ntfs.mod insmod /boot/grub/x86_64-efi/ntfscomp.mod search --set=root -f /2k10/Programs-2k10 chainloader /efi/boot/2k10/bootx64.efi boot } menuentry " m0nkrus FAN v4.2_8x64_установка_7|8.1|10 " --class windows { insmod /boot/grub/x86_64-efi/chain.mod insmod /boot/grub/x86_64-efi/fat.mod insmod /boot/grub/x86_64-efi/exfat.mod insmod /boot/grub/x86_64-efi/ntfs.mod insmod /boot/grub/x86_64-efi/ntfscomp.mod search --set=root -f /efi/win_pe/W8x64.wim chainloader /efi/boot/Fan/bootx64.efi boot } menuentry " Xmpe " --class windows { insmod /boot/grub/x86_64-efi/chain.mod insmod /boot/grub/x86_64-efi/fat.mod insmod /boot/grub/x86_64-efi/exfat.mod insmod /boot/grub/x86_64-efi/ntfs.mod insmod /boot/grub/x86_64-efi/ntfscomp.mod search --set=root -f /Xmpe/W81x64.wim chainloader /efi/boot/Xmpe/bootx64.efi boot } menuentry " Sstr " --class windows { insmod /boot/grub/x86_64-efi/chain.mod insmod /boot/grub/x86_64-efi/fat.mod insmod /boot/grub/x86_64-efi/exfat.mod insmod /boot/grub/x86_64-efi/ntfs.mod insmod /boot/grub/x86_64-efi/ntfscomp.mod search --set=root -f /Sstr/strelec8x64.wim chainloader /efi/boot/Sstr/bootx64.efi boot } search --set=root -f /2k10/Programs-2k10 - команда ищет на дисках папки и файлы и делает диск с найденными файлами активным.
|
волчара
- Стаж: 9 лет
- Сообщений: 598
- Репутация:45[+] [-]
- Откуда: Омск
|
sanek-van, Подскажите есть ли разница между тем как вы написали скрипт пример:menuentry " Sstr " --class windows { insmod /boot/grub/x86_64-efi/chain.mod insmod /boot/grub/x86_64-efi/fat.mod insmod /boot/grub/x86_64-efi/exfat.mod insmod /boot/grub/x86_64-efi/ntfs.mod insmod /boot/grub/x86_64-efi/ntfscomp.mod search --set=root -f /Sstr/strelec8x64.wim chainloader /efi/boot/Sstr/bootx64.efi boot } я имею ввиду вот этоinsmod /boot/grub/x86_64-efi/chain.mod insmod /boot/grub/x86_64-efi/fat.mod insmod /boot/grub/x86_64-efi/exfat.mod insmod /boot/grub/x86_64-efi/ntfs.mod insmod /boot/grub/x86_64-efi/ntfscomp.mod и тем как реализовано у меняinsmod vbe set timeout=30 loadfont /boot/grub/themes/dejavu_16.pf2 gfxpayload='1024x768,800x600,640x480' set lang=ru_RU set theme=/boot/grub/themes/volchara/win_menu.txt terminal_output gfxterm insmod chain insmod loopback insmod part_gpt insmod jpeg insmod png insmod gzio insmod part_msdos insmod ext2 insmod fat insmod ntfs insmod iso9660 insmod xfs ############################################MICROSOFT################################################### menuentry "Установка Windows 7/8/8.1/10 (MSDaRT Full) x64bit" --class win { search --set -f /efi/microsoft/x64/erdc/bootx64.efi chainloader /efi/microsoft/x64/erdc/bootx64.efi } ############################################MICROSOFT################################################### menuentry "WinPE by Xemom1 and Sergei Strelec x64bit" --class winpe1 { search --set -f /efi/microsoft/x64/winpe/bootx64.efi chainloader /efi/microsoft/x64/winpe/bootx64.efi } ############################################END############################################### ############################################Возврат в меню################################################### menuentry "Вернуться в главное меню" --class nazad { search --set -f /boot/grub/grub.cfg configfile /boot/grub/grub.cfg } ############################################END############################################### т.е. я имею ввиду зачем писать в каждом скриптеinsmod /boot/grub/x86_64-efi/chain.mod
|
sanek-van
- Стаж: 10 лет
- Сообщений: 21
- Репутация:0[+] [-]
|
волчара, да похоже разницы и нет
так как у вас даже проще, тогда сам код будет выглядеть так:
menuentry " Sstr " --class windows { search --set=root -f /Sstr/strelec8x64.wim chainloader /efi/boot/Sstr/bootx64.efi boot }
Я в этом деле новичок, до всего пытаюсь докопаться сам ну или подсмотреть у других, если бы ваши сборки были чуть поменьше то подсмотрел бы и у вас.
По работе с этим не связан, можно сказать самообразование , так ..для души.
|
Orochi
- Стаж: 8 лет 5 месяцев
- Сообщений: 218
- Репутация:0[+] [-]
|
Не подскажите как узнать UUID разделов флешки из под Windows?
|
nikzzzz
- Стаж: 9 лет
- Сообщений: 3114
- Репутация:127[+] [-]
|
52810как узнать UUID разделов флешки из под Windows? Еще вариант - MountVol
|
Orochi
- Стаж: 8 лет 5 месяцев
- Сообщений: 218
- Репутация:0[+] [-]
|
|
Отправлено: 02-Ноя-2018 01:29
(спустя 6 месяцев 16 дней)
Mariolast
- Стаж: 6 лет 6 месяцев
- Сообщений: 41
- Репутация:0[+] [-]
|
Подскажите, как правильно прописать меню для загрузки Clonezilla Дистрибутив брал отсюда https://clonezilla.org/downloads/download.php?branch=stable В конфиге прописал menuentry "Clonezilla (64-bit)" { search --file --no-floppy --set=root /SSTR/linux/clonezilla64/live/vmlinuz linux /SSTR/Linux/clonezilla64/live/vmlinuz boot=live live-media-path=/SSTR/Linux/clonezilla64/live union=overlay username=user config components quiet noswap edd=on nomodeset locales= keyboard-layouts= ocs_live_run="ocs-live-general" ocs_live_extra_param="" ocs_live_batch="no" vga=788 ip= net.ifnames=0 splash i915.blacklist=yes radeonhd.blacklist=yes nouveau.blacklist=yes vmwgfx.enable_fbdev=1 initrd /SSTR/Linux/clonezilla64/live/initrd.img } Загрузить не удалось.
|
gera_serg
- Стаж: 9 лет 4 месяца
- Сообщений: 1421
- Репутация:9[+] [-]
|
Mariolast, судя по /SSTR/Linux/... вы берете меню из сборки Стрельца проверьте, лежат ли у вас два файла из дистрибутива точно по этим путям от корня флешки /SSTR/Linux/clonezilla64/live/vmlinuz /SSTR/Linux/clonezilla64/live/initrd.img
|
BalAngel
- Стаж: 9 лет 8 месяцев
- Сообщений: 257
- Репутация:14[+] [-]
|
Что, где, когда? Будем гадать. Тема называется "MultiBoot USB grub4dos+GRUB2_UEFI ". Вы приводите загрузочную запись Grub2, значит вы пытаетесь грузить с EFI. Допустим скачали дистрибутив россыпью (zip файл), live папку скопировали в /SSTR/linux/clonezilla64. Так, как в сборке Стрельца не вижу GRUB2, смотрю, что написано в файле EFI\boot\grub.cfg соответствующее в меню Стрельца, то есть по умолчанию:menuentry "Clonezilla live (Default settings, VGA 800x600)" { search --set -f /live/vmlinuz linux /live/vmlinuz boot=live union=overlay username=user config components quiet noswap edd=on nomodeset noeject locales= keyboard-layouts= ocs_live_run="ocs-live-general" ocs_live_extra_param="" ocs_live_batch="no" vga=788 ip= net.ifnames=0 splash i915.blacklist=yes radeonhd.blacklist=yes nouveau.blacklist=yes vmwgfx.enable_fbdev=1 initrd /live/initrd.img } Все пути /live надо менять на /SSTR/linux/clonezilla64/live А теперь сравнивайте, бегло не вижу отличий
|
coka
- Стаж: 10 лет
- Сообщений: 155
- Репутация:4[+] [-]
- Откуда: СиСиСиПи
|
Mariolast, Для меня тоже остается загадкой, как можно запустить Клонезиллу в ЕФИ без наличия модов т.е. без наличия папки x86_64-efi которой нет в сборке SSTR?
|
gera_serg
- Стаж: 9 лет 4 месяца
- Сообщений: 1421
- Репутация:9[+] [-]
|
я не использую Клонезиллу, для этих операций есть Terabyte IFL Так вот там они используют GRUB2 без наличия папки x86_64-efi, что необходимо есть в их варианте bootx64.efi if loadfont /boot/grub/font.pf2 ; then insmod efi_gop insmod efi_uga insmod gfxterm insmod png terminal_output gfxterm fi set menu_color_normal=cyan/black set menu_color_highlight=white/black set pager=1 set default=0 set timeout=5 menuentry "IFL (GUI) Network Boot Disk - best available graphics mode" { set background_color=black gfxpayload='1024x768,800x600,640x480' echo 'Loading vmlinuz...' linux /vmlinuz uefimode=yes iflkmap=us ktl=qwerty iflbflag=2 echo 'Loading initrmfs.gz...' initrd /initrmfs.gz } ...
|
Отправлено: 02-Ноя-2018 13:09
(спустя 1 час 38 минут)
BalAngel
- Стаж: 9 лет 8 месяцев
- Сообщений: 257
- Репутация:14[+] [-]
|
без наличия папки x86_64-efi В Clonezilla тоже самое - нет этой папки. Сделал предположение, что Mariolast не нужен ликбез и/или изучил материал по теме, нужна EFI загрузка (если был Grub4DOS - то соответствующая команда iftitle .... есть в menu.lst). Всё это допуск, что он делал, знает экстрасенс Я бы делал так: - хочу, чтобы не было много папок в корне и за основу имею сборку Стрельца - прикручиваю папку live в папку соответственно пути в сборке SSTR. В режиме Legacy ничего не надо делать, при загрузке перейти на Grub4DOS - если нужна EFI, надо изучить, как устроена загрузка EFI в сборке SSTR: там есть всякого добра, в том числе grubx64.efi Надо подумать, или делать загрузку на базе Clonezilla и добавлять записи загрузки на сборку SSTR, или наоборот PS Увидел, что может быть банально - у Стрельца папка linux лежит в корневом какталоге, если туда сливалась Clonezilla (/linux/clonezilla64/), а запись указывает на SSTR/Linux/clonezilla64/ PS PS Grub2 в сборках Стрельца есть - путь boot\grub В готовом конфигфайле clonezilla64.cfg написано:set extract_path="/Linux/Clonezilla64" export extract_path ...... menuentry "Clonezilla live (Default settings, VGA 800x600)"{ #search --set -f /live/vmlinuz linux ${extract_path}/live/vmlinuz boot=live live-media-path=${extract_path}/live union=overlay username=user config components quiet noswap edd=on nomodeset locales= keyboard-layouts= ocs_live_run="ocs-live-general" ocs_live_extra_param="" ocs_live_batch="no" vga=788 ip= net.ifnames=0 splash i915.blacklist=yes radeonhd.blacklist=yes nouveau.blacklist=yes vmwgfx.enable_fbdev=1 initrd ${extract_path}/live/initrd.img } Следовательно, действительность должна соответствовать написанному в set extract_path=?????? По Mariolast записи всё равно не будет грузится, нет live-media-path=......... Можно, если загружается, попробовать записать локаль locales=RU keyboard-layouts=ru Свою любопытность удовлетворил, вопрос больше не интересует
|
Страница 1 из 3
Текущее время: 12-Дек 12:33
Часовой пояс: UTC + 3
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах Вы не можете прикреплять файлы к сообщениям Вы можете скачивать файлы
|
|