PDA

View Full Version : [LIVE] HOW-TO build a XBMC Live USB without burning a CD on Windows


l.capriotti
2009-04-27, 13:44
There are two ways to create a bootable XBMC Live USB disk using Windows:

1. Use Virtualbox

With the latest Virtualbox you can boot from the ISO image and access an USB disk mounted on the host computer.

2. Use Unetbootin

Start unetbootin, select disk image and choose the file XBMCLive.ISO.
Once the process is finished open the file syslinux.cfg on the flash disk and replace all occurrences of "boot=cd" with "boot=usb".

UPDATE: unetbootin has not yet support for grub2, used in XBMCLive 9.11. This means that the proper syslinux entries will not be created properly. So, once unetbootin has finished, replace the file syslinux.cfg with something like


default vesamenu.c32
prompt 0
menu title XBMC Live
timeout 100

label nvidia
menu label NVIDIA
kernel /ubnkern
append initrd=/ubninit boot=live splash module=nvidia quiet persistent quickreboot quickusbmodules skipconfig union=aufs xbmc=autostart,nodiskmount,setvolume,wakeOnUSBRemo te loglevel=0

label nvidiasafe
menu label NVIDIA safe mode
kernel /ubnkern
append initrd=/ubninit boot=live module=nvidia quiet persistent quickreboot quickusbmodules skipconfig union=aufs xbmc=nodiskmount,setvolume,wakeOnUSBRemote loglevel=0

label atiamd
menu label ATI/AMD
kernel /ubnkern
append initrd=/ubninit boot=live splash module=amd quiet persistent quickreboot quickusbmodules skipconfig union=aufs xbmc=autostart,nodiskmount,setvolume,wakeOnUSBRemo te loglevel=0

label atiamdsafe
menu label ATI/AMD safe mode
kernel /ubnkern
append initrd=/ubninit boot=live module=amd quiet persistent quickreboot quickusbmodules skipconfig union=aufs xbmc=nodiskmount,setvolume,wakeOnUSBRemote loglevel=0

label intel
menu label INTEL
kernel /ubnkern
append initrd=/ubninit boot=live splash quiet persistent quickreboot quickusbmodules skipconfig union=aufs xbmc=autostart,nodiskmount,setvolume,wakeOnUSBRemo te loglevel=0

label intelsafe
menu label INTEL safe mode
kernel /ubnkern
append initrd=/ubninit boot=live quiet persistent quickreboot quickusbmodules skipconfig union=aufs xbmc=nodiskmount,setvolume,wakeOnUSBRemote loglevel=0


