# grub missing from boot (vmware)

## midway

after upgrading the kernel, I get error (awk:fatal) about grub.conf and it asks me to create it manually.

genkernel works fine on its own: 

http://pastebin.com/KCwTKgEh

However, I want the genkernel to automatically update my grub boot loader configuration but it fails (may be because it can not find grub). 

http://pastebin.com/cU1MR8dU

this is odd but I dont have the grub configuration file:

```

~ # nano /boot/ 

System.map-genkernel-x86-3.3.8-gentoo  initramfs-genkernel-x86-3.3.8-gentoo   kernel-genkernel-x86-3.3.8-gentoo 

~ # locate grub.conf 

/usr/portage/sys-boot/grub/files/grub.conf.gentoo 

/usr/share/doc/grub-0.97-r10/grub.conf.gentoo.bz2 

/usr/share/doc/grub-0.97-r10/grub.conf.sample.bz2 

```

More info:

```

~ # cd /boot/

System.map-genkernel-x86-3.3.8-gentoo  initramfs-genkernel-x86-3.3.8-gentoo   kernel-genkernel-x86-3.3.8-gentoo

~ # locate grub.conf

/usr/portage/sys-boot/grub/files/grub.conf.gentoo

/usr/share/doc/grub-0.97-r10/grub.conf.gentoo.bz2

/usr/share/doc/grub-0.97-r10/grub.conf.sample.bz2

~ # cd /lib/modules/

2.6.25-hardened-r13/ 2.6.28-hardened-r6/  2.6.28-hardened-r7/  2.6.28-hardened-r9/  3.3.8-gentoo/

~ # cd /usr/src/

.keep                     linux/                    linux-2.6.28-hardened-r7/ linux-2.6.28-hardened-r9/ linux-3.3.8-gentoo/

```

How to resolve this? Can I manually create a grub.conf file and add the kernel in it?Last edited by midway on Wed Sep 19, 2012 12:44 pm; edited 3 times in total

----------

## midway

More info on grub:

```

~ # emerge --oneshot -p grub

These are the packages that would be merged, in order:

Calculating dependencies... done!

[ebuild   R    ] sys-boot/grub-0.97-r10

~ # equery b grub

 * Searching for grub ...

sys-boot/grub-0.97-r10 (/sbin/grub)

sys-boot/grub-0.97-r10 (/lib/grub)

sys-boot/grub-0.97-r10 (/usr/share/grub)

```

Please note that this is a virtual machine (vmware).

----------

## Jaglover

Your running kernel is hidden from you because mounting /boot fails.

----------

## John R. Graham

Probably. Or else grub was never installed to the boot partition. Can't really tell.

@nitish.anand, genkernel has an option called MOUNTBOOT that you will find in /etc/genkernel.conf that will take care of mounting the boot partition for you.

- John

----------

## midway

 *John R. Graham wrote:*   

> 
> 
> Probably. Or else grub was never installed to the boot partition. Can't really tell.
> 
> @nitish.anand, genkernel has an option called MOUNTBOOT that you will find in /etc/genkernel.conf that will take care of mounting the boot partition for you.
> ...

 

mountboot is enabled:

http://pastebin.com/ApLLewzH

```

boot # cat /etc/fstab

/dev/sda1 /boot xfs defaults,noatime 1 2

/dev/sda2 swap swap sw 0 0

/dev/sda3 / xfs noatime 0 1

/dev/cdrom /mnt/cdrom auto defaults,noauto 0 0

none /proc proc defaults 0 0

none /dev/shm tmpfs nodev,nosuid,noexec,rw 0 0

```

Last edited by midway on Tue Sep 18, 2012 11:57 am; edited 1 time in total

----------

## Jaglover

I understand this was a kernel upgrade, so there is something that boots the system, probably Grub.

----------

## John R. Graham

Ah. Arg, you're right.

@nitish.anand, one possibility is that your new kernel doesn't include filesystem support for the filesystem used on the boot partition. Normally a genkernel-generated kernel will include support for most common filesystems, though. Have you been modifying the configuration heavily with the genkernel --menuconfig option? If so, you should do so again and check that you have support for the boot partition filesystem. 

Wait, is XFS really your boot partition filesystem? Probably not as I don't believe grub supports XFS. An incorrect /etc/fstab could be why /boot isn't mounting.

- John

----------

## midway

 *John R. Graham wrote:*   

