LINUX.ORG.RU

Вышел GRUB 1.99

 , ,


0

1

Сегодня было объявлено о выходе GRUB 1.99. Скорее всего, это будет последняя экспериментальная версия на пути к стабильному выпуску 2.0, о чем сигнализирует факт переезда проекта c сервера http://alpha.gnu.org на ftp://ftp.gnu.org. Исходный код проекта теперь, соответственно, доступен по адресу ftp://ftp.gnu.org/gnu/grub/

Наиболее интересные изменения:

  • Официальная поддержка загрузки с файловой системы ZFS. Как известно, GRUB лицензирован под GPLv2, несовместимой с лицензией CDDL, под которой распространяется код ZFS. Тем не менее, компания Oracle поставляет базовый код для чтения ZFS-раздела в составе измененной версии GRUB, используемой в ОС Solaris, приняв таким образом условия лицензии GPL (GRUB, распространяется под GPL, соответственно, его модификации тоже наследуют эту лицензию). Именно этот код и был импортирован в GRUB 1.99.
  • Поддержка файловых систем BtrFS и NILFS2. Исправлена ошибка при чтении каталогов reiserfs.
  • Поддержка устройств DM-RAID.
  • Поддержка в MIPS multiboot2 таблиц разделов sunpc.
  • Поддержка изменения раскладки клавиатуры, двунаправленного текста и диакритических знаков.
  • Завершить работу загрузчика теперь можно средствами ACPI.
  • Новые команды: lsacpi и sendkey (i386), cmostest (i386/x86_64), lsefisystab, lssal, lsefimmap (EFI).
  • Упрощена процедура генерации PXE-образов. Добавлена утилита grub-mknetdir, генерирующая каталоговую структуру для сетевой загрузки.
  • Команда grub-mkconfig теперь поддерживает Xen, образы initrd Fedora 13 и NetBSD. Также с помощью grub-mkconfig теперь можно установить фоновое изображение загрузочного меню.
  • Добавлена возможность адресации памяти ниже 16 Мб и выше 3 Гб в i386-qemu.
  • Появилась поддержка горячего подключения/отключения USB-устройств, USB-хабов, и USB-эмуляторов последовательного порта.
  • Команда grub-mkrescue теперь использует GNU xorriso для создания CD-образов вместо grub-mkisofs. Устройство CD-ROM теперь именуются «cd».
  • Теперь загрузчик может быть установлен во вложенный раздел (например, BSD-раздел). Предпочтительный способ указания вложенных разделов теперь выглядит так: (hd0,msdos1,bsd1), а не (hd0,1,a).
  • Во встроенный скриптовый язык GRUB добавлены следующие языковые конструкции: for, while, until, elif, break, continue, shift, return, маски файлов, регулярные выражения, параметры функций, позиционные параметры в setparams.
  • Добавлен новый скрипт с реализацией автодополнения в стиле bash.
  • Возможность использования GRUB в качестве прошивки в Yeeloong, полностью свободном нетбуке на базе MIPS-совместимого процессора Loongson-2F.
  • Добавлен парсер для файлов конфигурации устаревших версий GRUB.
  • Реализованы фильтры для прозрачной распаковки.
  • Поддержка мета-данных mdadm 1.x.
  • Поддержка горячих клавиш в меню.
  • Ну и много других изменений, не приведённых краткости ради.

GRUB поддерживает широкий спектр платформ, включая обычные ПК с BIOS, платформы IEEE-1275 (OLPC и оборудование на базе PowerPC/Sparc64), EFI-системы и устройства, использующие свободный пакет CoreBoot (LinuxBIOS). Из ранее реализованных в рамках проекта Grub2 улучшений, можно отметить: использование нового загрузчика Multiboot2; поддержку выполнения скриптов; динамическую загрузку модулей; доступ к файлам на ФС NTFS, Reiserfs, EXT4, AFS, UDF, RAID 4/6/10 и данным внутри cpio/tar архивов; создание графических меню с интегрированными виджетами; вывод локализованного текста в отличных от ASCII кодировках; использование шифрованных паролей; поддержку загрузки ядра FreeBSD, NetBSD, OpenBSD и MacOS X (XNU).

>>> Подробности

★★

Проверено: post-factum ()

