LINUX.ORG.RU

kernel panic out of memory

 , , ,


0

1

Стоит и работает на старом пк ubuntu 16,04. Установлена на обычный mbr раздел ext4 без lvm. Загрузчик grub2 прописан в mbr установлен в /boot на корневом разделе с ubuntu. Есть lvm линейный на 2 дисках в нем 2 lv: один под /home в убунте, на второй пытаюсь поставить gentoo, Раздел под генту btrfs 10г. Ставил из убунты, все по мануалу, развернул из stage3, ядро собрал, btrfs и lvm в ядре включил, btrfs-progs и lvm в генту поставил, ядро и модули установил, даже сделал initramfs хотя он тут скорее не нужен. Единственное что не стал делать по мануалу - устанавливать загрузчик т.к уже есть от убунты. В убунте сделал update-grub2, перезагрузился, выбрал генту и.... вылетает kernel panic: out of memory практически сразу. Помогите починить.


Установлена на обычный mbr раздел ext4 без lvm

Есть lvm линейный на 2 дисках в нем 2 lv: один под /home в убунте, на второй пытаюсь поставить gentoo

Не замечаешь противоречий?

Загрузчик grub2 прописан в mbr установлен в /boot на корневом разделе с ubuntu.

Что я только что прочитал?

kernel panic: out of memory

Сфотографируй так, чтобы текст был различим.

Black_Shadow ★★★★★
()

даже сделал initramfs хотя он тут скорее не нужен.

Без Initramfs ядро не сможет активировать LVM. В зависимости от используемого initramfs нужно указать соответствующие параметры ядра, чтобы происходила активация LVM.

По поводу проблемы - давай скриншоты.

kostik87 ★★★★★
()
Ответ на: комментарий от Black_Shadow

Противоречий нет. Ubuntu не установлена на lvm но lvm вообще существует и используется.

Ты не сможешь загрузить систему с LVM без initramfs почему? в ядре поддержка есть, в grub insmod lvm и dolvm в ядро. Я руками в lvm никогда не ставил, но важно чтобы grub мог прочитать свои файлы и загрузить ядро, а ядро должно быть способно прочитать свой корень. То что вылетает kernel panic значит что grub успешно прочитал свои конфиги, смонтировал lvm, загрузил оттуда ядро. Если ядро не может прочитать свой корень там по моему ошибка по другому выглядит. Скриншоты будут, я подумал что ядро кривособрано и решил его пересобрать генкернелом но оно как то долго сейчас висит на стадии сжатия этого самого initramfs, как только так ребутну и сделаю скрины ну если не заработает.

antech
() автор топика
Ответ на: комментарий от antech

в ядре поддержка есть

LVM необходимо инициализировать из user space.

Black_Shadow ★★★★★
()
Ответ на: комментарий от antech

Вот тебе кусок инициализации LVM из genkernel-next:

    if [ "${USE_LVM_NORMAL}" = "1" ]; then
      for lvm_path in /sbin/lvm /bin/lvm MISSING ; do
        [ -x "$lvm_path" ] && break
      done
      if [ "${lvm_path}" = "MISSING" ]
      then
        bad_msg "dolvm invoked, but LVM binary not available! skipping LVM volume group activation!"
      else
        # This is needed for /sbin/lvm to accept the following logic
        local cmds="#! ${lvm_path}"

        # If there is a cahe, update it. Unbreak at least dmcrypt
        [ -d /etc/lvm/cache ] && cmds="${cmds} \nvgscan"

        # To activate volumegroups on all devices in the cache
        cmds="${cmds} \nvgchange -ay --sysinit"
        if is_mdev; then
            # To create symlinks so users can use
            # real_root=/dev/vg/root
            # This needs to run after vgchange, using
            # vgchange --mknodes is too early.
            cmds="${cmds} \nvgmknodes --ignorelockingfailure"
        fi

        # And finally execute it all (/proc/... needed if lvm
        # is compiled without readline)
        good_msg "Activating Logical Volume Groups"
        printf "%b\n" "${cmds}" | $lvm_path /proc/self/fd/0
      fi
    fi

Black_Shadow ★★★★★
()
Ответ на: комментарий от Black_Shadow

Я маг?

$ ls /boot
config-4.15.1-gentoo EFI grub System.map-4.15.1-gentoo vmlinuz-4.15.1-gentoo
$ lsblk
NAME             MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda                8:0    0 111.8G  0 disk 
├─sda1             8:1    0   512M  0 part /boot
└─sda2             8:2    0 111.3G  0 part /
sdb                8:16   0 465.8G  0 disk 
└─sdb1             8:17   0 465.8G  0 part 
  └─LVMHome-home 253:0    0 931.5G  0 lvm  /home
sdc                8:32   0 465.8G  0 disk 
└─sdc1             8:33   0 465.8G  0 part 
  └─LVMHome-home 253:0    0 931.5G  0 lvm  /home

creazero
()
Ответ на: комментарий от Black_Shadow

