Новая версия GNU Parted это не только исправление ошибок, но и добавление новых возможностей, в том числе и тех, что были исключены в прошлой версии, parted 3.0. Добавлена новая библиотека, libparted-fs-resize, которая обеспечивает изменение размеров файловых систем FAT и HFS/HFS+.
Итак, значительные изменения
- Новые особенности
- parted теперь поддерживает до 64 разделов msdos (было всего 16). Таблица разделов не предполагает ограничения, это ведь просто связный список, так что это значение может быть увеличено в будущем;
- улучшена поддержка разбиения на разделы петлевых устройств;
- новая библиотека libparted-fs-resize служит для изменения размеров файловых систем FAT и HFS/HFS+; эта библиотека включает всего лишь несколько функций, для её полноценного использования следует подключать и libparted.
- Исправление ошибок
- в libparted исправлены ошибки при создании большого количества разделов при использовании таблицы разделов GPT (ошибка появилась в версии parted-1.9.0);
- исправлена поддержка большого количества разделов в таблице разделов MS-DOS, ранее ядро не всегда информировалось о новых разделах сверх 16;
- parted теперь возвращает ненулевой код ошибки в ряде ошибочных ситуаций, когда parted и ранее сообщала об ошибке, например: "Error: ...unrecognised disk label";
- libparted: функция gpt_disk_duplicate теперь копирует флаги на новый диск, ранее флаги игнорировались;
- libparted: реализована поддержка новой системы именования версий ядра Linux, такие ядра, как 3.0 и т.п.;
- libparted: исправлена ошибка, из-за которой таблица разделов порой неправильно идентифицировалась как pc98, а не msdos;
- parted теперь использует атрибут устройства ext_range, чтобы определить максимально допустимое число разделов. Благодаря этому parted может корректно работать с устройствами MD RAID;
- libparted: исправлены ошибки при создании новой таблицы разделов на устройстве с существующей таблицей разделов mac;
- исправлены и некоторые другие ошибки.
- Изменения в поведении
- дискеты больше не сканируются в системах с ядром Linux, так как на некоторых машинах с неправильно настроенным BIOS это могло приводить к зависаниям. Теперь дискеты нельзя разбить на разделы с помощью parted;
- изменилась семантика команды mkpart; если конец раздела задан в таких единицах, как MiB, GiB и т.п., то раздел создаётся на один сектор меньше. Благодаря этому можно создавать разделы 1MiB-2MiB, 2MiB-3MiB и тому подобное в этом же духе;
- для устройств device-mapper (LVM, dmraid) больше не вставляется дополнительная буква 'p' между базовым именем устройства и номером раздела. Это приводит parted в согласие с ядром Linux, однако, отличается от способа работы dmraid 1.0.0-rc16-3;
- добавлена возможность установки boot-флага на GP PMBR. Это необходимо для некоторых BIOS, которые иначе отказываются загружаться с GPT. Чтобы установить флаг pmbr_boot, могут использоваться команды disk_set и disk_toogle.
- Сборка
- "make dist" больше не создает архивы .tar.gz. xz достаточно хорошо переносим, чтобы использовать только .tar.xz.
Архив с исходниками: http://ftpmirror.gnu.org/parted/parted-3.1.tar.xz