> Ah. Arg, you're right.
> 
> @nitish.anand, one possibility is that your new kernel doesn't include filesystem support for the filesystem used on the boot partition. Normally a genkernel-generated kernel will include support for most common filesystems, though. Have you been modifying the configuration heavily with the genkernel --menuconfig option? If so, you should do so again and check that you have support for the boot partition filesystem.
> 
> - John

 

thx John and jaglover for your prompt responses. Yes this was a kernel upgrade from 2.6.36 hardened -r9 to 3.3.8

after emerging the gentoo-sources, I ran genkernel --menuconfig --bootloader=grub all.

In the menuconfig, the only thing I changed was Virtualization (changed from M to *). Thinking * will include the support for vmware.

 *Quote:*   

>  --- Virtualization                                                                               │ │
> 
>   │ │                          <*>   Kernel-based Virtual Machine (KVM) support                                                 │ │
> 
>   │ │                          <*>     KVM for Intel processors support                                                         │ │
> ...

 

----------

## John R. Graham

I edited my last response after noticing your posted /etc/fstab. Is XFS really your boot partition filesystem? Probably not as I don't believe grub supports XFS. An incorrect /etc/fstab could be why /boot isn't mounting.

- John

----------

## Jaglover

This is from log, why your current kernel can't see the boot device I do not know.

```
* Linux Kernel 3.3.8-gentoo for x86... 

mount: special device /dev/sda1 does not exist 

* WARNING: Failed to mount /boot! 
```

----------

## midway

 *John R. Graham wrote:*   

> I edited my last response after noticing your posted /etc/fstab. Is XFS really your boot partition filesystem? Probably not as I don't believe grub supports XFS. An incorrect /etc/fstab could be why /boot isn't mounting.
> 
> - John

 

This has reportedly since been fixed, and the 0.97 version (at least) of GRUB is apparently stable.

http://xfs.org/index.php/XFS_FAQ#Q:_Does_GRUB_work_with_XFS.3F

@Jaglover - no idea why my current kernel (linux-2.6.28-hardened-r9) cant find boot. I have not rebooted into the new kernel after upgrading to 3.3.8, could this be the cause? I am not sure of reboot as it might fail after.

```

boot # eselect kernel list

Available kernel symlink targets:

  [1]   linux-2.6.28-hardened-r7

  [2]   linux-2.6.28-hardened-r9

  [3]   linux-3.3.8-gentoo *

boot # nano /etc/make.conf

USE="symlink nptl nptlonly mysql curl gd imap jpeg png snmp tiff truetype xml2 spell apache2"

~ # nano /boot/ 

System.map-genkernel-x86-3.3.8-gentoo  initramfs-genkernel-x86-3.3.8-gentoo   kernel-genkernel-x86-3.3.8-gentoo 

```

Last edited by midway on Tue Sep 18, 2012 1:14 pm; edited 2 times in total

----------

## Jaglover

You cannot boot the new kernel, Grub won't find it. When you reboot you will be running your old kernel. What is the output of 

```
fdisk -l
```

----------

## midway

More info:

