Installing GeeXboX as a secondary Linux OS …
If you already have a Linux OS installed on your system (such as Ubuntu), you might just want to add an extra GeeXboX entry to your existing bootloader (usually grub).
This allow you to install GeeXboX very easily and boot it from your HDD.
While we recommend that you better install it on a removable USB disk, co-existing with your regular Linux install can be done in a few simple steps (in the following example we suppose your / is mounted through /dev/sda1):
- create yourself a /GEEXBOX directory on your root filesystem.
- from the GeeXboX CD, copy vmlinuz and initrd into /GEEXBOX, and rootfs into /.
- if you’re using GRUB Legacy, edit as root the /boot/grub/menu.lst and add the following at the bottom the file:
title GeeXboX
root (hd0,1)
kernel /GEEXBOX/vmlinuz root=/dev/sda1 vga=789 quiet splash loglevel=3 rw
initrd /GEEXBOX/initrd
quiet

First,thanks for your geexbox, it’s so good and there is some question when i use it
I just want make it into my ubuntu boot menu, but i encountered some problems. The latest ubuntu release is used the grub2 to boot., not the grub. So i cannot use the way you gived. I edit the /etc/grub.d/40_custom file and add a startup item, it is written like this
“menuentry “Geexbox 2.0″{
set root=(hd0,1)
linux /GEEXBOX/vmlinuz root=/dev/ram0 vga=789 quiet splash loglevel=3
initrd /GEEXBOX/initrd
}”
But the fact is it can be boot, but just start to the logo, and then it print “cannot find a valid root filesystem,dropping to shell ……”. It make me so craze.
Thanks for the pointer, I’ve just updated the documentation, it was incorrect:
* you should put root=/dev/sda1 instead of root=/dev/ram0
* you should copy the ‘rootfs’ file to /, not in /GEEXBOX
with these changes it should work fine.
Its still not working,
i did as you told in the doc: edited grub, greated the folder, copied the files into the right places
after reboot i see the splash screen and then get a busybox
maybe forgot to do something with the isolinux folder and the files in this folder?
Thank you for your help and now i have boot the geexbox successfully. On my PC, it have a windows7 and Ubuntu, so the ubuntu not at the /dev/sda1, and then i copy vmlinuz and initrd to /dev/sda1, and rootfs into /dev/sda8(my ubuntu root filesystem), and then it worked. I am so happy+ing.
But I still has three question
*the latest geexbox can’t play 720p
*boot from hdd can’t save the change i do
*it cannot support unicode? I am Chinese student
Anyway, thank you for your help and thank for your geexbox, it’s so good! And i recently got a plan that is make a similar software base on the linux kernel. So i have to learn more about linux. Linux is to funny, i love it.
@zerochou
rootfs is mounting ro and if you don’t provide a casper-rw file at the same place as rootfs, you can’t save your changes
Create a casper-rw and all should be fine
see create a persistent file
@tomlohave
this doesn’t solve the problem for me – have followed the instructions above and it boots ok from hdd, but creating a casper-rw file in / doesn’t make a difference – no changes persist on reboot. any other suggestions?
ta
matt
@burningmatt
Try with this initrd.
Adding persistent=/GEEXBOX/casper-rw or something else, you can choose another location for casper-rw
For info, here is the corrected one for grub2 (I struggled with the one posted above because of the typo in vmlinux :
menuentry “Geexbox 2.0″{
set root=(hd0,1)
linux /GEEXBOX/vmlinux root=/dev/sda1 vga=789 quiet splash loglevel=3
initrd /GEEXBOX/initrd
}
Why wmlinux ?
in iso, it’s vmlinuz
why is (hd0,1)?
is not it (hd0,0)?
My Fedora box uses the ext (for /boot) and lvm2 (for / “root”) filesystems. But Geexbox won’t load after dropping the rootfs file in the root directory (lvm2). I keep getting the error “can’t find a valid root filesystem,” and the booting stops at the busybox shell.
How can I get around it?
See here – http://pastebin.mozilla.org/1428870 – for my grub and filesystem details
For those interested to install on windows, read http://www.geexbox.org/forum/topic/howto-install-it-in-hdd/page/3/#post-3188
Actually bookmarks are not regarded in the forums right now but see my post from “February 27, 2012 at 01:58”.
Geexbox dont saved the changd settings after reboot. I found the solution for my system:
I created /GEEXBOX directory on root filesystem
inside: initrd rootfs vmlinuz from the GeeXboX CD
and casper-rw
( http://www.geexbox.org/documentation/create-or-modify-a-persistent-file/ )
And the /boot/grub/menu.lst and add:
# Other bootable partition config begins
title GeeXboX
root (hd0,0)
kernel /GEEXBOX/vmlinuz root=/dev/sda1 vga=789 quiet splash loglevel=3 rw rootfs=/GEEXBOX/rootfs persistent=/GEEXBOX/casper-rw rw
initrd /GEEXBOX/initrd
quiet
# Other bootable partition config ends
Note the kernel line ends …. casper-rw rw
It works and saved changes.
me too,我的也Cannot find a valid root filesystem, dropping to shell,用U盘Kingston 16gb ntfs(ud)Grub4dos启动(boot)的。,
menu.lst
title GeexBox
kernel /vmlinuz vga=789 persistent quiet splash loglevel=3
initrd /initrd
please ,help me.
geexbox-3.0-i386.iso
ud(kingston,16gb,ntfs) tip “Cannot find a valid root filesystem, dropping to shell”
menu.lst:
title GeexBox
kernel /vmlinuz vga=789 persistent quiet splash loglevel=3
initrd /initrd
please ,help me.
file:grub.exe,grub,menu.lst,rootfs,vmlinuz,initrd
ud(kingston,16gb,ntfs) : use fat32
@tomlohave
thank U, i try again
tip “Cannot find a valid root filesystem, dropping to shell”
fat32,ud