LINUX.ORG.RU

gentoo и virt-v2v

 , virt-v2v


0

1

есть тазик с gentoo:

Linux 2.6.16.5 i686 GenuineIntel GNU/Linux

надо перенести его в KVM под Centos. Гружусь с virt-p2v liveusb, запускается процесс конвертации, но где-то на финальной стадии заканчивается с ошибкой:

virt-v2v: No root device found in this operating system image.

virt-manager'ом пробую создать виртуалку из того образа, что создался. виртуалка создается, но - загрузка останавливается на ошибке:

VFS : Cannot open root device "sda3" or unknown-block(0,0)
Please append a correct "root=" boot option
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)

в чем может быть причина, что делать?
может быть причина в reiserfs в которой рут на исходной системе?



Последнее исправление: Pinkbyte (всего исправлений: 1)

virtio используется или нет? Если используется, то нужен не sda а vda. Но ЕМНИП в 2.6.16 о virtio еще не слышали.

Покажи конфиг виртуалки.

Pinkbyte ★★★★★
()
Ответ на: комментарий от Pinkbyte
<domain type='kvm'>
  <name>squidusa</name>
  <uuid>24f21aa3-5eeb-4407-84c3-1805f1518f9f</uuid>
  <memory unit='KiB'>524288</memory>
  <currentMemory unit='KiB'>524288</currentMemory>
  <vcpu placement='static'>1</vcpu>
  <os>
    <type arch='x86_64' machine='rhel6.5.0'>hvm</type>
    <boot dev='hd'/>
  </os>
  <features>
    <acpi/>
    <apic/>
    <pae/>
  </features>
  <clock offset='utc'>
    <timer name='rtc' tickpolicy='catchup'/>
    <timer name='pit' tickpolicy='delay'/>
    <timer name='hpet' present='no'/>
  </clock>
  <on_poweroff>destroy</on_poweroff>
  <on_reboot>restart</on_reboot>
  <on_crash>restart</on_crash>
  <devices>
    <emulator>/usr/libexec/qemu-kvm</emulator>
    <disk type='file' device='disk'>
      <driver name='qemu' type='raw'/>
      <source file='/var/lib/libvirt/images/squidusa-sda'/>
      <target dev='hda' bus='ide'/>
      <address type='drive' controller='0' bus='0' target='0' unit='0'/>
    </disk>
    <controller type='usb' index='0'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/>
    </controller>
    <controller type='ide' index='0'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/>
    </controller>
    <interface type='bridge'>
      <mac address='52:54:00:75:59:dd'/>
      <source bridge='bridge0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
    </interface>
    <serial type='pty'>
      <target port='0'/>
    </serial>
    <console type='pty'>
      <target type='serial' port='0'/>
    </console>
    <input type='mouse' bus='ps2'/>
    <graphics type='vnc' port='-1' autoport='yes'/>
    <sound model='ac97'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
    </sound>
    <video>
      <model type='cirrus' vram='9216' heads='1'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
    </video>
    <memballoon model='virtio'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/>
    </memballoon>
  </devices>
</domain>

при создании машины в virt-manager выбирал

Linux Generic 2.6.x kernel

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

В конфиге шина ide - ок. Как собрано ядро? Поддержка IDE там через Generic ATA(который все HDD-устройства IDE/SCSI/USB/SATA воспринимает как sda, sdb и т.д.) или через старый IDE-стек(hda, hdb и т.д. - соответственно)?

Pinkbyte ★★★★★
()
Последнее исправление: Pinkbyte (всего исправлений: 1)
Ответ на: комментарий от Pinkbyte

тут дело так обстоит. тазик древний, в нем винт как hda определяется, но нет загрузки с юсб. преткнул винт в другой системник (посвежее) чтобы снять собственно образ, в нем винт определился как sda.

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

Как я уже сказал - дай конфиг ядра. Он либо в /proc/config.gz(однако я, опять же, не помню, была ли подобная возможность вынесения конфига в 2.6.16, сдается мне она появилась позже) либо в /boot/config-$(uname -r)

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

извиняюсь, не нашел как приатачить файл

CONFIG_X86_32=y
CONFIG_SEMAPHORE_SLEEPERS=y
CONFIG_X86=y
CONFIG_MMU=y
CONFIG_GENERIC_ISA_DMA=y
CONFIG_GENERIC_IOMAP=y
CONFIG_ARCH_MAY_HAVE_PC_FDC=y
CONFIG_DMI=y
CONFIG_EXPERIMENTAL=y
CONFIG_BROKEN_ON_SMP=y
CONFIG_LOCK_KERNEL=y
CONFIG_INIT_ENV_ARG_LIMIT=32
CONFIG_LOCALVERSION=""
CONFIG_LOCALVERSION_AUTO=y
CONFIG_SWAP=y
CONFIG_SYSVIPC=y
CONFIG_POSIX_MQUEUE=y
CONFIG_BSD_PROCESS_ACCT=y
CONFIG_BSD_PROCESS_ACCT_V3=y
CONFIG_SYSCTL=y
CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y
CONFIG_INITRAMFS_SOURCE=""
CONFIG_UID16=y
CONFIG_VM86=y
CONFIG_KALLSYMS=y
CONFIG_HOTPLUG=y
CONFIG_PRINTK=y
CONFIG_BUG=y
CONFIG_ELF_CORE=y
CONFIG_BASE_FULL=y
CONFIG_FUTEX=y
CONFIG_EPOLL=y
CONFIG_SHMEM=y
CONFIG_CC_ALIGN_FUNCTIONS=0
CONFIG_CC_ALIGN_LABELS=0
CONFIG_CC_ALIGN_LOOPS=0
CONFIG_CC_ALIGN_JUMPS=0
CONFIG_SLAB=y
CONFIG_BASE_SMALL=0
CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
CONFIG_MODULE_FORCE_UNLOAD=y
CONFIG_OBSOLETE_MODPARM=y
CONFIG_MODVERSIONS=y
CONFIG_KMOD=y
CONFIG_IOSCHED_NOOP=y
CONFIG_IOSCHED_AS=y
CONFIG_IOSCHED_DEADLINE=y
CONFIG_IOSCHED_CFQ=y
CONFIG_DEFAULT_AS=y
CONFIG_DEFAULT_IOSCHED="anticipatory"
CONFIG_X86_PC=y
CONFIG_MPENTIUMII=y
CONFIG_X86_CMPXCHG=y
CONFIG_X86_XADD=y
CONFIG_X86_L1_CACHE_SHIFT=5
CONFIG_RWSEM_XCHGADD_ALGORITHM=y
CONFIG_GENERIC_CALIBRATE_DELAY=y
CONFIG_X86_WP_WORKS_OK=y
CONFIG_X86_INVLPG=y
CONFIG_X86_BSWAP=y
CONFIG_X86_POPAD_OK=y
CONFIG_X86_CMPXCHG64=y
CONFIG_X86_GOOD_APIC=y
CONFIG_X86_INTEL_USERCOPY=y
CONFIG_X86_USE_PPRO_CHECKSUM=y
CONFIG_X86_TSC=y
CONFIG_HPET_TIMER=y
CONFIG_HPET_EMULATE_RTC=y
CONFIG_PREEMPT=y
CONFIG_PREEMPT_BKL=y
CONFIG_X86_UP_APIC=y
CONFIG_X86_LOCAL_APIC=y
CONFIG_X86_MCE=y
CONFIG_MICROCODE=y
CONFIG_X86_MSR=y
CONFIG_X86_CPUID=y
CONFIG_NOHIGHMEM=y
CONFIG_VMSPLIT_3G=y
CONFIG_PAGE_OFFSET=0xC0000000
CONFIG_ARCH_FLATMEM_ENABLE=y
CONFIG_ARCH_SPARSEMEM_ENABLE=y
CONFIG_ARCH_SELECT_MEMORY_MODEL=y
CONFIG_SELECT_MEMORY_MODEL=y
CONFIG_FLATMEM_MANUAL=y
CONFIG_FLATMEM=y
CONFIG_FLAT_NODE_MEM_MAP=y
CONFIG_SPARSEMEM_STATIC=y
CONFIG_SPLIT_PTLOCK_CPUS=4
CONFIG_MTRR=y
CONFIG_REGPARM=y
CONFIG_SECCOMP=y
CONFIG_HZ_250=y
CONFIG_HZ=250
CONFIG_PHYSICAL_START=0x100000
CONFIG_DOUBLEFAULT=y
CONFIG_PM=y
CONFIG_PM_LEGACY=y
CONFIG_SOFTWARE_SUSPEND=y
CONFIG_PM_STD_PARTITION="/dev/hda1"
CONFIG_ACPI=y
CONFIG_ACPI_SLEEP=y
CONFIG_ACPI_SLEEP_PROC_FS=y
CONFIG_ACPI_FAN=y
CONFIG_ACPI_PROCESSOR=y
CONFIG_ACPI_THERMAL=y
CONFIG_ACPI_BLACKLIST_YEAR=0
CONFIG_ACPI_EC=y
CONFIG_ACPI_POWER=y
CONFIG_ACPI_SYSTEM=y
CONFIG_X86_PM_TIMER=y
CONFIG_PCI=y
CONFIG_PCI_GOANY=y
CONFIG_PCI_BIOS=y
CONFIG_PCI_DIRECT=y
CONFIG_PCI_MMCONFIG=y
CONFIG_PCI_LEGACY_PROC=y
CONFIG_ISA_DMA_API=y
CONFIG_ISA=y
CONFIG_HOTPLUG_PCI=m
CONFIG_HOTPLUG_PCI_FAKE=m
CONFIG_HOTPLUG_PCI_COMPAQ=m
CONFIG_HOTPLUG_PCI_COMPAQ_NVRAM=y
CONFIG_HOTPLUG_PCI_ACPI=m
CONFIG_HOTPLUG_PCI_ACPI_IBM=m
CONFIG_HOTPLUG_PCI_CPCI=y
CONFIG_HOTPLUG_PCI_CPCI_ZT5550=m
CONFIG_HOTPLUG_PCI_CPCI_GENERIC=m
CONFIG_HOTPLUG_PCI_SHPC=m
CONFIG_HOTPLUG_PCI_SHPC_POLL_EVENT_MODE=y
CONFIG_BINFMT_ELF=y
CONFIG_BINFMT_AOUT=y
CONFIG_BINFMT_MISC=y
CONFIG_NET=y
CONFIG_PACKET=y
CONFIG_UNIX=y
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
CONFIG_IP_ADVANCED_ROUTER=y
CONFIG_ASK_IP_FIB_HASH=y
CONFIG_IP_FIB_HASH=y
CONFIG_SYN_COOKIES=y
CONFIG_INET_DIAG=y
CONFIG_INET_TCP_DIAG=y
CONFIG_TCP_CONG_BIC=y
CONFIG_NETFILTER=y
CONFIG_IP_NF_CONNTRACK=y
CONFIG_IP_NF_QUEUE=y
CONFIG_CONNECTOR=m
CONFIG_PNP=y
CONFIG_ISAPNP=y
CONFIG_PNPBIOS=y
CONFIG_PNPBIOS_PROC_FS=y
CONFIG_PNPACPI=y
CONFIG_BLK_DEV_FD=y
CONFIG_BLK_DEV_LOOP=y
CONFIG_BLK_DEV_NBD=y
CONFIG_BLK_DEV_RAM_COUNT=16
CONFIG_IDE=y
CONFIG_BLK_DEV_IDE=y
CONFIG_BLK_DEV_IDEDISK=y
CONFIG_IDEDISK_MULTI_MODE=y
CONFIG_BLK_DEV_IDECD=y
CONFIG_IDE_TASK_IOCTL=y
CONFIG_BLK_DEV_IDEPCI=y
CONFIG_IDEPCI_SHARE_IRQ=y
CONFIG_BLK_DEV_GENERIC=y
CONFIG_BLK_DEV_IDEDMA_PCI=y
CONFIG_IDEDMA_PCI_AUTO=y
CONFIG_BLK_DEV_VIA82CXXX=y
CONFIG_BLK_DEV_IDEDMA=y
CONFIG_IDEDMA_AUTO=y
CONFIG_SCSI=y
CONFIG_SCSI_PROC_FS=y
CONFIG_BLK_DEV_SD=y
CONFIG_CHR_DEV_SG=y
CONFIG_SCSI_SATA=y
CONFIG_SCSI_SATA_AHCI=y
CONFIG_SCSI_ATA_PIIX=y
CONFIG_SCSI_SATA_NV=y
CONFIG_SCSI_PDC_ADMA=y
CONFIG_SCSI_SATA_QSTOR=y
CONFIG_SCSI_SATA_PROMISE=y
CONFIG_SCSI_SATA_SX4=y
CONFIG_SCSI_SATA_SIL=y
CONFIG_SCSI_SATA_SIL24=y
CONFIG_SCSI_SATA_SIS=y
CONFIG_SCSI_SATA_ULI=y
CONFIG_SCSI_SATA_VIA=y
CONFIG_SCSI_SATA_VITESSE=y
CONFIG_SCSI_SATA_INTEL_COMBINED=y
CONFIG_NETDEVICES=y
CONFIG_DUMMY=m
CONFIG_NET_ETHERNET=y
CONFIG_MII=y
CONFIG_NET_PCI=y
CONFIG_8139CP=y
CONFIG_8139TOO=y
CONFIG_8139TOO_PIO=y
CONFIG_8139TOO_TUNE_TWISTER=y
CONFIG_8139TOO_8129=y
CONFIG_8139_OLD_RX_RESET=y
CONFIG_SHAPER=m
CONFIG_INPUT=y
CONFIG_INPUT_MOUSEDEV=y
CONFIG_INPUT_MOUSEDEV_PSAUX=y
CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
CONFIG_INPUT_KEYBOARD=y
CONFIG_KEYBOARD_ATKBD=y
CONFIG_INPUT_MOUSE=y
CONFIG_MOUSE_PS2=y
CONFIG_INPUT_MISC=y
CONFIG_INPUT_PCSPKR=y
CONFIG_SERIO=y
CONFIG_SERIO_I8042=y
CONFIG_SERIO_PCIPS2=y
CONFIG_SERIO_LIBPS2=y
CONFIG_VT=y
CONFIG_VT_CONSOLE=y
CONFIG_HW_CONSOLE=y
CONFIG_UNIX98_PTYS=y
CONFIG_LEGACY_PTYS=y
CONFIG_LEGACY_PTY_COUNT=256
CONFIG_NVRAM=y
CONFIG_RTC=y
CONFIG_AGP=y
CONFIG_AGP_VIA=y
CONFIG_DRM=y
CONFIG_I2C=y
CONFIG_I2C_CHARDEV=y
CONFIG_I2C_ALGOBIT=y
CONFIG_I2C_ALGOPCF=y
CONFIG_I2C_ALGOPCA=y
CONFIG_I2C_ISA=y
CONFIG_I2C_VIAPRO=y
CONFIG_HWMON=y
CONFIG_SENSORS_VIA686A=y
CONFIG_FB=y
CONFIG_FB_CFB_FILLRECT=y
CONFIG_FB_CFB_COPYAREA=y
CONFIG_FB_CFB_IMAGEBLIT=y
CONFIG_FB_VESA=y
CONFIG_VIDEO_SELECT=y
CONFIG_VGA_CONSOLE=y
CONFIG_DUMMY_CONSOLE=y
CONFIG_FRAMEBUFFER_CONSOLE=y
CONFIG_FONT_8x8=y
CONFIG_FONT_8x16=y
CONFIG_USB_ARCH_HAS_HCD=y
CONFIG_USB_ARCH_HAS_OHCI=y
CONFIG_EXT2_FS=y
CONFIG_EXT3_FS=y
CONFIG_JBD=y
CONFIG_REISERFS_FS=y
CONFIG_REISERFS_PROC_INFO=y
CONFIG_XFS_FS=m
CONFIG_XFS_RT=y
CONFIG_INOTIFY=y
CONFIG_DNOTIFY=y
CONFIG_AUTOFS_FS=y
CONFIG_AUTOFS4_FS=y
CONFIG_ISO9660_FS=y
CONFIG_JOLIET=y
CONFIG_ZISOFS=y
CONFIG_ZISOFS_FS=y
CONFIG_UDF_FS=y
CONFIG_UDF_NLS=y
CONFIG_FAT_FS=y
CONFIG_MSDOS_FS=m
CONFIG_VFAT_FS=y
CONFIG_FAT_DEFAULT_CODEPAGE=866
CONFIG_FAT_DEFAULT_IOCHARSET="koi8-r"
CONFIG_NTFS_FS=m
CONFIG_NTFS_RW=y
CONFIG_PROC_FS=y
CONFIG_PROC_KCORE=y
CONFIG_SYSFS=y
CONFIG_TMPFS=y
CONFIG_RAMFS=y
CONFIG_SYSV_FS=y
CONFIG_SMB_FS=m
CONFIG_SMB_NLS_DEFAULT=y
CONFIG_SMB_NLS_REMOTE="cp866"
CONFIG_MSDOS_PARTITION=y
CONFIG_NLS=y
CONFIG_NLS_DEFAULT="koi8-r"
CONFIG_NLS_CODEPAGE_437=m
CONFIG_NLS_CODEPAGE_866=m
CONFIG_NLS_CODEPAGE_1251=m
CONFIG_NLS_ISO8859_1=m
CONFIG_NLS_KOI8_R=m
CONFIG_NLS_UTF8=m
CONFIG_LOG_BUF_SHIFT=14
CONFIG_DEBUG_BUGVERBOSE=y
CONFIG_EARLY_PRINTK=y
CONFIG_X86_FIND_SMP_CONFIG=y
CONFIG_X86_MPPARSE=y
CONFIG_CRC_CCITT=y
CONFIG_CRC32=y
CONFIG_LIBCRC32C=y
CONFIG_ZLIB_INFLATE=y
CONFIG_GENERIC_HARDIRQS=y
CONFIG_GENERIC_IRQ_PROBE=y
CONFIG_X86_BIOS_REBOOT=y
CONFIG_KTIME_SCALAR=y

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

Так, ок, есть и SATA и IDE в ядре. ReiserFS тоже вкомпилирован, так что проблем с монтированием его быть не должно.

У меня 2 варианта:
1) девайс определился под именем hda;
2) девайс не определился вообще, потому что виртуализированный контроллер фигово эмулируется для настолько старого ядра(очень-очень врядли ибо CentOS 5 себя прекрасно чувствует в KVM, но всё-таки может быть, ибо в CentOS 2.6.18-дохренапатчей);

root=/dev/hda3 в опциях загрузчика указывать пробовал?

И еще, если определяется сеть, попробую использовать netconsole(пардон за ссылку на хабр) для перехвата всего выхлопа от загрузки ядра. Опции добавлять не в /etc/modprobe.d(до которого дело не дойдет), а сразу в строку загрузки ядра. Направить естественно на хостовую машину с netcat.

Pinkbyte ★★★★★
()
Последнее исправление: Pinkbyte (всего исправлений: 2)
Ответ на: комментарий от Pinkbyte

root=/dev/hda3 в опциях загрузчика указывать пробовал?

да, пробовал, эффект тот же.

буду пробовать netconsole, спасибо. если появятся еще идеи буду рад )

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

да, пробовал, эффект тот же.

Еще из идей: формат образа полученного какой? raw или qcow2?

Если raw - можно попробовать глянуть, а оно вообще нормально сконвертилось с помощью kpartx(из состава multipath-tools).

На хостовой машине из под рута, пробуем смонтировать третий раздел из образа:

losetup /dev/loop0 /path/to/your/hdd/image
kpartx -av /dev/loop0
mkdir -p /mnt/tmp
mount /dev/mapper/loop0p3 /mnt/tmp
...смотрим на файлики... или на фэйл при монтировании ...
umount /mnt/tmp
kpartx -dv /dev/loop0
losetup -d /dev/loop0

С Qcow чуть сложнее, тут потребуется заюзать qemu-nbd

Pinkbyte ★★★★★
()
Последнее исправление: Pinkbyte (всего исправлений: 2)
Ответ на: комментарий от Pinkbyte

я так понимаю, что raw:

<devices>
    <emulator>/usr/libexec/qemu-kvm</emulator>
    <disk type='file' device='disk'>
      <driver name='qemu' type='raw'/>

ну и собственно фэйл при монтировании:

[root@kvmhost1 log]# losetup /dev/loop0 /var/lib/libvirt/images/squidusa-sda
[root@kvmhost1 log]# kpartx -av /dev/loop0
add map loop0p1 (253:3): 0 1726641 linear /dev/loop0 63
add map loop0p2 (253:4): 0 195552 linear /dev/loop0 1726704
add map loop0p3 (253:5): 0 15881040 linear /dev/loop0 1922256
[root@kvmhost1 log]# mount /dev/mapper/loop0p3 /mnt
mount: unknown filesystem type 'reiserfs'
[root@kvmhost1 log]#

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

Это уже у тебя в текущем ядрена хостовой машине нет поддержки reiserfs. Тем не менее, суперблок читается и там сказано что это - ReiserFS. Ну тогда остаётся netconsole

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

нету вывода netconsole (((

можт что не так делаю?

1. на хостовой машине поднимаю nc:

nc -l -u 8888
(руками по ip к нему цепляюсь, вывод перехватывается)

2. дописываю в загрузчик netconsole:

kernel (hd0,1)/kernel-2.6.15 root=/dev/sda3 netconsole=6666@192.168.0.3/eth0,8888@192.168.0.6/00:1E:8C:54:68:93
тишина в nc

virt-manager'ом никак вывод не сохранить?

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

а tcpdump на интерфейсе, который смотрит в виртуальную машину тоже ничего не показывает? А то может файрвол порубил всё?

Pinkbyte ★★★★★
()
Ответ на: комментарий от ice-9

Я надеюсь portage у тебя там внутри тех же времен что и остальные потроха иначе мой вариант ниже не сканает, точнее будет чреват большим геморроем.

Тогда предлагаю вариант:

1) смонтировать корневой раздел в хостовой системе(через losetup/kpartx, не забыть собрать поддержку reiserfs в хостовом ядре);
2) примонтировать внутрь dev и proc, сделать чрут в смонтированный корень;
3) поставить внутри genkernel, сгенерировать initramfs с busybox на борту, поправить загрузчик чтоб грузил initramfs;
4) всё отмонтировать, попробовать загрузиться и, естественно, выпасть в rescue shell;
5) из rescue shell посмотреть какие устройства доступны.