Я вот не понимаю. Зачем все крики, если можно отрубить все модули и не париться? Отключив все свистелки мы получим на выходе почти тот же 1ый граб, но с поддержкой новомодных ФС и рейдов. Профит же.

rave ()

хоть бы сделали в нём нормальную поддержку mdadm, а то там через заднее место она.

ArtemZ ()

Сегодня сделаю попытку мигрировать №2. В первый раз груб не дотянул даже до меню и сдох гдето на пол пути, выделяя память.

x0r ★★★★★ ()

anon@globaldomain ~ # eix grub

[I] sys-boot/grub

Available versions: 0.92-r1 0.94-r1 0.96-r1 0.96-r2 (~)0.96-r3 (~)0.97 0.97-r2 0.97-r3 0.97-r4 0.97-r5 0.97-r6 (~)0.97-r8 0.97-r9 0.97-r10 **1.98 **9999 {custom-cflags debug multislot ncurses netboot static truetype}

Installed versions: 0.97-r10(16:50:24 27.01.2011)(ncurses -custom-cflags -netboot -static)

Homepage: http://www.gnu.org/software/grub/

Description: GNU GRUB 2 boot loader

anonymous ()
Ответ на: комментарий от ArtemZ

>> хоть бы сделали в нём нормальную поддержку mdadm, а то там через заднее место она.

Видимо, это только у тебя.

GotF ★★★★★ ()

Осталось добавить поддержку загрузки с начального сектора - и можно шить вместо BIOS

Quasar ★★★★★ ()
Ответ на: комментарий от bloodredfrog

> перелопачивать конфиги и запускать какие-то дополнительные утилиты

там все правильно сделано. если у тебя несколько ведер, то сгенерить menu.lst по шаблону самое оно.

Rastafarra ★★★★ ()
Ответ на: комментарий от Dorif

> потом grub-mkconfig и потом любым текстовым редактором конфиг подредактировать уже никак, да?

sudo vim /etc/default/grub

не?

Rastafarra ★★★★ ()
Ответ на: комментарий от bloodredfrog

> Единственный вариант его использования — осилить единожды его настройку

написать шаблон генерации конфига и обновлять спокойно.

Rastafarra ★★★★ ()

вообще уже пора писать загрузчик для груба :)

Rastafarra ★★★★ ()
Ответ на: комментарий от Dorif

Есть же куча людей, юзающих эти фичи.

Ага, так и хочется спросить «кто все эти люди?»

ostin ★★★★★ ()

OMG.

Это болезнь практически всех opensource проектов - постоянно нужно придумывать что-то новое. Почему нельзя просто сделать нормальный загрузчик и успокоиться?

alpha2 ()
Ответ на: комментарий от alpha2

Почему же нельзя? Разве кто-то отобрал syslinux, lilo?

kmeaw ★★ ()

И что они так парятся - всё в загрузчик пишут. Можно было бы встроить в grub маленькое линуксовое ядро и к нему маленький загрузчик. А уж внутри развернуться, как душе угодно.

Кстати, вполне доволен. На Arch обновился без каких-либо проблем.

GblGbl ★★★★★ ()
Ответ на: комментарий от Rastafarra

> там все правильно сделано. если у тебя несколько ведер, то сгенерить menu.lst по шаблону самое оно.

Открыть в редакторе menu.lst, скопировать блок кода и поменять в нём название новоиспечённого ядра намного сложнее? Каждодневным ковырянием с кучей ядер занимается довольно малый процент пользователей. Для того, чтобы немного упростить жизнь им, надо усложнить её остальным, коих большинство? Я уж молчу про размер.

bloodredfrog ★★ ()
Ответ на: комментарий от bloodredfrog

>> надо усложнить её остальным, коих большинство?

А в чём усложнение, а то я не заметил? Дополнил единожды /etc/default/grub и всё. Автоматизация выше всяких похвал.

GotF ★★★★★ ()
Ответ на: комментарий от Rastafarra

> написать шаблон генерации конфига и обновлять спокойно.

Это загрузчик. Я хочу, чтобы он загружал, а не генерировал конфиги.

Да и что там генерировать каждый раз? Я один раз настроил, и у загрузчика есть всё необходимое для работы. Если в будущем в моей системе что-то изменится, я изменю настройки. Зачем всё время генерировать что-то? Зачем трогать то, что работает? Где гарантия, что при очередной генерации он сгенерирует всё правильно?

