Summary: | вернуть возможность запуска livecd без rw slice на флэшке | ||
---|---|---|---|
Product: | Sisyphus | Reporter: | Michael Shigorin <mike> |
Component: | make-initrd-propagator | Assignee: | Michael Shigorin <mike> |
Status: | CLOSED FIXED | QA Contact: | qa-sisyphus |
Severity: | normal | ||
Priority: | P3 | CC: | aen, boyarsh, ildar, sem, zerg |
Version: | unstable | Keywords: | regression |
Hardware: | all | ||
OS: | Linux | ||
URL: | http://git.altlinux.org/gears/m/make-initrd-propagator.git?p=make-initrd-propagator.git;a=commit;h=eb592241a93852d2658bcf58c98e35c2cdc8744a | ||
Bug Depends on: | 28289 | ||
Bug Blocks: |
Description
Michael Shigorin
2016-09-06 16:07:35 MSK
Изменил поведение make-initrd-propagator в 0.30: без live_rw в параметрах не монтирует и уже существующий rw slice. На UEFI думаю сделать умолчанием всё-таки вариант "live_rw без lowmem", т.е. грузить squashfs в RAM для чтения, а писать на флэшку (если это флэшка). Резон -- машины с UEFI, как правило, имеют от 2 Гб памяти и флэшки с ними применяются обычно тоже не самые древние/медленные (хотя...). Сейчас это выглядит так: - if get_cmdline automatic label || get_cmdline live_rw; then - create_disk_slice + if [ -d /sys/firmware/efi ] || get_cmdline automatic label; then + get_cmdline live_rw && create_disk_slice fi См. тж.: https://bugzilla.altlinux.org/show_bug.cgi?id=28289#c14 https://bugzilla.altlinux.org/show_bug.cgi?id=28289#c32 https://bugzilla.altlinux.org/show_bug.cgi?id=28289#c34 PS: ещё может иметь смысл сделать проверку на разумный объём места: напоролся на ситуацию, когда образ впритирку влез на четырёхгиговую флэшку, /.rw получился размером мегабайт двести и без дополнительных действий даже apt-get update было не выполнить. make-initrd-propagator-0.30-alt1 -> sisyphus: * Tue Sep 06 2016 Michael Shigorin <mike@altlinux> 0.30-alt1 - only mount rw slice when live_rw is specified explicitly due to severe I/O penalty coming with it (closes: #32476) - slightly better package description (В ответ на комментарий №2) > - only mount rw slice when live_rw is specified explicitly > due to severe I/O penalty coming with it (closes: #32476) Это неправда, т.к. условие get_cmdline live_rw накладывалось только на вызов create_disk_slice(), но не на объемлющий его вызов disk_slice(). Обсудили с george@, он подсказал мнемонику для refind -- "RO" показывать как CD (что сейчас и делается), live_rw -- как флэшку. Это потребуется реализовать в том куске mkimage, который давно надо бы оттуда вынести в профили, и в refind (для начала починив сборку, это обновление efi toolchain со всеми вытекающими). Пока думаю выровнять условия _создания_ и _монтирования_ disk slice, перенеся дополнительное условие из "внутри disk_slice()" в место вызова этой функции (при этом остаётся возможность монтирования раздела с меткой "alt-live-storage" с локального диска или другой флэшки, чем пользовался ildar@): disk_slice(){ local dev=/dev/disk/by-label/alt-live-storage case "$(get_cmdline -p automatic method)" in disk|cdrom) if [ -d /sys/firmware/efi ] || get_cmdline automatic label; then - get_cmdline live_rw && create_disk_slice + create_disk_slice fi ;; esac [...] if equal_cmdline live stagename || equal_cmdline rescue stagename; then - disk_slice + get_cmdline live_rw && disk_slice fi make-initrd-propagator-0.31-alt1 -> sisyphus: * Mon Oct 17 2016 Michael Shigorin <mike@altlinux> 0.31-alt1 - improve RW slice operation (closes: #32476, #32562): only create/use it when there's enough space (1Gb or more), and it's been either + explicitly asked for (BIOS mode), or + fast enough (UEFI mode; otherwise the filesystem will be marked "alt-slow-storage") - add mkfs/mount options for faster operation - extend debug support |