UPDATE: I just update my setup to OpenELEC 3.0.3 and this tutorial is working also with XBMC-Frodo/OpenELEC 3.x. To update an OpenELEC installation on the hard disk, download the lastest OpenELEC, uncompress the archive and copy KERNEL and SYSTEM files overwriting the old ones (in my setup /dev/sda7 mounted on /mnt/OE_SYSTEM) from another Linux OS (live CD or similar…).

After playing with my new Raspberry Pi I have discovered a really cool project: Openelec.tv. This OS is a very small Linux distro built around XBMC.

I’m also the happy owner of a Acer Revo 3600 (a ION platform), so I have decided to install OpenELEC on it. You can test how OpenELEC is working creating the USB key and booting from it (well explained here for Linux, also for Mac and Windows).

But my target is not to boot my media-center from an USB key, I want to install OpenELEC on my HDD. To do this, we need a multi-boot environment, so I have installed alongside Windows, Xubuntu (a light version of Ubuntu Linux with XFCE window manager) and now GRUB is my boot manager.

During the custom Xubuntu installation I have created two other empty partitions (in my case /dev/sda7 and /dev/sda8) with size 1GB and 1.5GB formatted EXT4.

So, now this is the partition table of  my HDD:

Device Boot      Start         End      Blocks   Id  System
/dev/sda1              63    30732344    15366141   27  Hidden NTFS WinRE
/dev/sda2   *    30734336   171608063    70436864    7  HPFS/NTFS/exFAT
/dev/sda3       171608064   230201343    29296640   83  Linux
/dev/sda4       230203390   312580095    41188353    5  Extended
/dev/sda5       303792128   312580095     4393984   82  Linux swap / Solaris
/dev/sda6       230203392   298561535    34179072   83  Linux
/dev/sda7   *   298563584   300515327      975872   83  Linux
/dev/sda8       300517376   303788031     1635328   83  Linux

Here a little explanation:
/dev/sda1 is the Windows recovery partition
/dev/sda2 is Windows
/dev/sda3 is Xubuntu
/dev/sda4 is the logical partition group
/dev/sda5 is the swap
/dev/sda6 is an empty EXT4 partition (maybe a storage or another Linux distro, I will decide later)
/dev/sda7 OpenELEC System
/dev/sda8 OpenELEC Data

Since I have created this partition scheme during the installation of Xubuntu, all my empty partitions were formatted by the Linux installer.

To install OpenELEC, we have to download the same file you can use to generate your bootable USB key from the project download page.

I have downloaded and extracted  on my /tmp/ directory the 64bit Eden release OpenELEC-ION.x86_64-1.95.4.tar.bz2:

cd /tmp/
wget http://releases.openelec.tv/OpenELEC-ION.x86_64-1.95.4.tar.bz2
tar jxvf OpenELEC-ION.x86_64-1.95.4.tar.bz2
cd OpenELEC-ION.x86_64-1.95.4/

Then, labeled my two partitions with the correct name and mounted into the /mnt/ directory:

sudo e2label /dev/sda7 OE_SYSTEM
sudo e2label /dev/sda8 OE_DATA
sudo mkdir /mnt/OE_SYSTEM
sudo mkdir /mnt/OE_DATA
sudo mount /dev/sda7 /mnt/OE_SYSTEM
sudo mount /dev/sda8 /mnt/OE_DATA

The OE_DATA directory will not be touched in this tutorial, but OpenELEC will use this place to store settings and data, so it will be handy to know how to access it in the future.
Now we have to copy the kernel image and the system image into the correct place:

sudo cp /tmp/OpenELEC-ION.x86_64-1.95.4/target/KERNEL /mnt/OE_SYSTEM/
sudo cp /tmp/OpenELEC-ION.x86_64-1.95.4/target/SYSTEM /mnt/OE_SYSTEM/

To be able to boot from the system partition, we have to flag as bootable /dev/sda7, running fdisk, then a, 7 and w:

fdisk /dev/sda

The next step is to tell GRUB to boot Openelec: open with your favorite text editor /etc/grub.d/40_custom and add to the bottom of the file this:

menuentry "OpenELEC" {
    set root=(hd0,7)
    linux /KERNEL boot=/dev/sda7 disk=/dev/sda8 ssh quiet
}

This will add a menu entry in GRUB named OpenELEC.  The parameter “ssh” will make active the SSH daemon when the system is up.  Now let’s go to make OpenELEC the default boot entry: open with your favorite text editor /etc/default/grub and modify the first uncommented lines like this:

GRUB_DEFAULT="OpenELEC"
#GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=5

The final step is to update the GRUB configuration:

sudo update-grub

Now you can reboot into OpenELEC and enjoy it! 🙂

2 Comments

trent · November 10, 2012 at 21:25

how did you get audio the audio for hdmi to work.

having issues. any help would be great

Tom · February 18, 2016 at 17:01

Awesome, I have been looking around for solution like this, I was thinking if you do a youtube of the steps would even be super killer, this would be for user like me that are not tech savy but could follow the steps through video demonstration.

Leave a Reply

Avatar placeholder

Your email address will not be published. Required fields are marked *