Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » GNU GRUB 2 (grub 1.9*–2.*); BURG

Модерирует : gyra, Maz

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25

Открыть новую тему     Написать ответ в эту тему

ASE_DAG



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
GRUB 2



GNU GRUB 2 (ГНУ Груб-2, в контексте этой темы и просто «Груб») — универсальный загрузчик для GNU и иных юникс-подобных операционных систем, пришедший на замену первому Грубу, ныне именуемому GRUB Legacy.
Имеет форк под названием BURG (Бург), ориентированный на использование красочных тем оформления и принципиально ничем не отличающийся.


Справка Grub2 на русском
  • ru.wikibooks.org
  • wiki.archlinux.org
  • Создание темы
Примеры загрузки ISO
  • 12 примеров загрузки ISO
  • 100 примеров загрузки ISO

 
Конфиг подсветка для Geany, AkelPad, Notepad++
 
Прочее

Всего записей: 9272 | Зарегистр. 12-05-2005 | Отправлено: 03:14 01-11-2011 | Исправлено: Lin1980, 21:49 14-11-2023
stasys44

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Никого не убеждаю, ленивый не будет читать, а знающему - не нужно.
Мне не надо объяснять, что AiBoot, E2B, Multiboot Kit
На этом оффтоп кончаю  
 
Продолжение скрипта Grub2
Переходим к созданию файлов конфигурации - нужно вставить свой путь
Для этого создаём начальный отрывок с insmod'ами - grub_i.cfg (по описанию в первой части статьи) и больше его не меняем,
 скриптом - средний отрывок с переменными - grub_.cfg,
 дальше - последняя часть файла по описанию (разрешение, тема, меню) - grub_p.cfg
 в конце концов эти файлы соединяются, удаляется grub_.cfg, открывается конфиги с помощью notepad, делаются свои добавления (темы, записи меню), удаляется какой-то знак SUB в конце файла
 Изменён (удалил EFI , чтобы не был громоздкий) код 2
файл конфигурации
Ещё не всё

Всего записей: 874 | Зарегистр. 23-08-2008 | Отправлено: 08:03 23-02-2018 | Исправлено: stasys44, 11:40 26-02-2018
stasys44

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Завершающая часть скрипта.
grub-makeimage
 
Загрузчики Grub2 оставил в исходной папке, если мешают, можно удалить - вручную или скриптом
Раскомментировать Bootice - на свой риск
 
Следующий скрипт с поиском search.file
 

Код:
cd /d "%~dp0"
@echo off
set /p DrLetter="Boot Disk/Partition Letter, e.g., k  -> "
set /p Root="Your Folder name (without spaces), as XXXX or Xxxxxx  ->  "
set /p lang="Language Code, e.g., en ->   "
 
mkdir %DrLetter%:\%Root%\grub\Locale
mkdir %DrLetter%:\%Root%\grub\Fonts
 
xcopy /s /e /y /i i386-pc %DrLetter%:\%Root%\grub\i386-pc
xcopy /s /e /y /i themes %DrLetter%:\%Root%\grub\themes
 
copy locale\%lang%\grub.mo %DrLetter%:\%Root%\grub\Locale\%lang%.mo
copy /y euro.pf2  %DrLetter%:\%Root%\grub\Fonts\euro.pf2
copy %Root%\grub\grub.cfg %DrLetter%:\%Root%\grub\grub.cfg
 
search.file /%Root%/grub/grub.cfg root>>i386-pc.cfg
echo set prefix=/%Root%/grub>>i386-pc.cfg
rem cfg_file=$prefix/main.cfg>>i386-pc.cfg
notepad i386-pc.cfg
 
grub-mkimage.exe -d i386-pc -p /%Root%/grub -c i386-pc.cfg -o %Root%Core.img -O i386-pc biosdisk part_msdos fat exfat ext2 ntfs normal iso9660 search_fs_uuid search_fs_file
grub-mkimage.exe -d i386-PC -p /%Root%/grub -c i386-pc.cfg -o %Root%Corembr.img -O i386-pc biosdisk part_msdos fat exfat ntfs search_fs_uuid
copy /B i386-pc\Boot.img+%Root%Core.img %Root%g2ldr
copy /B i386-pc\Boot.img+%Root%Corembr.img %Root%g2ldr.mbr
copy %Root%g2ldr %DrLetter%:\%Root%\grub\%Root%g2ldr
copy %Root%g2ldr.mbr %DrLetter%:\%Root%\grub\%Root%g2ldr.mbr

 
Если конфиг отличается, т.е. не /%Root%/grub/grub.cfg, в команде
rem cfg_file=$prefix/main.cfg>>i386-pc.cfg
удалите rem и пропишите имя своего конфига (в скрипте записано main.cfg)
 
