Bug #723
Попытка создания образа обрывается ошибкой "Не удалось обнаружить initramfs"
Status: | New | Start: | 03/04/2015 | |
---|---|---|---|---|
Priority: | Normal | Due date: | ||
Assignee: | - | % Done: | 0% |
|
Category: | Calculate Utilities | Spent time: | - | |
Target version: | - | |||
Votes: | 0 |
Description
Попытка создания образа обрывается ошибкой:
# cl-image --noisohybrid --keep-tree iso * Создание образа Calculate Linux Системная информация * Системный профиль: CLDM/x86 * Собираемая система: Calculate Linux Desktop Mate * Версия системы: 14.12.1 * Тип оборудования машины: i686 * Свободное место в разделе для сборки образа: 5.2G * Свободное место в разделе для iso образа: 5.2G Выполнение проверок * Образ будет создан в: /var/calculate/linux/cldm-20150304-i686.iso * ВНИМАНИЕ: образ будет создан во временной файловой системой * Не удалось обнаружить initramfs
вывод переменных:
# cl-image --noisohybrid --keep-tree iso -v Список переменных library: --------------------------- --- ---------- Имя переменной Режим Значение --------------------------- --- ---------- cl_chroot_path [r] / cl_chroot_status [r] off cl_env_path [r] ['/etc/calculate/calculate2.env', '/var/calculate/calculate2.env', '/var/calculate/remote/calculate2.env'] cl_kernel_uid [r] no_uid cl_root_path [r] / hr_cdrom_set [r] off os_arch_machine [r] i686 os_lang [r] ['bg_BG', 'de_DE', 'en_US', 'es_ES', 'fr_FR', 'it_IT', 'pl_PL', 'pt_BR', 'pt_PT', 'ro_RO', 'ru_RU', 'uk_UA'] os_linux_shortname [r] Gentoo os_linux_system [r] os_root_dev [r] /dev/ram0 os_root_type [r] livecd os_scratch [r] on Список переменных builder: --------------------------- --- ---------- Имя переменной Режим Значение --------------------------- --- ---------- ac_builder_iso [r] up ac_builder_squash [r] cl_builder_assemble_set [r] off cl_builder_branch_orig [r] cl_builder_cdname [r] cl_builder_current_squash [r] livecd.squashfs cl_builder_distro [r] [] cl_builder_filesnum [r] 0 cl_builder_image [r] /var/calculate/linux/cldm-20150304-i686.iso cl_builder_image_path [r] ['/var/calculate/linux', '/var/calculate/remote/linux', '/usr/calculate/share/linux'] cl_builder_initrd_install [r] cl_builder_iso_path [w] /var/calculate/tmp/iso-CLDM-i686 cl_builder_isohybrid_set [r] off cl_builder_kernel [r] vmlinuz-3.18.8-calculate cl_builder_kernel_cmd [w] cl_builder_kernel_config [r] config-3.18.8-calculate cl_builder_kernel_suffix [r] cl_builder_kernel_systemmap [r] System.map-3.18.8-calculate cl_builder_kernel_ver [r] 3.18.8-calculate cl_builder_linux_info [r] {'os_arch_machine': 'i686', 'os_system_profile': '../../var/lib/layman/mavriq-overlay/profiles/CLDM/x86', 'os_linux_shortname': 'CLDM', 'os_linux_subname': 'Mate', 'cl_update_rep_url': ['git://git.calculate.ru/calculate/portage.git', 'git://git.calculate.ru/calculate/overlay.git', 'git://git.calculate.ru/calculate/distros.git', 'git://github.com/mavriq/mavriq-overlay.git'], 'os_linux_system': 'desktop', 'os_linux_ver': '14.12.1', 'os_linux_name': 'Calculate Linux Desktop', 'cl_update_rep_name': ['portage', 'calculate', 'distros', 'mavriq-overlay']} cl_builder_live_set [r] off cl_builder_old_squash [r] livecd.squashfs cl_builder_path [w] /run/builder cl_builder_remove_squash [r] cl_builder_root_param [w] live:LABEL=CLDM-20150304 cl_builder_squash_path [w] /livecd.squashfs.dir cl_builder_tree [r] on cl_kernel_boot_path [w] /boot cl_kernel_cache_path [w] /var/cache/genkernel cl_kernel_config [r] cl_kernel_config_path [w] /var/lib/layman/calculate/profiles/kernel cl_kernel_full_ver [r] 3.18.8-calculate cl_kernel_install_path [w] / cl_kernel_src_path [r] /usr/src/linux cl_kernel_suffix [r] 3.18.8-i686-Gentoo cl_kernel_temp_path [w] /var/calculate/tmp/genkernel cl_kernel_ver [r] 3.18.8 cl_name [r] calculate-builder cl_ver [r] 2.2.32.1 os_builder_arch_machine [r] i686 os_builder_clock_timezone [w] os_builder_id [r] os_builder_linux_build [r] 20150304 os_builder_linux_filesnum [r] 505856 os_builder_linux_name [r] Calculate Linux Desktop os_builder_linux_shortname [r] CLDM os_builder_linux_subname [r] Mate os_builder_linux_system [r] desktop os_builder_linux_ver [r] 14.12.1 os_builder_locale_lang [w] os_builder_makeopts [w] os_builder_profile [r] ../../var/lib/layman/mavriq-overlay/profiles/CLDM/x86
установленные пакеты:
# eix -I 'calculate-(builder|utils|sources)' [I] sys-apps/calculate-builder [1] Available versions: 2.2.32-r8{tbz2} **2.2.9999 {PYTHON_TARGETS="python2_7"} Installed versions: 2.2.32-r8{tbz2}(01:15:12 01.01.2015)(PYTHON_TARGETS="python2_7") Homepage: http://www.calculate-linux.org/main/en/calculate2 Description: Builder tasks utilities for Calculate Linux [I] sys-apps/calculate-utils [1] Available versions: (0) 2.2.32-r15{tbz2} **2.2.9999 (3) 3.3.0.17{tbz2} ~3.3.1 **3.3.9999 {client console desktop minimal pxe qt4 +server CL="assemble builder client desktop installgui server" PYTHON_TARGETS="python2_7"} Installed versions: 2.2.32-r15{tbz2}(22:07:35 23.01.2015)(CL="builder -assemble -server") 3.3.0.17(3){tbz2}(01:09:02 02.03.2015)(client console desktop qt4 server -minimal -pxe PYTHON_TARGETS="python2_7") Homepage: http://www.calculate-linux.org/main/en/calculate_utilities Description: A set of Calculate utilities for system installation, build and upgrade [I] sys-kernel/calculate-sources [1] Available versions: (3.12.38) ~3.12.38^bs (3.14.31) ~3.14.31^bs (3.14.34) ~3.14.34^bs (3.18.8) 3.18.8^bs{tbz2} (3.19.0) **3.19.0^bs {build firmware minimal plymouth symlink themes vmlinuz} Installed versions: 3.18.8(3.18.8)^bs{tbz2}(15:07:24 04.03.2015)(firmware plymouth symlink themes vmlinuz -build -minimal) Homepage: http://www.calculate-linux.org Description: Calculate Linux kernel image [1] "calculate" /var/lib/layman/calculate Найдено 3 совпадений.
собрать образ помогло явное прописывание отсутствующей переменной:
cat << EOF >/etc/calculate/calculate2.env [builder] cl_builder_initrd_install = initramfs-3.18.8-calculate.img EOF
но, думаю, это плохое решение.
History
Updated by Mikhail Hiretsky over 9 years ago
Что находится в boot собираемой системы? На какое ядро указывает usr/src/linux в собираемой системе? К какому ядру реально принадлежит initramfs-3.18.8-calculate.img?
gzip -dc initramfs-3.18.8-calculate.img | cpio -tf | grep modules.alias
Updated by Михаил Гагауз over 9 years ago
Что находится в boot собираемой системы?
# ls -lA /run/builder/boot/ итого 45856 lrwxrwxrwx 1 root root 1 фев 16 2012 boot -> . -rw-r--r-- 1 root root 54531 авг 15 2014 boot.jpg -rw-r--r-- 1 root root 129641 мар 4 17:13 config-3.18.8-calculate drwxr-xr-x 2 root root 4217 авг 15 2014 grub -rw-r--r-- 1 root root 40243330 мар 4 17:13 initramfs-3.18.8-calculate.img -rw-r--r-- 1 root root 0 янв 1 00:55 .keep -rw-r--r-- 1 root root 1760704 мар 4 17:13 System.map-3.18.8-calculate -rw-r--r-- 1 root root 4767184 мар 4 17:13 vmlinuz-3.18.8-calculate
На какое ядро указывает usr/src/linux в собираемой системе?
на единственное установленное:# ls -l /run/builder/usr/src/linux
К какому ядру реально принадлежит initramfs-3.18.8-calculate.img?
все тому-же
# diff -su /run/builder/boot/initramfs-3.18.8-calculate.img /run/builder/usr/share/calculate-sources/3.18.8/boot/initramfs-3.18.8-calculate Файлы /run/builder/boot/initramfs-3.18.8-calculate.img и /run/builder/usr/share/calculate-sources/3.18.8/boot/initramfs-3.18.8-calculate идентичны
gzip -dc initramfs-3.18.8-calculate.img | cpio -tf | grep modules.alias
хмм..
# gzip -dc /run/builder/boot/initramfs-3.18.8-calculate.img | cpio -tf | grep modules.alias gzip: /run/builder/boot/initramfs-3.18.8-calculate.img: not in gzip format cpio: преждевременный конец архива # lz4cat < /run/builder/boot/initramfs-3.18.8-calculate.img | cpio -tf | grep modules.alias lib/modules/3.18.8-calculate/modules.alias lib/modules/3.18.8-calculate/modules.alias.bin 128599 блоков
если я правильно понял, шаблоном
/var/lib/layman/calculate/profiles/templates/3.3/6_ac_install_patch/sys-kernel/calculate-sources/3.18/10-calculate-x86-3.18
включается парамтр ядра CONFIG_KERNEL_LZ4=y
может ли причина ошибки быть в том, что
initramfs
сжат при помощи lz4
?Updated by Михаил Гагауз over 9 years ago
PS
на другой системе я использую до сих пор ядро 3.14.27
, там ядро сжато при помощи gzip
, и там выполнить cl-image
удалось без проблем
Updated by Mikhail Hiretsky over 9 years ago
Да. Причина в том, что calculate-builder
ищет подходящий для ядра initramfs заглядывая во внутрь, считая что все initramfs
запакованы gzip
. Исправления будут в calculate-lib-2.2.32-r7
.