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

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в 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

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

ASE_DAG



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

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

| Офсайт | Википедия | Фрешмит | Охлох | Мануал | Убунтовики | Арчвики |

 
Некоторые типовые задачи
 
Загрузка системы, отсутствующей в меню.
Если по каким-либо причинам установленная на машине система не присутствует в загрузочном меню Груба, а загрузить ее надо, то это можно сделать и вручную. Для этого придется перейти в командную строку (нажать «c»), определить корневой раздел требуемой системы и выполнить несложную последовательность команд.
 
    Определение раздела
    Проще всего эта подзадача решается, если вы аккуратно назначили разделам метки и помните их.

    grub> search --label DEBIAN --set root

    Если не помните, то несколько сложнее.

    grub> ls # выводим перечень всех доступных разделов
    (hd0) (hd0,msdos2) (hd0,msdos3) (hd0,msdos1)
    grub> # порядок перечисления показывает физическое расположение; номер — последов-ть создания;
    grub> ls (hd0,2) # пытаемся угадать раздел; тип табл. разделов (здесь — msdos) можно опускать;
    Раздел hd0,2: Тип файловой системы ext3 - Метка "DEBIAN" - Время последнего изменения 2011-09-15 00:00:00 Thursday, UUID 06e6493d-2a52-432b-8459-5e1dccb277d6 — Начало раздела: 2048 — Полный размер 15202304 секторов
    grub> # угадали!
    grub> set root=(hd0,2)

    А если не задавали метки вовсе, то совсем нехорошо — придется опираться на содержимое ФС.

    grub> ls (hd0,2)/
    sbin/ var/ opt/ sys/ boot/ run/ etc/ vmlinuz initrd.img initrd.img.old lib/ home/ mnt/ tmp/ proc/ media/ lost+found/ lib64/ srv/ selinux/ dev/ vmlinuz.old bin/ lib32/ root/ usr/
    grub> # на ГНУ/Линукс похоже
    grub> cat (hd0,2)/etc/issue.net # можно убедиться дополнительно
    Debian GNU/Linux wheezy/sid                                    
    grub> set root=(hd0,2)

    После того, как установили root, переходим к выполнению последовательности команд, зависящей от загружаемой системы.
 
    Загрузка ГНУ/Линукса

    grub> linux /vmlinuz root=LABEL=DEBIAN
    grub> initrd /initrd.img # кстати, везде работает автодополнение (TAB)
    grub> boot
   
    Это если метка у раздела была. Если нет, первый пункт будет иметь вид:

    grub> linux /vmlinuz root=/dev/sda2 # (hd0) — sda, (hd1) — sdb

    Если ссылки /vmlinuz и /initrd.img указывают не на то ядро и образ ОЗУ, что вы хотите загрузить, то укажем их явно:

    grub> linux /boot/vmlinuz-2.6.38-2-amd64 root=LABEL=DEBIAN # используем автодополнение (TAB)
    grub> initrd /boot/initrd.img-2.6.38-2-amd64
    grub> boot

    Загрузка Виндоўса

    grub> chainloader +1 # просто передаем управление по цепочке
    grub> boot

 
Переустановка Груба.
Груб, как правило, устанавливается в главную загрузочную запись (MBR), которая на жестком диске одна, и которую некоторое ПО (например, инсталлятор Виндоўс) ультимативно перезаписывает чем-либо иным. Т. о. перед пользователем может встать задача восстановления Груба путем переустановки. Сама по себе (пере)установка выполяется простой командой grub-install [OPTION] install-device. Помимо этого, быть может, вам нужно выполнить обновление загрузочного меню (update-grub), например для того, чтобы добавить в него свежеустановленную Винду.  
А вопрос в том, откуда эту команду отдать — установленная система же штатно не загружается. Есть три варианта:
 
Вариант первый. Выполнить с «живой» системы (live-CD / live-USB).
Требуется: живой образ системы, комплектующийся Грубом (например, Убунта).

    # mount -L DEBIAN /mnt
    # mount -L BOOT /mnt/boot # если /boot у вас на отдельном разделе
    # grub-install --root-directory=/mnt /dev/sda
    # update-grub --output=/mnt/boot/grub/grub.cfg # если требуется (см. выше)

 