Так можно принаделать "костыли" для загрузчиков Windows
 
Какой комплект со скриптами сделали китайцы, как скрипты переделал для всех локалей и путей пользователя - в следующий раз

Всего записей: 874 | Зарегистр. 23-08-2008 | Отправлено: 16:17 26-02-2018
Hunter23071985

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Всем привет!
Такой вопрос - можно ли игнорировать регистр букв в пути к файлу на NTFS-разделах?
Если нельзя, можно ли модифицировать драйверы NTFS и UDF, чтобы добиться регистронезависимости?
Спасибо!

Всего записей: 2559 | Зарегистр. 19-09-2009 | Отправлено: 13:20 09-03-2018
Hunter23071985

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Друзья, миссия невыполнима?

Всего записей: 2559 | Зарегистр. 19-09-2009 | Отправлено: 14:08 11-03-2018
Deoptimizer

BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Hunter23071985
Копайте в сторону regexp, а там уже ignore case sensitivity.

Всего записей: 315 | Зарегистр. 12-06-2015 | Отправлено: 14:56 11-03-2018
Hunter23071985

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Deoptimizer
Ничего не понял. С regexp не очень дружу. При чём он тут?

Всего записей: 2559 | Зарегистр. 19-09-2009 | Отправлено: 21:08 11-03-2018 | Исправлено: Hunter23071985, 21:08 11-03-2018
stasys44

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Из мануала Grub2:
16.3.61 regexp
Command: regexp [--set [number:]var] regexp string
Test if regular expression regexp matches string. Supported regular expressions are POSIX.2 Extended Regular Expressions. If option --set is given, store numberth matched subexpression in variable var. Subexpressions are numbered in order of their opening parentheses starting from ‘1’. number defaults to ‘1’.  
Решение не нашел, потому и не писал
 
А обойти проблему не устраивает? Применить конструкцию if ... "variant bootmgr" .. fi if ... "variant Bootmgr" ... fi if .... "variant BOOTMGR" .. fi

Всего записей: 874 | Зарегистр. 23-08-2008 | Отправлено: 12:10 12-03-2018
Hunter23071985

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
stasys44
Обойти проблему не получится. Вот смотрите: в 2к10 загрузчик по пути 2k10\WinPE\bootmgr.
Теперь попробуем перебрать хотя бы ходовые комбинации (оригинал, все большие, все маленькие): для 2k10=2, для WinPE=3, для bootmgr=3.
Итого 2*3*3=18 вариантов. Если ещё один уровень, тогда 18*3=54.
Причём автоматически скриптом это будет сделать сложно, а меню превратится в роман.
Команда regexp позволит преобразовать регистр. А толку? Ведь искать и читать будет всё равно по реальному пути.
Если он не совпадёт с прописанным в меню - тогда ничего не найдёт и не запустит.
Нужно, чтобы при поиске и чтении файла регистр букв в пути игнорировался.

Всего записей: 2559 | Зарегистр. 19-09-2009 | Отправлено: 14:10 12-03-2018
stasys44

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Hunter23071985
Во первых, кто запрещает помещать bootmgr в папку создателя сборки?
Во вторых, авторы сборок в наименовании своей папки, как правило, не меняют регистр,
В третьих, это временная мера, копи-пастом можно принаделать сколько угодно вариантов, потом удалить все кроме действующей записи
А вообще, я не вижу проблемы - либо в menuitem прописать как есть у автора, либо написать всё в регистре (-трах) какой хочется
 
Другого решения у меня нет. Напишите в ЛС Stea, он работает и в Windows, и в Линуксах, и по Grub2 не последний

Всего записей: 874 | Зарегистр. 23-08-2008 | Отправлено: 14:54 12-03-2018
Hunter23071985

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
stasys44, спасибо, попробую...

Всего записей: 2559 | Зарегистр. 19-09-2009 | Отправлено: 15:09 12-03-2018
LevT



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Есть под рукой две UEFI  железки, для которых вьетнамец-автор AIOboot рекомендует отказаться от идущего по умолчанию в его комплекте Grub2 в пользу других загрузчиков
 

Цитата:
 
 
Try this.
 
AIOCreator.exe -> Settings.
 
Here you can choose another boot loader to replace Grub2, including Clover and rEFInd.
 
 

Цитата:
 
24.04.2018, 18:58, "LevT" :
 
 VOYO Vbook v3 (Pentium KabyLake version)   from Aliexpress  -  shows blinking '_' character instead of booting
 
MSI H110I Pro (Skylake)  -  shows black screen
 
 
This flash drive's AIOboot successfully tests itself under built-in QEMU, and also on Thinkpad X220i
 
Could you suggest anything?
 

 

 
 
