It all went very well, but when I tried to switch from the huge kernel to the generic kernel and use the initrd.gz generated from step 29 (except that I used 2.6.37.4-smp instead of whatever's there) in lilo.conf, it failed to boot. I also noticed that in the instructions themselves, the poster doesn't actually add the initrd.gz to lilo.conf, so I'm guess the huge kernel has everything it needs to boot properly. So all in all, I'm a little confused.

I've gone through the instructions you linked to as I'm also interested in btrfs so I created my own VM. I've played around with btrfs before but I'm certainly not an expert. This time I tried just using Slackware's setup program to format a btrfs root partition and when it had finished created a /home subvolume. I noticed Yoda, (I'll call him that), missed out the initial ram disk bits of lilo.conf so I added them myself. This booted the generic fine but failed on the huge kernel.

Then I realized that Yoda's instructions you linked to had two subvolumes - one for / (system) and one for home (home). I reran the install following the instructions and this time my generic kernel falls with "ERROR: No /sbin/init found on rootdev (or not mounted) Trouble ahead." The huge kernel boots OK though. Oddly out of my two slightly different attempts this time, one with one subvolume and one with two, either the generic or the huge kernel works but not both! I'm still playing around with this as btrfs setups are a new thing to me. I'll let you you if I find anything relevant - I've got an idea it's something simple I'm missing.

spudgunner

03-20-2011 05:30 PM

Quote:

Originally Posted by bgeddy
(Post 4297275)

Then I realized that Yoda's instructions you linked to had two subvolumes - one for / (system) and one for home (home). I reran the install following the instructions and this time my generic kernel falls with "ERROR: No /sbin/init found on rootdev (or not mounted) Trouble ahead." The huge kernel boots OK though.

That's the same thing that's currently happening to me too. Other than that hiccup, it seems to be functioning normally. I never added the initrd.gz to the initial lilo configuration (booting of the huge kernel) but when I did it messed up with that error message above. For some reason mkinitrd doesn't like it I guess.

lumak

03-20-2011 10:32 PM

Just a note from my experience, VirtualBox OSE appears to require the boot loader be installed to the MBR of the virtual hard disk.
i.e.

This may not be true for the full VirtualBox install that lets you use virtual sata drives instead of ide drives.

Also, I've had no such troubles with btrfs in VirtualBox with multiple volumes... But... I have a /boot partition that's ext3. So perhaps lilo doesn't support btrfs yet? Err... I thought lilo used hard linking to the partition and inodes to get the boot files.

spudgunner

03-21-2011 07:58 AM

I always install to the MBR, but I re-ran it anyways. I got a warning from lilo this time that I don't remember before (but just because I don't remember it, doesn't mean it isn't there). It's about the initrd is not small enough to fit in the 15M-16M memory hole so it will be loaded elsewhere and assumed the the BIOS can read memory above 16M or something (don't have it with me at the time).

It helps to avoid some errors when running lilo. Also the liloconfig probably has the option "lba32" around the "boot=/dev/sda". If it isn't there, you can try adding it. I can't remember the situations of when I got the 15M-16M error or what I did to fix it... but those options might help.

Also, be sure that
image=/boot/vmlinuz-generic-smp-2.6.37.4-smp
initrd=/boot/initrd.gz

are pointing to the correct files. I'm sure that was already done, I'm just trying to cover everything that I would check.

spudgunner

03-21-2011 09:52 AM

I can boot the system normally using the huge kernel, so I am not needing to go through all the mounting stuff. I'll have to check my lilo.conf to make sure all that stuff is right when I get home, but I'm pretty sure it is.

spudgunner

04-08-2011 05:47 PM

Sorry for the delay in getting back, I got caught up with school. When installing Slackware, I didn't do the binding as mentioned above, but those lines in the lilo.conf are correct

spudgunner

04-13-2011 06:32 PM

So I've installed rc3.1415... on my netbook, hoping to figure out this btrfs problem, but I'm still stuck on it. Not getting the weird error about the initrd being to big anymore (I think that was something to do with the VM I was using it in), but I still can't get the initrd to work with the generic kernel (huge kernel boots fine without it).

My System is laid out as follows:
sda1: ext4, contains /boot
sda2: btrfs, divided as follows

I have never needed usbhid, ehci-hcd, or uhci-hcd modules in the past with my computer, nor have I ever used the -u option with mkinitrd, and this computer has always worked fine. In addition to this, it is missing the ext4 module, so I opted not to try this.

A little help,i tried with btrfs as you tried
But i have a btrfs with 2 disk(created mkfs.btrfs /dev/sda3 /dev/sdb3)
when i use sda3 on mkinitrd and lilo.conf failed with "failed to read the system array".
So on console i use mount -t btrfs -o subvol=system /dev/sdb3 /mnt..and works.
If i change with sdb3 on mkinitrd and lilo.conf failed with "failed to read the system array".
and i must use(mount -t btrfs.../dev/sda3) and works.
This on every reboot(sic!)
If i try the -B option on mkinitrd it create /mnt/home and /mnt/system and of course
won't boot
Someone can help?