Вариант второй. Загрузить установленную систему и выполнить с нее.
Требуется: live-CD / live-USB с Грубом в роли загрузчика.
Загружаем установленный ГНУ/Линукс следуя инструкции из раздела выше и выполняем:

    # grub-install /dev/sda
    # update-grub # если требуется (см. выше)

 
Вариант третий. Загрузить любую систему на Линуксе и выполнить chroot в установленную.
Требуется: любая «живая» операционная система с Линуксом в качестве ядра, наличие в ней Груба не обязательно.

    # mount -L DEBIAN /mnt
    # mount -L BOOT /mnt/boot # если /boot выделен на отд. раздел
    # mount --bind /dev /mnt/dev
    # mount --bind /proc /mnt/proc
    # mount --bind /sys  /mnt/sys
    # chroot /mnt
    # grub-install /dev/sda
    # update-grub # если требуется (см. выше)

TODO: Описать плюсы / минусы каждого.
 
Установка Груба на сменный носитель (USB-flash, USB-HDD)
 
Это может быть полезным, если на с’емном диске (флэшке), с которого что-либо загружается, не установлена GNU. Если ГНУ установлена на флэшке, то и загрузчик в нормальном случае тоже должен быть уже установлен; если же нет, то см. раздел выше.  
 
Носитель требуется такой, на котором есть по крайней мере один раздел с файловой системой, понятной Грубу. Из популярных подойдут ext2, ext3, ext4, FAT32, не подойдут exFAT, NTFS. Установка из-под ГНУ/Линукса выполняется полностью аналогично вышеизложенному первому способу переустановки. Если пользователь принадлежит к группе floppy (нормальная ситуация на персональных компьютерах), а следовательно имеет права raw-записи на с’емные носители, то рутовые права не понадобятся.  
 
Итак, положим, что раздел на флэшке связан с блочным устройством /dev/sdx1, тогда смонтируем его любым удобным образом: через гуй или приказом вида

    $ udisks --mount /dev/sdx1
    Mounted /org/freedesktop/UDisks/devices/sdx1 at /media/16G

и выполним собственно установку

    $ /sbin/grub-install --root-directory=/media/16G/ /dev/sdx

Никакое содержимое в процессе затерто быть не должно (но резервные копии делать не забывайте ;-). Формировать grub.cfg update-grub’ом на основе имеющихся на данной конкретной машине операционных систем, очевидно, смысла нет. Его стоит написать вручную, взяв за образец grub.cfg из установленной системы.
 
Загрузка системы из iso-образа live CD
 
Собственно со стороны Груба никакой хитрости тут нет — командой loopback device file монтируем на образ ФС (file) на произвольное имя устройства (device), а далее работаем с ним, как с любым другим диском.
Хитрость в ином — сама «живая» система должна уметь грузиться из образа read-only ФС, принимая его имя через параметры ядра. У разных лайв-сиди синтаксис параметров разный. Например, для различных Убунт и иных живых дисков, использующих Casper, запись в grub.cfg может выглядеть так:

menuentry "Xubuntu 11.04" {
    loopback loop /xubuntu-11.04-desktop-amd64.iso
    linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=/xubuntu-11.04-desktop-amd64.iso splash --
    initrd (loop)/casper/initrd.lz
}

TODO: Добавить примеры для других лив-сиди, а затем выпилить это отсюда в отдельную тему, как не имеющее прямого отношения к сабжу.
 


 
Знаете ли вы, что
 
• Ключ GRUB_DEFAULT в /etc/default/grub, определяющий пункт меню загружаемый по-умолчанию, может принимать не только порядковый номер пункта (0 — первая строчка, 1 — вторая и т.д.), но и его заголовок, который задан в /boot/grub/grub.cfg. Например:

    GRUB_DEFAULT='Debian GNU/Linux, with Linux 2.6.39-2-amd64'

 
TODO: Есть сведения, что это не работает с Бургом; проверить их.
 
----------------------------------------  
Выше:    "Из популярных подойдут ext2, ext3, ext4, FAT32, не подойдут exFAT, NTFS. "  Но Grub2 можно запускать и без установки и с традиционных ntfs разделов привычными загрузчиками Windows
----------------------------------------  
 

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

Всего записей: 9272 | Зарегистр. 12-05-2005 | Отправлено: 03:14 01-11-2011 | Исправлено: alex52mail, 23:23 09-03-2020
Death_INN

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
redson, загугли UEFIinSecureBoot и читай статью на хабре