видимо большой, генкернелом он же все подряд собирает еще и жмет -9. а озу там всего 256мб :) . Я отменил уже. Вот запустил со старым ядром и initramfs собранным с --lvm --btrfs. ошибка на фотке. Чего делать с этим?

antech
() автор топика
Ответ на: комментарий от Black_Shadow
menuentry 'Ubuntu, с Linux 4.9.76-gentoo-r1' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.9.76-gentoo-r1-advanced-9a12b261-98f2-4fca-af29-ff7037a2bba8' {
                recordfail
                load_video
                gfxmode $linux_gfx_mode
                insmod gzio
                if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
                insmod part_msdos
                insmod ext2
                set root='hd0,msdos1'
                if [ x$feature_platform_search_hint = xy ]; then
                  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1  9a12b261-98f2-4fca-af29-ff7037a2bba8
                else
                  search --no-floppy --fs-uuid --set=root 9a12b261-98f2-4fca-af29-ff7037a2bba8
                fi
                echo    'Загружается Linux 4.9.76-gentoo-r1 …'
                linux   /boot/vmlinuz-4.9.76-gentoo-r1 root=UUID=9a12b261-98f2-4fca-af29-ff7037a2bba8 ro acpi_enforce_resources=lax dolvm
                echo    'Загружается начальный виртуальный диск …'
                initrd  /boot/initramfs-genkernel-x86-4.9.76-gentoo-r1
        }

чет меня вот некоторые строки в этом коде смущают.

-> % blkid
/dev/sda3: UUID="4c23a465-ad6d-427d-afea-e789da0a80fa" TYPE="swap" PARTUUID="985f3988-03"
/dev/sda1: UUID="9a12b261-98f2-4fca-af29-ff7037a2bba8" TYPE="ext4" PARTUUID="985f3988-01"
/dev/sda5: UUID="txLXCN-XKUR-tdSC-n343-Xzid-91jH-rmIL2i" TYPE="LVM2_member" PARTUUID="985f3988-05"
/dev/sdb1: UUID="Z45tx4-NkhF-2BnO-YCkc-4Q7q-Kp8Y-ADHDJj" TYPE="LVM2_member" PARTUUID="00004ce8-01"
/dev/sdc1: UUID="14AC547CAC545A76" TYPE="ntfs" PARTUUID="9af43abd-01"
/dev/mapper/sm-gentoo: UUID="10fb06a8-2c9e-4af2-9f42-895888198a6b" UUID_SUB="62786570-c579-47ab-b02c-163431d85234" TYPE="btrfs"
/dev/mapper/sm-smV0: UUID="56857124-a45f-42f9-a29d-f50a230a6e7f" TYPE="ext4"
Да, гентушное ядро лежит в /boot который от убунты

antech
() автор топика
Ответ на: комментарий от Black_Shadow

Огромный?

-> % du -h /boot/initramfs-genkernel-x86-4.9.76-gentoo-r1
2,3M    /boot/initramfs-genkernel-x86-4.9.76-gentoo-r1
-> % du -h /boot/vmlinuz-4.9.76-gentoo-r1
5,4M    /boot/vmlinuz-4.9.76-gentoo-r1
А это убунтовый с которым пускается
-> % du -h /boot/initrd.img-4.4.0-112-generic
34M     /boot/initrd.img-4.4.0-112-generic

Смотри, у краба в конфиге

root=UUID=9a12b261-98f2-4fca-af29-ff7037a2bba8
А рут у него должен быть этот
/dev/mapper/sm-gentoo: UUID="10fb06a8-2c9e-4af2-9f42-895888198a6b" UUID_SUB="62786570-c579-47ab-b02c-163431d85234" TYPE="btrfs"

Тольк вот как его поменять? этот конфиг автогенерится.

antech
() автор топика
Ответ на: комментарий от Black_Shadow

щас попробую, это вот 4 час btrfs в убунтоядре собирается. Кошмар какой то. Ничего не понимаю почему оно такое медленное? Вроде бы от выпиливания smp оно становится ощутимо шустрее пока нагрузки нет, как только в фоне что то начинает работать все становится раком. Да и компилятор раньше шустрее собирал

antech
() автор топика
Ответ на: комментарий от Black_Shadow

Попробовал, толку нет, все то же самое

antech
() автор топика
Ответ на: комментарий от Black_Shadow

после 4 дней мучений все загрузилось. Как оказалось я немного неправильно ядро поставил. make modules_install надо было а я прописал make modules install. После этого out of memory пропал и появился unknown block device /dev/dm-1, добавил dolvm к ядру в крабе и все стартануло. Еще и иннитрд пересобрал у генкернела оказывается есть конфиг :) в котором есть уровень компрессии... вообщем 3 дня сжатия инитрд превратилось в в да мгновенно оно. Собственно теперь вопрос как крабу мозг вправить чтобы он правильные конфиги генерил? И если у кого есть загрузка с lvm корня киньте свой конфиг посмотреть?

antech
() автор топика
Ответ на: комментарий от antech

Ну хорошо, что всё разрешилось. По поводу конфига - ничего, кроме как ковырять скрипты в /etc/grub.d в голову не приходит.

Black_Shadow ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.