Приглашаются желающие посрамить того въетнамца/ доказать универсальность Grub2
Хочу поправить существующий загрузчик, либо вручную установить ваш билд под вашим мудрым руководством

Всего записей: 17167 | Зарегистр. 14-10-2001 | Отправлено: 20:22 24-04-2018 | Исправлено: LevT, 20:23 24-04-2018
stasys44

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Во первых, автор не рекомендует, а указывет/советует, что можно заменить другим, если чем-то не угодил загрузчик Grub2. Если эти костыли грузятся - пробуйте воспользуясь ими загрузить Grub2.  
 

Всего записей: 874 | Зарегистр. 23-08-2008 | Отправлено: 15:53 25-04-2018
Colonel74

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Знатоки, пожалуйста, подскажите правильный код для запуска Acronis Media 2016 (AIT19 and ADD12 x86-x64) из сабжа. Этот код для Grub4Dos нормально запускает именно выбор утилит:

Код:
 
title Acronis Media 2016 (AIT19 and ADD12 x86-x64)  
find --set-root /boot/AM2016.iso
 
map --mem /boot/AM2016.iso (hd32)
 
map --hook
 
chainloader (hd32)
 

 
Для GRUB 2 дан код:

Код:
 
### Start Acronis Media 2016 (AIT19 and ADD12 x86-x64)
menuentry "(3) Acronis Media 2016 (AIT19 and ADD12 x86-x64)" --hotkey="3" {
    set quiet=1
    set gfxpayload=1024x768x32,1024x768
    set mbrcrcs=on
    set isofile="/BOOT/AM2016.iso"
    search --set -f $isofile
    loopback loop $isofile
    linux (loop,msdos1)/dat10.dat lang=0 quiet force_modules=usbhid
    initrd (loop,msdos1)/dat11.dat (loop,msdos1)/dat12.dat
    boot
}
### End Acronis Media 2016 (AIT19 and ADD12 x86-x64)
 

Но он запускает конкретно Acronis True Image, а хотелось бы именно меню выбора утилит, как в первом варианте. Кроме того, второй вариант при завершении сваливается в графическую рябь.

Всего записей: 61 | Зарегистр. 04-03-2007 | Отправлено: 16:10 03-10-2018
z0bra



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
здесь важно что и как на конкретном исошнике, в первом варианте какраз и передаётся управление из загрузчика с указанной конфигурацией на загрузчик исошника, который сам показывает меню и управляет загрузкой (видеорежима например касается).
 
во втором случае конфиг для самостоятельной загрузки ядра и рамдиска с передачей нужных(и возможно неоптимальных) параметров ядру.
 
в общем - слегка перепутано тёплое с мягким…
 
варианты видятся такие :  
— посмотреть на исошник и решить, сможет ли сабж передать загрузку на внутренний загрузчик исошника,
— если внутри сабж - посмотреть можно ли вызвать его меню,  
— посмотреть можно ли переписать меню внутреннего загрузчика в виде конфига сабжа.

Всего записей: 518 | Зарегистр. 13-04-2004 | Отправлено: 17:26 07-10-2018 | Исправлено: z0bra, 17:32 07-10-2018
Colonel74

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Вот исошник. Посмотрите, пожалуйста.