Всего записей: 1998 | Зарегистр. 24-10-2002 | Отправлено: 17:41 29-04-2020
yxma

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
У меня дурацкий вопрос, хотя это для меня весьма важно. Мне удалось установить на СДкарту рабочую вин7. Но у меня запуск параллелен с линуксом через груб2 ефи. Я скопировал запуск предустановленной вин10 поменял в нем ууид, но уефи почему-то не видит флешку. Может, кто знает что можно сделать?  
## BEGIN /etc/grub.d/30_os-prober ###
menuentry 'Windows Boot Manager (on /dev/nvme0n1p2)' --class windows --class os $menuentry_id_option 'osprober-efi-9427-DE7' {
    insmod part_gpt
    insmod fat
    if [ x$feature_platform_search_hint = xy ]; then
      search --no-floppy --fs-uuid --set=root  9427-DE7
    else
      search --no-floppy --fs-uuid --set=root 9427-DE7
    fi
    chainloader /EFI/Microsoft/Boot/bootmgfw.efi
}
 
### BEGIN /etc/grub.d/30_os-prober ###
menuentry 'Windows 7 (on /dev/sdb4)' --class windows --class os $menuentry_id_option 'osprober-efi-D45084CC84B730' {
    insmod part_gpt
    insmod fat
    if [ x$feature_platform_search_hint = xy ]; then
      search --no-floppy --fs-uuid --set=root  D484CC5084B730
    else
      search --no-floppy --fs-uuid --set=root D484CC5084B730
    fi
    chainloader /dev/sdb4/EFI/Microsoft/Boot/bootmgfw.efi
}
почитав шапку, понял, что проблема может быть в том, что карта отформатирована под нтфс. Хотя груб стоит у меня на ехт4, и остальные системы работают нормально. Может, мне нужно как-то отредактировать загрузчик вин10?

Всего записей: 393 | Зарегистр. 05-08-2008 | Отправлено: 01:30 08-05-2020 | Исправлено: yxma, 01:41 08-05-2020
z0bra



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
yxma> вы хотите чтобы флешка/карта быля независима от установленного на дисках? тогда без fat раздела на флешке не обойтись.
 
в любом случае строка «chainloader /dev/sdb4/EFI/Microsoft/Boot/bootmgfw.efi» ошибочна. перед ней поиск ищет нужный раздел (не с виндой, а специальный, видимый из uefi).
а с этого раздела грузит виндовый загрузчик. свмв винда видна уже из-под него с любого раздела.

Всего записей: 467 | Зарегистр. 13-04-2004 | Отправлено: 08:54 08-05-2020
yxma

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

Цитата:
вы хотите чтобы флешка/карта быля независима от установленного на дисках? тогда без fat раздела на флешке не обойтись.
такой вариант был бы идеальным, но, возможно, недостижим - драйвера и привязка к железу. Хотя виннтсетап вроде бы не привязывает, но при разбивке карты на разделы установку винды придется делать сначала. Вообще, если на форуме есть тема про такую флешку/карту, было бы интересно почитать. Но, если бы удалось загрузить ее с карты хотя бы на одном компе - уже было бы счастьем.  

Цитата:
 любом случае строка «chainloader /dev/sdb4/EFI/Microsoft/Boot/bootmgfw.efi» ошибочна. перед ней поиск ищет нужный раздел (не с виндой, а специальный, видимый из uefi).
мне казалось, что уефи с момента передачи г2 перестает влиять на ход загрузки, (везде ведь пишут, что команды г2 никак не изменяются) но, похоже, это не так. Как же мне выкручиваться? Указать тот раздел, с которого грузится предустановленная вин10? Тогда 7 не снесет ли запуск 10?

Цитата:
а с этого раздела грузит виндовый загрузчик. сама винда видна уже из-под него с любого раздела.
Как мне выкручиваться в данном случае -
ссд с предустановленной вин10, 4 раздела, как водится
хдд с файлопомойкой нтфс и тремя линуксами ехт4
сдкарта с вин7 под нтфс
 

Всего записей: 393 | Зарегистр. 05-08-2008 | Отправлено: 03:07 09-05-2020 | Исправлено: yxma, 03:13 09-05-2020
z0bra



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