```

dev # fdisk -l

dev #

dev # cat /proc/mounts

rootfs / rootfs rw 0 0

/dev/sda3 / xfs rw,noatime,attr2,noquota 0 0

none /proc proc rw 0 0

tmpfs /run tmpfs rw,nosuid,nodev,mode=755 0 0

rc-svcdir /lib/rc/init.d tmpfs rw,nosuid,nodev,noexec,size=1024k,mode=755 0 0

sysfs /sys sysfs rw,nosuid,nodev,noexec 0 0

securityfs /sys/kernel/security securityfs rw,nosuid,nodev,noexec 0 0

debugfs /sys/kernel/debug debugfs rw,nosuid,nodev,noexec 0 0

configfs /sys/kernel/config configfs rw,nosuid,nodev,noexec 0 0

udev /dev tmpfs rw,nosuid,size=10240k,mode=755 0 0

fusectl /sys/fs/fuse/connections fusectl rw 0 0

devpts /dev/pts devpts rw,nosuid,noexec,gid=5,mode=620 0 0

none /dev/shm tmpfs rw,nosuid,nodev,noexec 0 0

usbfs /proc/bus/usb usbfs rw,nosuid,noexec,devgid=85,devmode=664 0 0

rpc_pipefs /var/lib/nfs/rpc_pipefs rpc_pipefs rw 0 0

nfsd /proc/fs/nfsd nfsd rw,nosuid,nodev,noexec 0 0

dev # lspci -n

00:00.0 0600: 8086:7190 (rev 01)

00:01.0 0604: 8086:7191 (rev 01)

00:07.0 0601: 8086:7110 (rev 08)

00:07.1 0101: 8086:7111 (rev 01)

00:07.3 0680: 8086:7113 (rev 08)

00:0f.0 0300: 15ad:0405

00:10.0 0100: 1000:0030 (rev 01)

00:11.0 0200: 1022:2000 (rev 10)

dev # lspci

00:00.0 Host bridge: Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX Host bridge (rev 01)

00:01.0 PCI bridge: Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX AGP bridge (rev 01)

00:07.0 ISA bridge: Intel Corporation 82371AB/EB/MB PIIX4 ISA (rev 08)

00:07.1 IDE interface: Intel Corporation 82371AB/EB/MB PIIX4 IDE (rev 01)

00:07.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 08)

00:0f.0 VGA compatible controller: VMware SVGA II Adapter

00:10.0 SCSI storage controller: LSI Logic / Symbios Logic 53c1030 PCI-X Fusion-MPT Dual Ultra320 SCSI (rev 01)

00:11.0 Ethernet controller: Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE] (rev 10)

dev # mount /dev/s

sg0       shm/      snapshot  stderr    stdin     stdout

dev # cat /proc/diskstats

   1       0 ram0 0 0 0 0 0 0 0 0 0 0 0

   1       1 ram1 0 0 0 0 0 0 0 0 0 0 0

   1       2 ram2 0 0 0 0 0 0 0 0 0 0 0

   1       3 ram3 0 0 0 0 0 0 0 0 0 0 0

   1       4 ram4 0 0 0 0 0 0 0 0 0 0 0

   1       5 ram5 0 0 0 0 0 0 0 0 0 0 0

   1       6 ram6 0 0 0 0 0 0 0 0 0 0 0

   1       7 ram7 0 0 0 0 0 0 0 0 0 0 0

   1       8 ram8 0 0 0 0 0 0 0 0 0 0 0

   1       9 ram9 0 0 0 0 0 0 0 0 0 0 0

   1      10 ram10 0 0 0 0 0 0 0 0 0 0 0

   1      11 ram11 0 0 0 0 0 0 0 0 0 0 0

   1      12 ram12 0 0 0 0 0 0 0 0 0 0 0

   1      13 ram13 0 0 0 0 0 0 0 0 0 0 0

   1      14 ram14 0 0 0 0 0 0 0 0 0 0 0

   1      15 ram15 0 0 0 0 0 0 0 0 0 0 0

   7       0 loop0 0 0 0 0 0 0 0 0 0 0 0

   7       1 loop1 0 0 0 0 0 0 0 0 0 0 0

   7       2 loop2 0 0 0 0 0 0 0 0 0 0 0

   7       3 loop3 0 0 0 0 0 0 0 0 0 0 0

   7       4 loop4 0 0 0 0 0 0 0 0 0 0 0

   7       5 loop5 0 0 0 0 0 0 0 0 0 0 0

   7       6 loop6 0 0 0 0 0 0 0 0 0 0 0

   7       7 loop7 0 0 0 0 0 0 0 0 0 0 0

   3       0 hda 0 0 0 0 0 0 0 0 0 0 0

   8       0 sda 276098 12771 21138983 5764960 4595941 477341 178894431 105089180 0 20876940 110838210

   8       1 sda1 0 0 0 0 0 0 0 0 0 0 0

   8       2 sda2 0 0 0 0 0 0 0 0 0 0 0

   8       3 sda3 276096 12771 21138967 5764900 4595941 477341 178894431 105089180 0 20876880 110838150

```

----------

## Jaglover

You mentioned this is inside of a virtual machine. The lspci output you posted, is it run inside VM?

----------

## midway

 *Jaglover wrote:*   

> You mentioned this is inside of a virtual machine. The lspci output you posted, is it run inside VM?

 

Yes I am running all these commands inside a vm (and this vm is running on a host which is running vmware esx3.5).

----------

## John R. Graham

Output of

```
ls /dev/sd*
```

might also be helpful.

- John

----------

## Jaglover

Well, obviously your kernel has no support for [virtual] HDD controller. I've no experience with vmware nor genkernel, hopefully someone else can help you here.

----------

## midway

 *John R. Graham wrote:*   

> Output of
> 
> ```
> ls /dev/sd*
> ```
> ...

 