Долго, муторно, неудобно - но должно помочь

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

спасибо. genkernel и busybox, как ни странно :), поставились через emerge. но при попытке генерировать получаю ошибки:

root@kvmhost1 / # genkernel --install --initramfs all
* Gentoo Linux Genkernel; Version 3.4.8
* Running with options: --install --initramfs all

* Linux Kernel 2.6.16.5 for x86_64...
* kernel: >> Running mrproper...
* config: Using config from /usr/share/genkernel/x86_64/kernel-config-2.6
*         Previous config backed up to .config.bak
*         >> Running oldconfig...
* kernel: >> Cleaning...
* ERROR: Failed to compile the "prepare" target...

root@kvmhost1 / # genkernel --initramfs initrd
* Gentoo Linux Genkernel; Version 3.4.8
* Running with options: --initramfs initrd

* Linux Kernel 2.6.16.5 for x86_64...
* module-init-tools: >> Configuring
*                    >> Compiling...
*                    >> Copying to cache...
* busybox: >> Configuring...
* busybox: >> Compiling...
* busybox: >> Copying to cache...
* initramfs: >> Initializing...
*         >> Appending base_layout cpio data...
*         >> Appending auxilary cpio data...
*         >> Appending busybox cpio data...
*         >> Appending insmod cpio data...
*         >> Appending modules cpio data...
*         >> Compiling 2.6.16.5 bzImage...
* ERROR: Failed to compile the "bzImage" target...

причина может быть в том, что исходная система и ядро i686, а сейчас все операции выполняются на x86_64?

я так понимаю, надо на исходной системе тоже самое готовить, снимать образ заново и грузиться уже с него?

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

заюзал опцию

--arch-override=x86

результат тотже самый, буду пробовать на исходной железке. там как раз перед переносом ядро пересобиралось нормально (поддержки sata не было).

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

Сгенерировать только initrd можно командой

genkernel initramfs

Обрати внимание на синтаксис(отсутствие --).

man genkernel подтверждает:

SYNOPSIS
       genkernel [options...] action

....

ACTIONS
       An action tells genkernel what you want it to do - the following actions are supported:

       all
           Build all steps - the kernel, modules, and the ramdisk.

       bzImage
           Build only the kernel.

       initramfs
           Build only the ramdisk/initramfs.

       kernel
           Build only the kernel and the modules.

       ramdisk
           Build only the ramdisk/initramfs.

Update: но у меня - новый genkernel. Так что да, опции могут различаться, это я не подумал.

Pinkbyte ★★★★★
()
Последнее исправление: Pinkbyte (всего исправлений: 1)
Ответ на: комментарий от Pinkbyte

на исходной железке сгенерился.

root@adminserver ~ # genkernel --initramfs initrd
* Gentoo Linux Genkernel; Version 3.4.8
* Running with options: --initramfs initrd

* Linux Kernel 2.6.16.5 for x86...
* initramfs: >> Initializing...
*         >> Appending base_layout cpio data...
*         >> Appending auxilary cpio data...
*         >> Appending busybox cpio data...
*         >> Appending insmod cpio data...
*         >> Appending modules cpio data...
*         >> Compiling 2.6.16.5 bzImage...

* WARNING... WARNING... WARNING...
* Additional kernel cmdline arguments that *may* be required to boot properly...
* add "vga=791 splash=silent" if you use a bootsplash framebuffer

* Do NOT report kernel bugs as genkernel bugs unless your bug
* is about the default genkernel configuration...
* 
* Make sure you have the latest genkernel before reporting bugs.

в grub.conf

# For booting GNU/Linux
title  Gentoo NEW initramfs
root (hd0,2)
kernel (hd0,1)/kernel-genkernel-x86-2.6.16.5 root=/dev/sda3 vga=normal elevator=cfq
initrd (hd0,1)/boot/initramfs-genkernel-x86-2.6.16.5

пересоздал образ p2v. загрузка останавливается с той же ошибкой, в rescue shell не выпадает.

что неправильно сделал?

ice-9
() автор топика
Ответ на: комментарий от Pinkbyte
VFS : Cannot open root device "ram0" or unknown-block(0,0)
Please append a correct "root=" boot option
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
ice-9
() автор топика
Ответ на: комментарий от ice-9

CONFIG_BLK_DEV_RAM=y в ядре есть, тут ок.

BUSYBOX=«yes» в genkernel.conf при сборке initrd стоял? Такое ощущение что initrd не грузится совсем.

Pinkbyte ★★★★★
()
Ответ на: комментарий от Pinkbyte
root@adminserver etc # grep -i busy genkernel.conf  
# Configuration file for busybox
BUSYBOX_CONFIG="${GK_SHARE}/%%ARCH%%/busy-config"
# BusyBox Version
BUSYBOX_VER="1.1.3+gentoo"
# Busybox bin-cache location, to store pre-compiled busybox
# binary is just a bzip2 busybox executable
BUSYBOX_BINCACHE="%%CACHE%%/busybox-${BUSYBOX_VER}-%%ARCH%%.bz2"
# Location of BusyBox source tarball
BUSYBOX_SRCTAR="${GK_SHARE}/pkg/busybox-${BUSYBOX_VER}.tar.bz2"
# Directory created after busybox tarball is extracted
BUSYBOX_DIR="busybox-${BUSYBOX_VER}"

и строчка при генерации initramfs была

*         >> Appending busybox cpio data...

что еще проверить/попробовать?

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

Попробуй добавить init=/bin/bb к опциям ядра. Наверное старый genkernel не делает подобный fallback. Но если root=/dev/ram0 не работает, то это скорее всего тоже не взлетит :-(

Pinkbyte ★★★★★
()
Ответ на: комментарий от ice-9

похоже чего-то все-таки в ядре не хватает. случайно ткнул в пункт загрузки

title  Gentoo OLD
root (hd0,2)
kernel (hd0,1)/vmlinuz-2.6.10-current root=/dev/hda3 vga=normal

и система загрузилась %)

диск видит как hda, но kernel-2.6.15 и как hda его не видит.

как решение это не подходит, к сожалению. я даже человека того не знаю которые это сервер раньше админил, разбираться для чего ядро обновлялось несколько раз или всё ли работает на этом старом не вариант. буду сравнивать конфигурации.

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

fdisk показыват диск как hda, а df как sda

root@adminserver log # fdisk -l

Disk /dev/hda: 9115 MB, 9115361280 bytes
16 heads, 63 sectors/track, 17662 cylinders
Units = cylinders of 1008 * 512 = 516096 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/hda1               1        1713      863320+  82  Linux swap / Solaris
/dev/hda2            1714        1907       97776   83  Linux
/dev/hda3            1908       17662     7940520   83  Linux
root@adminserver log # df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda3             7.6G  6.2G  1.5G  82% /
none                  252M     0  252M   0% /dev/shm

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

вобщем остановился на том ядре с которого загрузилось. вот такая картина там %)

root@adminserver ~ # df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda3             7.6G  6.2G  1.5G  81% /
/dev/hda2              93M   15M   73M  17% /boot
none                  252M     0  252M   0% /dev/shm

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