Цитата:
мне казалось, что уефи с момента передачи г2 перестает влиять на ход загрузки

тут идёт речь о разделе, на котором операционки размещают инфу для загрузки в режиме UEFI. там и линух (через GRUB), и винда.  
 
Вам не нужно менять ничего - выбираете в GRUB  штатный загрузчик 10-ки, в его конфиг достаточно добавить пункт загрузки с 7-ки. Это можно сделать например BootICE-ом прямо в 10-ке, в нем же подмонтировав раздел EFS, и открыв /EFI/Microsoft/Boot/BCD .

Всего записей: 467 | Зарегистр. 13-04-2004 | Отправлено: 20:08 10-05-2020
yxma

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

Цитата:
Вам не нужно менять ничего - выбираете в GRUB  штатный загрузчик 10-ки, в его конфиг достаточно добавить пункт загрузки с 7-ки.  

пробовал, при помощи EasyBCD, но не работает. Там и предупреждение было, я попробовал от безысходности.

Цитата:
Это можно сделать например BootICE-ом прямо в 10-ке, в нем же подмонтировав раздел EFS, и открыв /EFI/Microsoft/Boot/BCD .

К сожалению это недостаточно подробно для меня. Где можно прочитать или в ютубе просмотреть? Почему-то обычно людям кажется что я все знаю. Или многое. Это совсем не так.

Всего записей: 393 | Зарегистр. 05-08-2008 | Отправлено: 01:23 12-05-2020
Colonel74

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Может плохо смотрел, но не нашел точного ответа. Подскажите, пожалуйста, в GRUB 2 можно загрузить систему из iso-образа WinPE типа этой: https://sergeistrelec.ru/winpe_10_8/189-winpe-10-8-sergei-strelec-x86-x64-native-x86-20200531-russkaja-versija.html
 
Если да, то какие команды использовать?

Всего записей: 56 | Зарегистр. 04-03-2007 | Отправлено: 06:34 14-06-2020
z0bra



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Colonel74» Рекомендую попробовать Ventoy
 
На русском часть (слегка устаревшая — уже добавлены все широкоиспользуемые ФС для хранения ИСО, загрузка с WIM без звгрузки его в память, персистентные образы) перевода основных возможностей и инструкция по установке - тут

Всего записей: 467 | Зарегистр. 13-04-2004 | Отправлено: 17:36 15-06-2020 | Исправлено: z0bra, 19:15 15-06-2020
Colonel74

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
z0bra
Спасибо, очень даже неплохо. Вроде бы все работает кроме Kaspersky Rescue Disk 2018. Загружается меню, выбираешь режим и выдается ошибка "Неверная подпись". Если нажать кнопку, то загрузка продолжается, но останавливается на ошибке, что не может найти root device.

Всего записей: 56 | Зарегистр. 04-03-2007 | Отправлено: 02:41 18-06-2020
z0bra



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Colonel74» это похоже на проверку эл. подписи то ли модуля загрузчика толи модуля ядра (efi драйвера?), который подсовывается со стороны ventoy.
в любом случае - напишите автору на гитхабе, он много подобных ошибок выправляет.

Всего записей: 467 | Зарегистр. 13-04-2004 | Отправлено: 08:15 18-06-2020
Colonel74

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Да, он в последней версии привертел костыль - в консоли груба отключать проверку подписи после выбора языка. Тогда загрузка проходит без ошибки.

Всего записей: 56 | Зарегистр. 04-03-2007 | Отправлено: 15:22 20-06-2020
z0bra



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

Всего записей: 467 | Зарегистр. 13-04-2004 | Отправлено: 17:07 20-06-2020
Colonel74

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Точно, вернее будет сказать, что в новой версии он организовал поддержку этой фичи, т.к. в предыдущей отключение проверки не помогало, у кернела все равно случалась паника )

Всего записей: 56 | Зарегистр. 04-03-2007 | Отправлено: 18:58 20-06-2020
Открыть новую тему     Написать ответ в эту тему

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

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

Имя:
Пароль:
Сообщение

Для вставки имени, кликните на нем.

Опции сообщенияДобавить свою подпись
Подписаться на получение ответов по e-mail
Добавить тему в личные закладки
Разрешить смайлики?
Запретить коды


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

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.Board
© Ru.Board 2000-2020

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru