Eu sou um testador de software e estou tentando testar um módulo do kernel em vários kernels Linux (3.2+). Atualmente estou tentando compilar o módulo, montá-lo e executar um conjunto de testes automatizado em todos os kernels Linux em diante.
Estou executando o Ubuntu 14.04 em uma máquina virtual, com kernel 3.13.0-32-generic
. Meu plano era fazer o download do repositório git de https://github.com/torvalds/linux
, checkout n
versão (ie 3.14.0), compilá-lo com a configuração padrão (eu não me importo em ajustar o kernel), instalá-lo, inicializar com o novo kernel, compilar meu módulo do kernel, montá-lo, testá-lo, limpar, enxaguar e repetir.
Então, para aprender essa provação, tentei instalar o 3.14.0.
Eu corro o comando normal (eu acho):
make defconfig && make && make modules && make install && make modules_install
Yey! Eu acho que eu instalei, grub.cfg
já mostra a opção de inicialização padrão para usar o novo kernel. Eu posso ver vmlinusz-3.14.0
e initrd.img-3.14.0
sob /boot
.
No entanto, quando eu reinicio a VM, recebo isso:
ALERT! /dev/disk/by-uuid/231ea9ac-f01d-42dc-830b-f3ecd4775148 does not exist. Dropping to a shell.
Vejo que o disco rígido não está listado em /dev
(não há sda
).
Quando executo o cat /proc/cmdline
, obtenho:
BOOT_IMAGE=/boot/vmlinuz-3.14.0 root=UUID=231ea9ac-f01d-42dc-830b-f3ecd4775148 ro quiet splash
Quando volto para 3.13.0-32-generic
, posso ver os dispositivos, posso encontrar o arquivo /dev/disk/by-uuid/231ea9ac-f01d-42dc-830b-f3ecd4775148
. Além disso, fstab
mostra:
# <file system> <mount point> <type> <options> <dump> <pass>
# / was on /dev/sda1 during installation
UUID=231ea9ac-f01d-42dc-830b-f3ecd4775148 / ext4 errors=remount-ro 0 1
# swap was on /dev/sda5 during installation
UUID=db20004e-9c66-436c-b572-aa44deb571fa none swap sw 0 0
/dev/fd0 /media/floppy0 auto rw,user,noauto,exec,utf8 0 0
Eu realmente não sei mais para onde olhar.
Estou trabalhando com uma VM, mas não posso editar, criar, remover VMs no VMware, apenas no caso (não gerencio o ambiente).
Por que não está sendo inicializado sob 3.14.0? Eu fiz algo errado?