bloodredfrog ★★ ()
Ответ на: комментарий от GotF

> А в чём усложнение, а то я не заметил? Дополнил единожды /etc/default/grub и всё. Автоматизация выше всяких похвал.

На мой взгляд, проще написать пару строчек в menu.lst, чем допиливать правила генерации. Да и в большинстве случаев автоматизация тут не нужна. Какой смысл перегененирования конфигов после каждого обновления, если у меня в системе ничего не менялось?

bloodredfrog ★★ ()
Ответ на: комментарий от bloodredfrog

>> На мой взгляд, проще написать пару строчек в menu.lst, чем допиливать правила генерации.

Никакие правила я не допиливал, в этом файле задаются параметры ядра и всё такое.

Какой смысл перегененирования конфигов после каждого обновления, если у меня в системе ничего не менялось?

Если ничего не поменялось, то генерироваться ничего не будет.

GotF ★★★★★ ()
Ответ на: комментарий от bloodredfrog

> Открыть в редакторе menu.lst, скопировать блок кода и поменять в нём название новоиспечённого ядра намного сложнее?

зачем вообще все это, если есть update-grub? одна команда сделает все то, что ты хочешь делать руками, о трудолюбивый.

Rastafarra ★★★★ ()
Ответ на: комментарий от GotF

> Если ничего не поменялось, то генерироваться ничего не будет.

При обновлении GRUB'а не будет перегенерироваться конфиг? Вроде было именно так. Хотя могу быть неправ.

bloodredfrog ★★ ()
Ответ на: комментарий от bloodredfrog

> Это загрузчик. Я хочу, чтобы он загружал, а не генерировал конфиги.

загрузчик загружает, генератор генерит. что не так?

Зачем всё время генерировать что-то?

я не знаю что ты постоянно генерируешь и уж тем более я не знаю зачем ты это делаешь.

Зачем трогать то, что работает?

хз, я бы на твоем месте не трогал.

Где гарантия, что при очередной генерации он сгенерирует всё правильно?

в общем случае нет таких гарантий (или ты за это платил?), специально для этого есть багрепорты (для слабаков) и патчи (для Ъ).

Rastafarra ★★★★ ()
Ответ на: комментарий от bloodredfrog

> На мой взгляд, проще написать пару строчек в menu.lst, чем допиливать правила генерации.

а что именно ты там допиливал?

Rastafarra ★★★★ ()
Ответ на: комментарий от bloodredfrog

Будет, вероятно, но разве он так часто обновляется?

GotF ★★★★★ ()
Ответ на: комментарий от alpha2

alpha2> Почему нельзя просто сделать нормальный загрузчик и успокоиться?

Так сделали. Причём давно. Называется Lilo. Вот только многим хочется посложнее.

Quasar ★★★★★ ()
Ответ на: комментарий от Rastafarra

> загрузчик загружает, генератор генерит. что не так?

То, что иногда генератор генерит даже тогда, когда это не нужно?

я не знаю что ты постоянно генерируешь и уж тем более я не знаю зачем ты это делаешь.

Я не генерирую. У меня первый GRUB.

хз, я бы на твоем месте не трогал.

Я и не трогаю. А GRUB 2?

в общем случае нет таких гарантий (или ты за это платил?), специально для этого есть багрепорты (для слабаков) и патчи (для Ъ).

А ещё есть GRUB 1 с LILO для тех, кому нужен просто загрузчик.

bloodredfrog ★★ ()
Ответ на: комментарий от kmeaw

kmeaw> Уже есть - chainloader.

Значит осталось дописать автоматическое нахождение разделов и ОС с записю конфигурации в CMOS-память. Или делать спецсборки для ARM с удобным конфигуратором сборки.

Quasar ★★★★★ ()
Ответ на: комментарий от GotF

> Будет, вероятно, но разве он так часто обновляется?

Не в курсе, честно говоря. Видимо, не часто.

bloodredfrog ★★ ()
Ответ на: комментарий от bloodredfrog

> А ещё есть GRUB 1 с LILO для тех, кому нужен просто загрузчик.

есть конечно, пользуйся на здоровье. я вообще не понимаю чего ты разверещался :)

