Сегодня было объявлено о выходе 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).
>>> Подробности