Usermode-fs-tools/iso2stick: различия между версиями
Klark (обсуждение | вклад) |
Klark (обсуждение | вклад) Нет описания правки |
||
Строка 1: | Строка 1: | ||
'''iso2stick''' -- достаточно мощный конвертер, у которого много разных возможностей. Он перепаковывает официальные образы дистрибутивов ALT (в формате ISO-9660) в загрузочные образы USB-стиков (HDD-дисков). Для использования данной утилиты не требуется полномочий root, необходим только один пакет: [[usermode-fs-tools]]. | '''iso2stick''' -- достаточно мощный конвертер, у которого много разных возможностей. Он перепаковывает официальные образы дистрибутивов ALT (в формате ISO-9660) в загрузочные образы USB-стиков (HDD-дисков). Для использования данной утилиты не требуется полномочий root, необходим только один пакет: [[usermode-fs-tools]] (в первую очередь пакет создавался ради этого скрипта-конвертера на POSIX shell размером более 1200 строк). | ||
== Формальное описание == | == Формальное описание == | ||
Строка 61: | Строка 61: | ||
* Возможность исправления "на лету" уже известных багов в определённых установочных образах. | * Возможность исправления "на лету" уже известных багов в определённых установочных образах. | ||
== | == РОДНОЙ режим ('native') == | ||
Интересной особенностью утилиты является возможность конвертирования | В '''нативном''' режиме (например, когда мы сидим на '''ppc64le''' и конвертируем ISO-образ для того же '''ppc64le''') основные требования определяются утилитой '''grub2dirs'''. На Эльбрусах можно конвертировать образы только в '''нативном''' режиме, т.к. на них обычно не ставится '''grub'''. Конвертирование образов '''i586''' на '''x86_64''' также является '''нативным'''. | ||
== ЧУЖОЙ режим ('foreign') == | |||
Интересной особенностью утилиты является возможность конвертирования образов на одной аппаратной платформе для другой аппаратной платформы. Например, операцию можно выполнить, сидя за компьютером '''x86_64''', конвертируя диск для платформы '''aarch64'''. Данная возможность доступна с оговорками: в хостовой системе должен быть установлен '''grub''' и на исходном диске ISO-9660 в репозитории '''ALTLinux/RPMS.main''' должны находиться требуемые RPM-пакеты, в основном, связанные с загрузчиком '''grub'''. Это ограничение действует для любых целевых носителей, кроме '''e2k'''/'''e2kv4'''. Другими словами: для конвертирования образов '''e2k'''/'''e2kv4''' на другой платформе никаких особых требований нет, но использовать Эльбрус в качестве хостовой системы для других архитектур без установленного '''grub''' не выйдет, для остальных аппаратных платформ исходный ISO-диск должен быть установочным дистрибутивом ALT. | |||
Версия от 03:54, 17 ноября 2020
iso2stick -- достаточно мощный конвертер, у которого много разных возможностей. Он перепаковывает официальные образы дистрибутивов ALT (в формате ISO-9660) в загрузочные образы USB-стиков (HDD-дисков). Для использования данной утилиты не требуется полномочий root, необходим только один пакет: usermode-fs-tools (в первую очередь пакет создавался ради этого скрипта-конвертера на POSIX shell размером более 1200 строк).
Формальное описание
$ iso2stick -h Usage: iso2stick [<options>...] [--] <iso9660> <image> [<size>] Options: -b, --bios-only Make BIOS-only boottable system on x86. -D, --datadir=<PATH> Add specified files to the boot disk. -d, --dual-boot Add both 32-bit and 64-bit UEFI firmware boot loaders for 64-bit target system, such as x86_64 or aarch64. -e, --excludes=<FILE> Set list for exclude files from ISO-9660. -f, --files=<FILE> Set list for include files from ISO-9660. -g, --guid-gpt Use GUID/GPT disk label instead BIOS/MBR. -m, --mode=<MODE> One of the followed repack modes: rescue, deploy, install, live, install+rescue, install+live or install+live+rescue. -L, --lang=<LIST> List of the languages, for example: '"ru_RU=Russian" "en_US=English"'. -l, --initlang=<CODE> Initial/default language code ('ru_RU' used by default). -n, --no-clean Keep temporary files on exit. -P, --pad-space Fill free space on EFI-part by zero's. -q, --quiet Suppress additional diagnostic. -r, --reserved=<SIZE> Reserved space on the boot disk, in MiB. -S, --swap=<SIZE> Specify SWAP partition size, in MiB. -s, --secure-boot Use ALT shim's for UEFI Secure Boot. -T, --timeout=<SECS> Specify boot menu timeout, in seconds. -t, --target=<ARCH> Use specified target architecture: i586, x86_64, aarch64, armh, ppc64le or e2k/v4. -U, --uuid=<UUID> Specify UUID of the ROOT filesystem. -u, --uefi-only Make UEFI-only boottable system on x86. -v, --version Show this program version and exit. -h, --help Show this help message and exit. Please, report bugs to https://bugzilla.altlinux.org/
Ключевые возможности
- Для запуска не требуется полномочий root, операция выполняется обычным пользователем.
- По умолчанию размер создаваемого образа стремится к минимуму, т.е. на нём не останется свободного места.
- Но можно указать явно, сколько мегабайт необходимо зарезервировать либо задать требуемый размер образа.
- Замена конгломерата загрузчиков с графикой только одним без графики: в ряде случаев это увеличивает надёжность.
- Единое меню при любых вариантах загрузки: генерируется само либо создаётся на основе пользовательского шаблона.
- Можно "оторвать" неподходящий режим загрузки, препятствующий решению некоторой задачи на "железе".
- Можно убрать не нужные файлы второй стадии загрузки, сократив размер диска и число пунктов загрузочного меню.
- Можно добавить указанные файлы на создаваемый образ диска.
- Можно заменить некоторые файлы в создаваемом образе диска.
- Можно передать набор своих скриптов-хуков, выполняемых непосредственно перед созданием образа.
- Можно конвертировать диски, предназначенные для другой аппаратной платформы.
Пока не реализованы
- Возможность углубляться в образы initrd (первая стадия загрузки) и squashfs (вторая стадия загрузки).
- Возможность замены устаревшего и ненадёжного propagator новыми скриптами make-initrd.
- Возможность перепаковки initrd другими инструментами в тех случаях, когда make-initrd не подходит.
- Возможность исправления "на лету" уже известных багов в определённых установочных образах.
РОДНОЙ режим ('native')
В нативном режиме (например, когда мы сидим на ppc64le и конвертируем ISO-образ для того же ppc64le) основные требования определяются утилитой grub2dirs. На Эльбрусах можно конвертировать образы только в нативном режиме, т.к. на них обычно не ставится grub. Конвертирование образов i586 на x86_64 также является нативным.
ЧУЖОЙ режим ('foreign')
Интересной особенностью утилиты является возможность конвертирования образов на одной аппаратной платформе для другой аппаратной платформы. Например, операцию можно выполнить, сидя за компьютером x86_64, конвертируя диск для платформы aarch64. Данная возможность доступна с оговорками: в хостовой системе должен быть установлен grub и на исходном диске ISO-9660 в репозитории ALTLinux/RPMS.main должны находиться требуемые RPM-пакеты, в основном, связанные с загрузчиком grub. Это ограничение действует для любых целевых носителей, кроме e2k/e2kv4. Другими словами: для конвертирования образов e2k/e2kv4 на другой платформе никаких особых требований нет, но использовать Эльбрус в качестве хостовой системы для других архитектур без установленного grub не выйдет, для остальных аппаратных платформ исходный ISO-диск должен быть установочным дистрибутивом ALT.
Enjoy! ;-)