Rastafarra ★★★★ ()

Что означает поддержка DM RAID? Значит ли это, что теперь все разделы (включая /boot) могут быть райдовыми (с любым райд-уровнем)?

buddha ()

Во встроенный скриптовый язык GRUB добавлены следующие языковые конструкции: for, while, until, elif, break, continue, shift, return, маски файлов, регулярные выражения, параметры функций, позиционные параметры в setparams.

После этого становится логичным вопрос: «Что такое GRUB и зачем ему Линукс?»

Vudod ★★★★★ ()
Ответ на: комментарий от Rastafarra

> есть конечно, пользуйся на здоровье.

Спасибо, пользуюсь.

я вообще не понимаю чего ты разверещался :)

Пруфлинки выражения мною указанных эмоций можно?

bloodredfrog ★★ ()
Ответ на: комментарий от Nebuchadnezzar

А у меня банально не хватило места в MBR при обновлении до 2-ой версии.

значит я не одинок с этой проблемой :)

Reset ★★★★★ ()
Ответ на: комментарий от rave

Скажи чего и где отключить, чтобы он в mbr стал помещаться. Переразбивка диска не катит.

Reset ★★★★★ ()
Ответ на: комментарий от buddha

>> Что означает поддержка DM RAID?

Фейк-рейды, поддержка которых реализуется через device-mapper (обычно создаются средствами «контроллера» на мат. плате).

Значит ли это, что теперь все разделы (включая /boot) могут быть райдовыми (с любым райд-уровнем)?

/boot не может быть на страйповом рейде, если речь идёт о mdraid. С dmraid — возможно (костыль в контроллере), но точно не скажу.

GotF ★★★★★ ()

блин, это уже не загрузчик, а ОС какая то... сделали непонятно что, вывод - такой нам груб не нужен.

iomould ()
Ответ на: комментарий от MihailP

>У меня LILO, мне пофиг (:

ну тебе только лялех нужен, а всякую сугубо специфичную хрень запускать лично мне надо либо grub (x86) и uboot (arm)... ну и не только мне, так что не пофик да.

iomould ()

Кстати, меня Второй Груб подводил несколько раз: не хотел грузить другие Линуксы, поставленные ранее и обнаруженные при установке. Впрочем, первый отличался тем же.

PS Использовал с версии, кажется 1.96, ещё в Debian Lenny (там по-умолчанию шёл первый Груб).

Vudod ★★★★★ ()
Ответ на: комментарий от Rastafarra

>да и вообще вопросы по ембедеду есть.

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

iomould ()

Теперь ему нужно меню сборки как у линукса, я серьезно, мало кому 90% новомодных свистоперделок в загрузчике нужно. Баг с зависанием при использовании USB клавиатуры уже пофиксили? А то можно было бы еще и отладчик в него добавить :)

A-234 ★★★★★ ()
Ответ на: комментарий от iomould

вопрос для начала как-бы это дело забутить. убут собрал --- сдохло. ведро собирал из гита --- не бутится, рутфс вообще непонятно где раздобыть свежий. прям хоть lfs собирай...

а как ты без лялиха? что на арме крутится?

Rastafarra ★★★★ ()
Ответ на: комментарий от Rastafarra

>ведро собирал из гита --- не бутится

OMG! нет, я может конечно и не понимаю ничего в садомазо, но я б не стал так с плетками и наручниками извращатся...

рутфс вообще непонятно где раздобыть свежий. прям хоть lfs собирай...

сам собирай - все верно да.

а как ты без лялиха? что на арме крутится?

да легко - где можно беру кучу готовых либ и тд и тп - склеиваю, отлаживаю и готово - либо что то простое гибридное , либо чисто application level, сейчас проще - уже база какая то есть. Ну иногда приходится выковыривать из лялеха или бсд ядер что либо готовое и годное, может потом платформу конструктор забахаю - ну это если жена одобрит пару тройку месяцев упоротой работы ...

iomould ()
Ответ на: комментарий от iomould

> да легко - где можно беру кучу готовых либ и тд и тп - склеиваю, отлаживаю и готово - либо что то простое гибридное , либо чисто application level

а, в этом смысле... не, дрова под это дело я писать пока не собрался :)

Rastafarra ★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.