Already mentioned above.

```

dev # mount /dev/s

sg0       shm/      snapshot  stderr    stdin     stdout

dev # ls /dev/s

sg0       shm/      snapshot  stderr    stdin     stdout

dev # ls /dev/sd*

ls: cannot access /dev/sd*: No such file or directory

```

dmesg output (src, dest and mac altered):

http://pastebin.com/n5GA2bcd

----------

## John R. Graham

Fibbing doesn't help. Unless your system is seriously nonstandard, none of the commands you show above except the one I recommended produces the output you posted. Are you running in a chroot right now?

- John

----------

## midway

 *John R. Graham wrote:*   

> Fibbing doesn't help. 
> 
> - John

 

sorry John, didn't get you. I am just giving you what i see on my system. could this be because i am running gentoo under vmware? 

inode is not 2 (correct me if i m wrong).

```

~ # pwd

/root

~ # ls -id /

128 /

~ # ls -ld

drwxr-xr-x 8 root root 4096 Sep 18 15:25 .

~ # ls -ld /proc/1/root

lrwxrwxrwx 1 root root 0 Sep 18 16:00 /proc/1/root -> /

~ # stat /

  File: `/'

  Size: 4096            Blocks: 8          IO Block: 4096   directory

Device: 803h/2051d      Inode: 128         Links: 18

Access: (0755/drwxr-xr-x)  Uid: (    0/    root)   Gid: (    0/    root)

Access: 2010-04-06 13:05:45.735183132 +0100

Modify: 2012-07-03 15:31:36.215719930 +0100

Change: 2012-07-03 15:31:36.215719930 +0100

 Birth: -

```

----------

## John R. Graham

Sorry; that's beyond my area of expertise. What do you think that tells you?

Looking at your "lspci -n" output, the driver for the virtual hard drive controller is a standard (although somewhat old) Intel ICH IDE controller. The device driver that handles it is

```
 -> Device Drivers

   -> Serial ATA and Parallel ATA drivers (ATA [=y])

     -> ATA SFF support (ATA_SFF [=y])

       -> ATA BMDMA support (ATA_BMDMA [=y])

        -> Intel ESB, ICH, PIIX3, PIIX4 PATA/SATA support
```

however I believe that the out of the box genkernel configuration should have support for that. You could reboot your virtual machine into the install CD (that is how you installed this, right?) enter the chroot, and then run

```
genkernel --menuconfig all
```

to see whether or not it's enabled (probably as a module). Note that you must properly set up grub to lave the initramfs available to properly boot a genkernel kernel image.

However, that all said, I've never see a system act like yours it: booted up but with the device nodes not existing the for root filesystem device. Perhaps someone with more virtualization experience will chime in.

- John

----------

## Jaglover

Well, lspci also shows LSI Logic / Symbios Logic	53c1030 PCI-X Fusion-MPT Dual Ultra320 SCSI, maybe this one is in use, don't think genkernel supports it out of the box.

----------

## Jaglover

John, I believe it booted up using legacy IDE drivers, udev will not create nodes for hd* but the way rootfs is mounted at boot still gives access to the root filesystem.

@nitish.anand

You should disable IDE support in kernel and enable PATA driver as John suggested.

----------

## John R. Graham

Interesting. Would've though that the legacy drivers would've been long gone from the genkernel-supplied kernel config files. Definitely worth checking, though.

- John

----------

## midway

 *Quote:*   

> You could reboot your virtual machine into the install CD (that is how you installed this, right?)

 

thx John and jaglover, this server was hosted on a separate hardware before and was imported into virtual environment (converted as vm) in 2010 (by my predecessor). 

I tried rebooting my server last night with lots of problems (boot not found obviously and then modprobe.conf issues). So I have reverted back to earlier snapshot and gone back to kernel 2.6.28 (where sync + system + world + revdep works and the server reboots fine) - it is a bodge fix until I retry upgrading the kernel to 3.3.8. But I thought to first solve this 'boot not seen by kernel' issue before upgrading.

```

~ # uname -a

Linux 2.6.28-hardened-r9 #1 SMP Mon Apr 12 17:02:47 BST 2010 i686 Intel(R) Xeon(R) CPU X5450 @ 3.00GHz GenuineIntel GNU/Linux

~ # eselect kernel list

Available kernel symlink targets:

  [1]   linux-2.6.28-hardened-r7

  [2]   linux-2.6.28-hardened-r9 *