Всего записей: 61 | Зарегистр. 04-03-2007 | Отправлено: 19:46 07-10-2018
stasys44

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
menuentry "(3) Acronis Media 2016 (AIT19 and ADD12 x86-x64)" --hotkey="3" {  

IMHO:
Это запись № 3 загрузки, т. е. только часть всего меню
Для получения всего меню, следует прописать таким манером все тройки *dat
 

Всего записей: 874 | Зарегистр. 23-08-2008 | Отправлено: 09:01 08-10-2018
z0bra



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
вечерком перепишу, но есть мысль сделать обработчик внутреннего описания меню из bootmenu.xml с автогенерацией содержимого GRUB2 подменю.

Всего записей: 518 | Зарегистр. 13-04-2004 | Отправлено: 12:00 08-10-2018
Deoptimizer

BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
z0bra

Цитата:
вечерком перепишу

Если у человека в Grub4Dos все маппировало в память и оттуда запускало, то не легче сделать также в Grub 2 через vboot или memdisk?

Код:
 
    menuentry "Acronis Media 2016 (AIT19 and ADD12 x86-x64)" {
        set iso='/boot/AM2016.iso'
        search --set=root --file $iso
        linux16 /boot/memdisk raw iso
        echo 'Loading ISO...'
        initrd16 $iso
    }
 

И сохранится нативная менюшка...

Всего записей: 315 | Зарегистр. 12-06-2015 | Отправлено: 17:23 08-10-2018
z0bra



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Deoptimizer
надо делать лучше, а не также… грустно смотреть на загрузку 600мб в память.
к тому же мемдиск не работает в UEFI режиме.
 
насч. автогенерации я погорячился - вроде в голове лежало что видел как из сабжа cat-ом читают файл в переменную, типа "cat -s /bootwiz.cfg", а на деле этого параметра нет.
можно заморочиться и сделать через модули lua или python, но это будет спецрешение, не обновляемое. ну и для исошника акрониса - пушка по воробъям.
 
поэтому остановился на таком варианте: (можно почистить, но оставлю свой рабочий вариант)

Код:
function linux_load_main {
    insmod progress
    archPrefix=$1
    kernel=$2
    shift 2
    kernelParams="$*"
 
    echo -n "Loading kernel image..."
    linux${archPrefix} $kernel $kernelParams
    rmmod progress
    echo -e "\rLoading kernel image DONE."
}
 
function initrd_load_main {
    archPrefix=$1
    shift
    insmod progress
    initrd="$*"
 
    echo -n "Loading initrd image..."
    initrd${archPrefix} $initrd
    rmmod progress
    echo -e "\rLoading initrd image DONE."
    echo -n "Trnasfer control to kernel..."
}
 
function linux_load { linux_load_main "" $*; }
 
function linux16_load { linux_load_main "16" $*; }
 
function initrd_load { initrd="$*"; initrd_load_main "" $initrd; }
 
function initrd16_load { initrd="$*"; initrd_load_main "16" $initrd; }
 
function cwd { insmod regexp; regexp --set $1 "(.+)\/.+" "$2"; rmmod regexp; }
 
submenu "Acronis Media 2016 (ATI19 and ADD12)" {
    iso=/boot/acronis-iso/AM2016.iso
    search --file --set dev $iso
    iso="($dev)$iso"
    loopback loop $iso
    cwd=(loop,msdos1)
    unset iso; unset dev
    gfxpayload=keep
 
    menuentry "Acronis True Image 2016 x64" {
        help="Includes drivers for USB/PC Card/SCSI hard disks."
        linux_load $cwd/dat10.dat force_modules=usbhid quiet
        initrd_load $cwd/dat11.dat $cwd/dat12.dat
    }
 
    menuentry "Acronis True Image 2016" {
        help="Includes drivers for USB/PC Card/SCSI hard disks."
        linux_load $cwd/dat2.dat force_modules=usbhid quiet
        initrd_load $cwd/dat3.dat $cwd/dat4.dat
    }
 
    menuentry "Acronis Disk Director 12 x64" {
        help="Acronis Disk Director 12"
        linux_load $cwd/dat21.dat force_modules=usbhid quiet
        initrd_load $cwd/dat22.dat $cwd/dat23.dat
    }
 
    menuentry "Acronis Disk Director 12" {
        help="Acronis Disk Director 12"
        linux_load $cwd/dat18.dat force_modules=usbhid quiet
        initrd_load $cwd/dat19.dat $cwd/dat20.dat
    }
 
    menuentry "Acronis System Report x64" {
        help="Generate a system report and save it to a USB flash drive."
        linux_load $cwd/dat14.dat product=system_report force_modules=usbhid quiet
        initrd_load $cwd/dat15.dat $cwd/dat16.dat
    }
 
    menuentry "Acronis System Report" {
        help="Generate a system report and save it to a USB flash drive."
        linux_load $cwd/dat6.dat product=system_report force_modules=usbhid quiet
        initrd_load $cwd/dat7.dat $cwd/dat8.dat
    }
 
}

Всего записей: 518 | Зарегистр. 13-04-2004 | Отправлено: 17:40 08-10-2018
gryu



дикий гусь
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
z0bra
Вопрос.  
Есть такие коробочки от Zalman, который содержат HDD и способные эмулировать DVD, после чего монтировать в этот эмулятор iso с выше упомянутого HDD.  
Может всетаки в эту сторону смотреть?  
Это универсилизирует утилиту. ISO он тогда или будет загрузочным со своим внутренним меню, или нет.  
Понятно что в случае с коробочкой там программно-аппаратное решение. Но всеже может стоит продумать как следует этот путь?
 
Добавлено:
Colonel74
По Акронису.  
Сколько себя помню, их исошники никогда чисто не монтировались. Всегда через загрузку linux kernel это делалось.  
Были их старые диски, которые можно было монтировать мапом, но поом они что то в загрузчике поменяли.  
Тоже самое с исошниками DrWeb было.

Всего записей: 13033 | Зарегистр. 15-03-2006 | Отправлено: 19:16 08-10-2018 | Исправлено: gryu, 19:20 08-10-2018
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25

Компьютерный форум Ru.Board » Компьютеры » Программы » GNU GRUB 2 (grub 1.9*–2.*); BURG


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru