PDA

View Full Version : Compiled kernel installation problem



titaniumdecoy
December 31st, 2008, 09:37 AM
I have a working Ubuntu 8.10 VM with a 2.6.27-9 kernel. I have compiled a vanilla kernel from kernel.org using these instructions (http://www.howtoforge.com/kernel_compilation_ubuntu_p2), after having done the same manually. Both times I am able to boot into the custom 2.6.28 kernel via grub, but (if I understand the error messages correctly) the kernel is unable to locate the disk. I believe this is because of the way VMWare Fusion configures the virtual disk.

Please let me know if you have any ideas about what I am doing wrong. The kernel, modules, initrd, and grub were all configured and installed automatically by make-kpkg.


Boot from (hd0,0) ext3 778cb529-8914-451a-97ee-fb2d8ae404ae
Starting up ...
[http://1.236002|http://1.236002] alg: cipher: Test 1 failed on encryption for aes-asm
modprobe: FATAL: Could not load /lib/modules/2.6.28-custom/modules.dep: No such file or directory

modprobe: FATAL: Could not load /lib/modules/2.6.28-custom/modules.dep: No such file or directory

Loading, please wait...
Gave up waiting for root device. Common problems:
- Boot args (cat /proc/cmdline)
- Check rootdelay= (did the system wait long enough?)
- Check root= (did the system wait for the right device?)
- Missing modules (cat /proc/modules; ls /dev)
ALERT! /dev/disk/by-uuid/778cb529-8914-451a-97ee-fb2d8ae404ae does not exist. Dropping to a shell!

BusyBox v1.10.2. (Ubuntu 1:1.10.2-1ubuntu6) built-in shell (ash)
Enter 'help' for a list of built-in commands.

(initramfs) _

The .dep modules that cannot be located are installed on the system at the stated locations.

If it helps, the following are the contents of /etc/fstab:


# /etc/fstab: static file system information.
#
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc defaults 0 0
# /dev/sda1
UUID=778cb529-8914-451a-97ee-fb2d8ae404ae / ext3 relatime,errors=remount-ro 0 1
# /dev/sda5
UUID=31169659-b1a0-4192-91f4-7d65b4f74655 none swap sw 0 0
/dev/scd0 /media/cdrom0 udf,iso9660 user,noauto,exec,utf8 0 0
# Beginning of the block added by the VMware software
.host:/ /mnt/hgfs vmhgfs defaults,ttl=5 0 0
# End of the block added by the VMware software

dexter
December 31st, 2008, 11:12 AM
You could try the following, when you fall back to the terminal type "blkid", this should list all the partitions found by the booting kernel. Check if your root partition (uuid 778cb529-8914-451a-97ee-fb2d8ae404ae) is listed.

It is possible that the busybox terminal does not support that command though.

titaniumdecoy
December 31st, 2008, 09:11 PM
Unfortunately, you are correct: busybox terminal does not support the blkid command.

I know for a fact that I am using the correct UUID because the working kernel entry in my grub file uses the same number.

Someone suggested that perhaps the compiled kernel does not have built-in device mapping support but I selected that option when configuring it. Another possibility I have heard is that the initrd file does not have device mapping support but it was automatically generated by make-kpkg so I doubt that is the problem.

titaniumdecoy
January 2nd, 2009, 03:24 AM
I finally got it working by modifying following values in the .config file:


CONFIG_FUSION=y
CONFIG_FUSION_SPI=y
CONFIG_SCSI=y
CONFIG_SCSI_NETLINK=y
CONFIG_BLK_DEV_SD=y
CONFIG_CHR_DEV_ST=y
CONFIG_SCSI_SPI_ATTRS=y
CONFIG_SCSI_FC_ATTRS=y
CONFIG_SCSI_ISCSI_ATTRS=y
CONFIG_SCSI_SAS_ATTRS=y