```

```

~ # cat /etc/fstab

/dev/sda1 /boot xfs defaults,noatime 1 2

/dev/sda2 swap swap sw 0 0

/dev/sda3 / xfs noatime 0 1

/dev/cdrom /mnt/cdrom auto defaults,noauto 0 0

none /proc proc defaults 0 0

none /dev/shm tmpfs nodev,nosuid,noexec,rw 0 0

~ # lspci

00:00.0 Host bridge: Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX Host bridge (rev 01)

00:01.0 PCI bridge: Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX AGP bridge (rev 01)

00:07.0 ISA bridge: Intel Corporation 82371AB/EB/MB PIIX4 ISA (rev 08)

00:07.1 IDE interface: Intel Corporation 82371AB/EB/MB PIIX4 IDE (rev 01)

00:07.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 08)

00:0f.0 VGA compatible controller: VMware SVGA II Adapter

00:10.0 SCSI storage controller: LSI Logic / Symbios Logic 53c1030 PCI-X Fusion-MPT Dual Ultra320 SCSI (rev 01)

00:11.0 Ethernet controller: Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE] (rev 10)

~ # fdisk -l

~ #

~ # ls /dev/s

sg0       shm/      snapshot  stderr    stdin     stdout

~ # equery b genkernel

 * Searching for genkernel ...

sys-kernel/genkernel-3.4.24_p2 (/usr/share/bash-completion/genkernel)

sys-kernel/genkernel-3.4.24_p2 (/var/cache/genkernel)

sys-kernel/genkernel-3.4.24_p2 (/usr/share/genkernel)

sys-kernel/genkernel-3.4.24_p2 (/usr/bin/genkernel)

```

on vmware side, this is what i have tried (to check if I could mount to my /dev/cdrom - but this doesn't exist either):

In VMware > Select the Gentoo Vm > Edit Settings > CD /DVD Drive 1 > Then I have tried both: 

1. Passthrough IDE and 

2. Emulate IDE 

again many thx for your time.

----------

## Jaglover

Alright, I think you understand the issue, your kernel is using IDE drivers to access PATA devices, resulting nodes were /dev/hd*. It worked this way until newer udev version stopped supporting hd* nodes. Your Gentoo still boots but cannot see /boot and swap. To verify this theory you should hit e at Grub boot menu and review the kernel command line or simply do cat /proc/cmdline.

If my theory is correct then to fix it you should get access to /boot to install a new properly configured kernel. Maybe it is as easy as changing kernel command line from Grub screen. If it does not work you should either:

1. boot this VM from a Linux CD and chroot

2. or you should create missing hda* nodes by hand. Maybe downgrading udev will work, too.

But first things first, what is your kernel command line?

----------

## midway

 *Jaglover wrote:*   

> To verify this theory you should hit e at Grub boot menu and review the kernel command line or simply do cat /proc/cmdline.

 

```
~ # cat /proc/cmdline

root=/dev/ram0 init=/linuxrc real_root=/dev/sda3 vga=791 elevator=deadline
```

----------

## Jaglover

Can you use wgetpaste and put your entire dmesg into pastebin, the dmesg you posted earlier wasn't complete.

Output of lspci -k would be helpful, too.

----------

## midway

 *Jaglover wrote:*   

> Can you use wgetpaste and put your entire dmesg into pastebin, the dmesg you posted earlier wasn't complete.
> 
> Output of lspci -k would be helpful, too.

 

hi jaglover, here you go, thx:

dmesg | wgetpaste

http://pastebin.com/04hcRCcp

```

 ~ # lspci -k

00:00.0 Host bridge: Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX Host bridge (rev 01)

        Subsystem: VMware Virtual Machine Chipset

        Kernel driver in use: agpgart-intel

        Kernel modules: intel-agp

00:01.0 PCI bridge: Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX AGP bridge (rev 01)

        Kernel modules: shpchp

00:07.0 ISA bridge: Intel Corporation 82371AB/EB/MB PIIX4 ISA (rev 08)

        Subsystem: VMware Virtual Machine Chipset

00:07.1 IDE interface: Intel Corporation 82371AB/EB/MB PIIX4 IDE (rev 01)

        Subsystem: VMware Virtual Machine Chipset

        Kernel driver in use: PIIX_IDE

        Kernel modules: ata_piix

00:07.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 08)

        Subsystem: VMware Virtual Machine Chipset

        Kernel modules: i2c-piix4

00:0f.0 VGA compatible controller: VMware SVGA II Adapter

        Subsystem: VMware SVGA II Adapter

00:10.0 SCSI storage controller: LSI Logic / Symbios Logic 53c1030 PCI-X Fusion-MPT Dual Ultra320 SCSI (rev 01)

        Kernel driver in use: mptspi

        Kernel modules: mptspi

00:11.0 Ethernet controller: Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE] (rev 10)

        Subsystem: Advanced Micro Devices [AMD] PCnet - Fast 79C971

        Kernel driver in use: pcnet32

        Kernel modules: pcnet32, vmxnet

```

----------

## Jaglover

Well, all drivers seem correct, for some reason dmesg is not what it should be ... is udev in sysinit runlevel?

----------

## midway

 *Jaglover wrote:*   

> Well, all drivers seem correct, for some reason dmesg is not what it should be ... is udev in sysinit runlevel?

 

```
 ~ # /etc/init.d/udev

udev            udev-mount      udev-postmount

 ~ # /etc/init.d/udev restart

 * WARNING: you are stopping a sysinit service

 * Stopping udev ...                                                                                                            [ ok ]

 * Starting udev ...                                                                                                            [ ok ]

 * Populating /dev with existing devices through uevents ...                                                                    [ ok ]

 * Waiting for uevents to be processed ...                                                                                      [ ok ]

 * Device initiated services: net.eth0

```

could it be a reason where i had manually added eth0 in the past as net.lo failed to get the static IP assigned? since then on reboot i get a warning saying, this array feature will be deprecated in future? 

Just trying to join sides together.

----------

## Jaglover

After udev restart, do you have /dev/sda* nodes now?

----------

## midway

 *Jaglover wrote:*   

> After udev restart, do you have /dev/sda* nodes now?

 

No  :Sad: 

```

 ~ # ls /dev/s

sg0       shm/      snapshot  stderr    stdin     stdout

```

Edit: /var/log/genkernel.log

http://pastebin.com/1ntwnmXRLast edited by midway on Wed Sep 19, 2012 2:46 pm; edited 3 times in total

----------

## Jaglover

I'm running out of ideas, the early part of dmesg is missing, did you examine /var/log/messages ?

----------

## midway

Hi Jaglover and John,

sorry I was away so couldn't reply. I have rechecked my other gentoo VM and there seems to be a difference in kernel driver (ata vs. piix).

Affected VM for which this thread is opened:

```

~ # eselect kernel list

Available kernel symlink targets:

  [1]   linux-2.6.28-hardened-r7

  [2]   linux-2.6.28-hardened-r9 *

~ # uname -a

Linux 2.6.28-hardened-r9 #1 SMP Mon Apr 12 17:02:47 BST 2010 i686 Intel(R) Xeon(R) CPU X5450 @ 3.00GHz GenuineIntel GNU/Linux

 ~ # lspci -k

00:00.0 Host bridge: Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX Host bridge (rev 01)

        Subsystem: VMware Virtual Machine Chipset

        Kernel driver in use: agpgart-intel

        Kernel modules: intel-agp

00:01.0 PCI bridge: Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX AGP bridge (rev 01)

        Kernel modules: shpchp

00:07.0 ISA bridge: Intel Corporation 82371AB/EB/MB PIIX4 ISA (rev 08)

        Subsystem: VMware Virtual Machine Chipset

00:07.1 IDE interface: Intel Corporation 82371AB/EB/MB PIIX4 IDE (rev 01)

        Subsystem: VMware Virtual Machine Chipset

        Kernel driver in use: PIIX_IDE

        Kernel modules: ata_piix

00:07.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 08)

        Subsystem: VMware Virtual Machine Chipset

        Kernel modules: i2c-piix4

00:0f.0 VGA compatible controller: VMware SVGA II Adapter

        Subsystem: VMware SVGA II Adapter

00:10.0 SCSI storage controller: LSI Logic / Symbios Logic 53c1030 PCI-X Fusion-MPT Dual Ultra320 SCSI (rev 01)

        Kernel driver in use: mptspi

        Kernel modules: mptspi

00:11.0 Ethernet controller: Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE] (rev 10)

        Subsystem: Advanced Micro Devices [AMD] PCnet - Fast 79C971

        Kernel driver in use: pcnet32

        Kernel modules: pcnet32, vmxnet

```

another gentoo vm where the kernel has been upgraded with no problem:

```

~ # eselect kernel list

Available kernel symlink targets:

  [1]   linux-2.6.36-hardened-r9

  [2]   linux-3.3.8-gentoo *

~ # uname -a

Linux 3.3.8-gentoo #1 SMP Wed Sep 12 16:05:51 BST 2012 i686 Intel(R) Xeon(R) CPU X5450 @ 3.00GHz GenuineIntel GNU/Linux

 ~ # lspci -k

00:00.0 Host bridge: Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX Host bridge (rev 01)

        Subsystem: VMware Virtual Machine Chipset

        Kernel driver in use: agpgart-intel

        Kernel modules: intel-agp

00:01.0 PCI bridge: Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX AGP bridge (rev 01)

        Kernel modules: shpchp

00:07.0 ISA bridge: Intel Corporation 82371AB/EB/MB PIIX4 ISA (rev 08)

        Subsystem: VMware Virtual Machine Chipset

00:07.1 IDE interface: Intel Corporation 82371AB/EB/MB PIIX4 IDE (rev 01)

        Subsystem: VMware Virtual Machine Chipset

        Kernel driver in use: ata_piix

        Kernel modules: ata_piix

00:07.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 08)

        Subsystem: VMware Virtual Machine Chipset

        Kernel modules: i2c-piix4

00:0f.0 VGA compatible controller: VMware SVGA II Adapter

        Subsystem: VMware SVGA II Adapter

00:10.0 SCSI storage controller: LSI Logic / Symbios Logic 53c1030 PCI-X Fusion-MPT Dual Ultra320 SCSI (rev 01)

        Kernel driver in use: mptspi

        Kernel modules: mptspi

00:11.0 Ethernet controller: Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE] (rev 10)

        Subsystem: Advanced Micro Devices [AMD] PCnet - Fast 79C971

        Kernel driver in use: pcnet32

        Kernel modules: pcnet32

```

----------

## Jaglover

So it is the IDE driver as I suspected. You could create hda1 device node by hand (major 3 minor 0 methinks), mount /boot and upgrade your kernel.

----------

## midway

 *Jaglover wrote:*   

> So it is the IDE driver as I suspected. You could create hda1 device node by hand (major 3 minor 0 methinks), mount /boot and upgrade your kernel.

 

i have never played around with kernels (mknod etc) as genkernel has been working fine so far (until i hit this kernel driver piix issue). 

pls could you detail your process, and ya thanks again for your time.

this is what i have tried :

```

~ # mknod /dev/hda1 b 3 0

~ # mount /boot

mount: special device /dev/sda1 does not exist

~ # mount /dev/hda1 /boot

mount: no medium found on /dev/hda1

~ # ls -al /dev/h

hda1  hpet

 ~ # ls -al /dev/s

sg0       shm/      snapshot  stderr    stdin     stdout

~ # genkernel all

* Gentoo Linux Genkernel; Version 3.4.24_p2

* Running with options: all

* Linux Kernel 3.3.8-gentoo for x86...

mount: no medium found on /dev/hda1

* WARNING: Failed to mount /boot!

* kernel: Using config from /usr/share/genkernel/arch/x86/kernel-config

*         Previous config backed up to .config--2012-09-27--15-55-29.bak

* kernel: >> Running mrproper...

```

Last edited by midway on Thu Sep 27, 2012 2:57 pm; edited 2 times in total

----------

## midway

more info:

```

 ~ # lspci -k

00:00.0 Host bridge: Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX Host bridge (rev 01)

        Subsystem: VMware Virtual Machine Chipset

        Kernel driver in use: agpgart-intel

        Kernel modules: intel-agp

00:01.0 PCI bridge: Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX AGP bridge (rev 01)

        Kernel modules: shpchp

00:07.0 ISA bridge: Intel Corporation 82371AB/EB/MB PIIX4 ISA (rev 08)

        Subsystem: VMware Virtual Machine Chipset

00:07.1 IDE interface: Intel Corporation 82371AB/EB/MB PIIX4 IDE (rev 01)

        Subsystem: VMware Virtual Machine Chipset

        Kernel driver in use: PIIX_IDE

        Kernel modules: ata_piix

00:07.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 08)

        Subsystem: VMware Virtual Machine Chipset

        Kernel modules: i2c-piix4

00:0f.0 VGA compatible controller: VMware SVGA II Adapter

        Subsystem: VMware SVGA II Adapter

00:10.0 SCSI storage controller: LSI Logic / Symbios Logic 53c1030 PCI-X Fusion-MPT Dual Ultra320 SCSI (rev 01)

        Kernel driver in use: mptspi

        Kernel modules: mptspi

00:11.0 Ethernet controller: Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE] (rev 10)

        Subsystem: Advanced Micro Devices [AMD] PCnet - Fast 79C971

        Kernel driver in use: pcnet32

        Kernel modules: pcnet32, vmxnet

 ~ # eselect kernel list

Available kernel symlink targets:

  [1]   linux-2.6.28-hardened-r7

  [2]   linux-2.6.28-hardened-r9

  [3]   linux-3.3.8-gentoo *

 ~ # uname -a

Linux 2.6.28-hardened-r9 #1 SMP Mon Apr 12 17:02:47 BST 2010 i686 Intel(R) Xeon(R) CPU X5450 @ 3.00GHz GenuineIntel GNU/Linux

 ~ # ls -al /usr/src/

total 12

drwxr-xr-x  5 root root  117 Sep 27 14:36 .

drwxr-xr-x 13 root root 4096 Nov  1  2005 ..

-rw-r--r--  1 root root    0 Aug 31  2005 .keep

lrwxrwxrwx  1 root root   18 Sep 27 14:36 linux -> linux-3.3.8-gentoo

drwxr-xr-x  4 root root   84 Apr 12  2010 linux-2.6.28-hardened-r7

drwxr-xr-x 22 root root 4096 Jul 28 18:21 linux-2.6.28-hardened-r9

drwxr-xr-x 23 root root 4096 Sep 27 14:40 linux-3.3.8-gentoo

~ # cat /etc/fstab

/dev/sda1 /boot xfs defaults,noatime 1 2

/dev/sda2 swap swap sw 0 0

/dev/sda3 / xfs noatime 0 1

/dev/cdrom /mnt/cdrom auto defaults,noauto 0 0

none /proc proc defaults 0 0

none /dev/shm tmpfs nodev,nosuid,noexec,rw 0 0

```

as you can tell from above I am waiting for my boot to get mounted so that I can genkernel.

----------

## midway

okay, after all the tries, i have tried downgrading the udev but still no joy:

```

* Messages for package sys-fs/udev-164-r2:

 *

 * udev-164 does not support Linux kernel before version 2.6.25!

 * For a reliable udev, use at least kernel 2.6.27

 *

 * Updating persistent-net rules file

 *

 * persistent-net does assigning fixed names to network devices.

 * If you have problems with the persistent-net rules,

 * just delete the rules file

 *      rm /etc/udev/rules.d/70-persistent-net.rules

 * and then reboot.

 *

 * This may however number your devices in a different way than they are now.

 *

 * If you build an initramfs including udev, then please

 * make sure that the /sbin/udevadm binary gets included,

 * and your scripts changed to use it,as it replaces the

 * old helper apps udevinfo, udevtrigger, ...

 *

 * mount options for directory /dev are no longer

 * set in /etc/udev/udev.conf, but in /etc/fstab

 * as for other directories.

 *

 * If you use /dev/md/*, /dev/loop/* or /dev/rd/*,

 * then please migrate over to using the device names

 * /dev/md*, /dev/loop* and /dev/ram*.

 * The devfs-compat rules have been removed.

 * For reference see Bug #269359.

 *

 * Rules for /dev/hd* devices have been removed

 * Please migrate to libata.

```

Last edited by midway on Fri Sep 28, 2012 8:30 am; edited 1 time in total

----------

## Jaglover

```
~ # mount /dev/hda1 /boot 

mount: no medium found on /dev/hda1
```

So it is not 3,0 ... let me Google ... here it is ...

```
mknod hda b 3 0

mknod hda1 b 3 1
```

----------

## midway

 *Jaglover wrote:*   

> 
> 
> So it is not 3,0 ... let me Google ... here it is ...
> 
> mknod hda b 3 0
> ...

 

sorry to be a pain jaglover. after I created the nod on 3 1 then it says the same as sda1

```

~ # mknod hda b 3 0

~ # mknod hda1 b 3 1

~ # mount /dev/hda1 /boot

mount: special device /dev/hda1 does not exist

```

----------

## Jaglover

Alright this approach seems not to be working.

As I stated before I've no clue how vmware works.

A simple way to fix it with regular Gentoo install is to boot from a Linux liveCD and chroot. There has to be a way to boot this VM from a CD or CD image. I just do not know how.

----------