UPDATE2: The neat utility TopoResize (http://colinux.wikia.com/wiki/ColinuxImageTools) can be used to create the "permanent storage file".
Grab the tool and create an ext3-formatted file called "live-rw" (no quotes), and place it in the root of the flash disk.

As previously published, using Linux: boot the flash disk in safe mode, logon at console prompt and for releases 9.04 and older type:


sudo mount -t vfat /dev/sda1 /mnt
dd if=/dev/zero of=/mnt/ext3fs.img bs=1M count=600
mkfs.ext3 -F /mnt/ext3fs.img


while for 9.11 use:


sudo mount -t vfat /dev/sda1 /mnt
dd if=/dev/zero of=/mnt/live-rw bs=1M count=600
mkfs.ext3 -F /mnt/live-rw


(replace 600 with your preferred size in MB).

After a reboot you will have a complete XBMC Live bootable disk.

hartiberlin
2009-04-29, 08:07
Many thanks for the info how to do it with
Unetbootin.

Is it possible then also after making the USB stick with
Unetbootin
to upgrade the USB stick
with any enhancements that are currently posted
or with the ALSA sound mixer improvements ?

l.capriotti
2009-04-29, 10:16
once you create the permanent storage file you can apply whatever changes/upgrades to the base system

Gamester17
2009-04-29, 13:17
Would be cool if we could modify "GeeXboX Win32 Installer" and the "GeeXboX ISO Generator" installer software tools to work with XBMC Live, I believe that they are open source and licensed under the GPL:

http://geexbox.org/en/downloads.html

GeeXboX Win32 Installer
http://geexbox.org/en/doc.html

This package is for Windows (32-bits) only. It is a regular Win32 application that allows you to easily install/uninstall a GeeXboX ISO on your current hard-disk (or any USB key) without need to partition (or format) it again. It makes use of internal Windows bootloader to allow you choosing between different OSes to boot from.

GeeXboX ISO Generator
http://geexbox.org/en/generator.html

With this package, it is easy to modify GeeXboX in a few seconds without having to build the sources. The generator produces ISO image of the GeeXboX, ready to be burned on disc, that you may have customized to fit your needs. The software is multi-platforms, working currently under both GNU/Linux, Mac OS X and Microsoft Windows 9x/NT/2k/XP systems. It is able to produce ISO images for both x86_32, x86_64 and PowerPC targets.

Thanks to the GeeXboX ISO generator, it is possible to build a bootable image of the GeeXboX that will fit your needs, just from the binaries, without need to compile the whole distribution from sources. This lets you build the GeeXboX after slight changes in the configuration files, for example, with no need to build the full sources. The GeeXboX ISO FLTK generator works under both Microsoft Windows, GNU/Linux distributions and Apple MacOS X. It can be used to generated both x86 and PPC versions of GeeXboX.

GeeXboX's customization is interesting in many ways, such as :
* Include a movie : You just have to put your movie or sound files and the playlist into the iso directory of the generator and regenerate the image. The GeeXboX will then boot off the CD and will automatically play the provided list/file.
* Add non-free extra codecs.
* Add non-free firmwares for your drivers.
* Add extra fonts for Asian users.
* Add extra themes.
* Configure the network settings.
* Configure audio related options.
* Configure video related options.
* Configure the remote control and receiver to be used.
* Configure a LCD display.
* Change theme, fonts and charset encoding.
* Choose the services to be started with GeeXboX (like UPnP and SHOUTcast).
* Modify MPlayer's startup options : You just have to edit the contents fo the file iso/GEEXBOX/etc/mplayer/mplayer.conf and to generate the new ISO.

For now, just start the FLTK generator binary :

* generator.exe under Windows 9x/Me/2000/XP
* linux-i386-generator under GNU/Linux
* macosx-generator under MacOS X

Alternatively if we could make something similar that works the same way? :nod:

xyphur
2009-05-08, 10:33
l.capriotti: I receive the following error when trying to mount /dev/sda1 to /mnt

"mount: /dev/sda1 already mounted or /mnt busy"

yet /dev/sda1 is not mounted (checked by issuing the 'mount' command with no arguments), and /mnt isn't mapped to anything else either. This is all done in safe-mode, logged in as xbmc/xbmc. /mnt exists and is empty as well. Ideas?

felciano
2009-05-08, 20:59
I'm having trouble getting this to work. From the xbmc@XBMCLive prompt, I've tried the sudo call above, and it is complaining:


mount:
wrong fs type, bad option, bad superblock on /dev/sda1,
missing codepage or helper program


If I do dmseg | tail I see:


ISOFS: Unable to identify CD-ROM format.

Any suggestions?

Thx,

Ramon

l.capriotti
2009-05-08, 21:53
my fault, the mount command was incorrect for an usb disk.
Pls try the new one

xyphur
2009-05-10, 09:54
l.capriotti: small correction needs to be made to your code above. 2nd line, there's an extra slash before the 'of=' switch that causes an invalid argument error.

Secondly, I'm curious what sort of alterations would be required to have a UNetbootin-prepared USB stick autoboot, as the syslinux.cfg file is different than I remember it being previously in 8.10, and as someone pointed out in another thread, because we're using GRUB now in 9.04, the /boot/grub/menu.lst file must be edited to facilitate autobooting... except that, like I'd mentioned in another one of my threads, there exists 'boot=cd' in that file. Should we be changing this to boot=usb in menu.lst as we do in syslinux.cfg? I would imagine so, but I thought I'd ask 1st.

Aside from that, what else is required? Would be helpful if you or someone else created a thread specifically for UNetbootin installations.

Thanks! And kudos to you so far, your help is much appreciated :)

l.capriotti
2009-05-10, 11:09
l.capriotti: small correction needs to be made to your code above. 2nd line, there's an extra slash before the 'of=' switch that causes an invalid argument error.

gosh, I must have written that post without my daily dose of coffee :laugh:


Secondly, I'm curious what sort of alterations would be required to have a UNetbootin-prepared USB stick autoboot,

nothing to be done here except replacing boot=cd with boot=usb in syslinux.cfg, sice unetbootin takes care of converting from grub to syslinux.

CASHMON3Y
2009-06-12, 21:05
I tried the Unetbootin and my flash drive doesnt boot. I also tried the virtualbox, but that freezes and gives me errors.

koji
2009-06-23, 18:16
Hi folks,

In previous builds of XMBC, I used syslinux in windows to manually create a bootable USB stick with XBMC Live. With the new Babylon release, the bootloader has changed to GRUB. Since I don't have a CD burner available, I'm not sure how to proceed trying to update my USB stick to Babylon release.

Thanks,
KoJi

Asswipe44
2009-06-23, 22:32
Hi folks,

In previous builds of XBMC, I used syslinux in windows to manually create a bootable USB stick with XBMC Live. With the new Babylon release, the bootloader has changed to GRUB. Since I don't have a CD burner available, I'm not sure how to proceed trying to update my USB stick to Babylon release.

Thanks,
KoJi

Hey man, try unetbootin works like a charm for me.

mastermischke
2009-07-29, 13:02
Dear guys

first of all ... thanks for the work you do!


But i've got a serious problem

1.) Hope you dont mind ... but i am a total linux / ubuntu newbie!

2.) I created a USB Boot Disk according to this guide

3.) when i try to install it to my HDD i get the following error message over and over again : end_request: I/O errpr, dev fd0 , sector 0
end_request: I/O errpr, dev fd0 , sector 0
Buffer I/O error on defive fd0, logical block 0


what is this? how can i fix it?

:(

seanreit
2009-08-03, 08:24
Can a static IP address be built into the USB drive? When I try to change my Ip address it is greyed out, only a DHCP address is available.

I have searched for a solution to this, and the instructions indicate to change it at the prompt, but there are no definitive instrutions on how to do this.

Thanks all for your incredible input, I was able to load XBMC on my computer from a flash drive for the first time today, fairly exciting in my world LOL!

MacLeod_1980
2009-08-16, 19:46
I tried the Unetbootin and my flash drive doesnt boot. I also tried the virtualbox, but that freezes and gives me errors.

I appear to be having the same problem, have you had any luck in getting your USB to boot XBMC Live yet?

RedSpawn
2009-08-17, 13:18
tried everything but nothing worked....

1) install from live: getting "end_request: I/O error" upon installing GRUB
2) install via VirtualBox: same as 1)
3) install with unetbootin: seems to work but won't boot. since Babylon release changed to GRUB isn't this working anymore?

since this release is not really new i guess i'm making some stupid mistakes but maybe someone can give me some directions?

btw. tried 2different USB-sticks and a USB-HDD

MacLeod_1980
2009-08-20, 03:34
tried everything but nothing worked....

1) install from live: getting "end_request: I/O error" upon installing GRUB
2) install via VirtualBox: same as 1)
3) install with unetbootin: seems to work but won't boot. since Babylon release changed to GRUB isn't this working anymore?

since this release is not really new i guess i'm making some stupid mistakes but maybe someone can give me some directions?

btw. tried 2different USB-sticks and a USB-HDD

Exactly the same problem.

*update* this may be the solution http://www.xbmc.org/forum/showthread.php?t=51142

trying now...

This worked for me!

mouphi
2009-08-25, 23:29
Apologies in advance, I'm a Linux noob.

Created the USB stick fine.
Booted into Safe Mode.

The mount command...
sudo mount -t vfat /dev/sda1 /mnt

Generates this error:

[ 1045.654258] FAT:bogus number of reerved sectors
mount: wrong fs type, bad option, bad superblock on /dev/sda1, missing codepage, or helper program, or other error

So typed in 'dmesg | tail', and got this back:

[ 1045.654258] FAT:bogus number of reerved sectors
VFS: Can't fin a valid FAT filesystem on dev sda1

No doubt I'm missing something blindingly obvious, but I'm a spoilt Windows man-child.

vikjon0
2009-08-26, 08:41
Can a static IP address be built into the USB drive? When I try to change my Ip address it is greyed out, only a DHCP address is available.

I am sure it can, but it is not easier to assign a static ip in the router instead?

PantsOnFire
2009-09-12, 23:44
I've just created a USB stick with Live written on it. I got the ISO from here:
http://sourceforge.net/projects/xbmc/files/XBMC%20Live/Babylon%20-%209.04/XBMC_Live-9.04.1.zip/download

I take it this is the latest release?

Anyway, I followed the instructions in the first post to make the stick 'writeable'. Didn't work for me, something went wrong, for a start I didn't know you had to 'log in' to anything, might have been cool to add those details in the post. But when I did, I couldn't get those commands to work.

So anyway I booted XBMC, and changed a few settings. Rebooted the machine, and the settings remain as I set them. XBMC surely is writing settings to the stick successfully?

Bloodyhell, and then I go and delete the AEON skin directories... and from that point on, no XBMC settings save! How weird!

jochenz
2009-09-23, 22:10
thanks man!
unetbootin worked like a charm for me!

jochenz
2009-09-24, 20:08
my fault, the mount command was incorrect for an usb disk.
Pls try the new one

what is this "new one" you are referring to?

could you please update the code for creating the permanent storage?

jochenz
2009-09-29, 21:44
what is this "new one" you are referring to?

could you please update the code for creating the permanent storage?

for me this worked:


sudo mount -t vfat /dev/sdb1 /mnt
dd if=/dev/zero of=/mnt/ext3fs.img bs=1M count=600
mkfs.ext3 -F /mnt/ext3fs.img


the only thing I changed was sda1 to dsb1

prupert
2009-11-12, 23:53
Hi

I just tried to follow this guide, using Unetbootin on Windows and the XBMClive 9.11 Alpha1 iso.

But when it comes to his section of the guide:

open the file syslinux.cfg on the flash disk and replace all occurrences of "boot=cd" with "boot=usb"

I can't do anything since there is no mention of boot=cd in syslinux.cfg...

When I try to boot via the USB drive, I get a kernel panic saying it can't find any mountable filesystems.

Any idea what I need to change?

l.capriotti
2009-11-13, 11:13
these instructions were related to previous releases, there would be no need to modify anything now. I will try it myself and update the post accordingly.

ahreno
2009-11-19, 02:01
Im trying to get this going and all i get is a blank white screen.

I've done this with 9.04 and it was fine, but i want my 5.1 surround!

I downloaded 9.11 and loaded it with unet and installed to usb drive.

I then copy and pasted your suggested .cfg file into the one that was created on the usb drive.

Put the usb drive into the revo and used the boot menu to select it. it shows a line of text then goes to the white screen with a circle gradient.

any ideas?