MediaBoot Script (en)

Aus Gemini-Wiki
Zur Navigation springen Zur Suche springen
Deutsch.png - in Deutsch English.png - in English
The Gemini Project

Install a OE2.0 Image on a media device **UNDER CONSTRUCTION**

The media-boot script by emanuel installs an image onto a media device such as USB, CF, SD or SSD, inclusive the GP3 Feed. While executing the script the device gets partitioned into 3 partitions (boot, swap and root). Subsequently the image (as tar.bz2 archive) is downloaded and unpacked onto the device. After an automatic restart of the Dreambox the image from the device is bootet and offers enough memory for all your needs. Interesting e.g. for the DM800se with small flash capacity ;)


The Media-Boot Script is available in two versions. You can choose between folowing OE2.0 based images.

  • media-boot (DMM exp. OE2.0)
  • merlin-media-boot (Merlin 3 OE2.0)


Requirements:

  • DM500HD (naads a USB Mod), DM800se, DM8000HD, DM7020HD.
  • A functioning internet connection.
  • Bios of the Dreambox needs to be configured correctly.
  • A media device larger than 1GB.
  • Create Bootlog, if the boot fails.
  • The media device needs to be formated in FAT32.
  • Use other media device, if the boot fails. Mainly USB Sticks can be problematic.
  • Media-Boot uses a pluged media device. Problems occur when plugging additional devices into the dreambox. As a result the device names move and booting is no longer possible. This problem can only be solved by making a Bootlog and editing the autoexec_*.bat.
  • Take a look at Tips & Tricks.

Bios configuration

Bios - DM 8000 HD PVR
Bios - DM 800 HD se

You need to prepare the Bios to be able to boot via a removable media containing the FAT filesystem.
The following chapter shows you the needed preparation for the different kind of Dreamboxes.

The USB support needs to be activated for all Boxes.

Ambox notice.png Changing the Bios
Like flashing the Bios via Webbrowser you can connect to the Bios.
After you see "STOP" at the display you can connect via telnet ip_of_dreambox to the Bios. Than you can change the needed values. Further informations about accessing the BIOS can be found in Wiki article The Dreambox Bios.


Ambox notice.png Choose Boot Source
If you cannot change the values at Boot Source between Flash / CF / USB,
then use the [Page UP] or [Page Down] keys at your keyboard.
Mac users can use the following combination [Fn]+[Shift]+[Arrow up/down].

The following picture shows how these keys can look ;)

Dumbo Plugin keys example.png


DM 500 HD

Primary boot source: usb [/autoexec_dm500hd.bat]

Secondary boot source: flash

Enable USB support: [ENABLED]


DM 800HD PVR

Primary boot source: usb [/autoexec_dm800.bat]

Secondary boot source: flash

Enable USB support: [ENABLED]


DM 800HD se

Primary boot source: usb [/autoexec_dm800se.bat]

Secondary boot source: flash

Enable USB support: [ENABLED]


DM 7020HD

Primary boot source: usb [/autoexec_dm7020hd.bat]

Secondary boot source: flash

Enable USB support: [ENABLED]


DM 8000HD PVR

Primary boot source: usb [/autoexec_dm8000.bat]

Secondary boot source: flash

Enable USB support: [ENABLED]


Back to table of contents

Configure Media-Boot

Download the wanted script from Media-Boot Thread unpack and copy the file with FTP onto the Dreambox in the directory /home/root.

Make sure the script has the correct rights, otherwise it can not be executed. Use the following command when connected via telnet or ssh. Attention this command ist for the script for the DMM exp. Image. If you use the script for Merlin, you need to replace media-boot by merlin-media-boot!

chmod 755 media-boot


Back to table of contents


Media-Boot Script

Informations

Informations about Media-Boot can be displayed as follows.

root@dm800se:~# ./media-boot --help

media-boot: is a script to install dreambox image (OE2) on extern device >= 1GB

NOTE:   this script is only for advanced users!
        Make sure the selected device is not your harddisk!!

Usage: media-boot -i /dev/sd<a-z>
        install image on selected device /dev/sd<a-z>

Usage: media-boot -d
        shows avaible devices on box

root@dm800se:~#


Back to table of contents


List the available media devices

With the following command you can list the available devices. In the example (output reduced) a hard disk and a USB Stick with 8GB is found. The namaof the device is important for starting the Media-Boot script in the next step. In this example the USB Stick has the name /dev/sdb.

root@dm800se:~# ./media-boot -d

media-boot: found following devices on box:

Disk /dev/sda: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks  Id System
/dev/sda1               1       60801   488384028+ 83 Linux

Disk /dev/sdb: 8006 MB, 8006926336 bytes
84 heads, 6 sectors/track, 31028 cylinders
Units = cylinders of 504 * 512 = 258048 bytes

   Device Boot      Start         End      Blocks  Id System
/dev/sdb1               5       31025     7817216   b Win95 FAT32


Back to table of contents


Execute Media-Boot

Media-Boot is started with the following command. Make sure you use the correct device name, pay attention you don't make a mistake and specify your hard disk. Be patient, the initializing, downloading and unpacking of the image takes a while.

Afterwards the box restarts automatically, and the image from the stick is bootet. You can check the availiable memory with df -h.

root@dm800se:~# ./media-boot -i /dev/sdb

media-boot: installing on device: /dev/sdb
media-boot: stoping automount reboot to get back
media-boot: stoping udev
.
.
.


Back to table of contents


Install Chkbootmedia

After booting the Dreambox successfully from the media device the additional package (chkbootmedia_x.xx_all.ipk) needs to be installed. This is needed to prevent overwriting the autoexec_*.bat when kernel updates are installed. This would lead to a failed boot of the media device.

Download the package from hier and copy the file with FTP onto the Dreambox in the directory /tmp. Installthe package with the following commmand.

opkg install /tmp/chkbootmedia*


Back to table of contents

Image sichern / wiederherstellen

Ein Backup erstellen oder wiederherstellen könnt ihr mit folgenden Befehlen. Das Beispiel bezieht sich wieder auf den Gerätenamen /dev/sdb. Den Gerätenamen könnt ihr auch mit dem Befehl fdisk -l herausfinden.

Image sichern

Läuft das Image vom Speichermedium, dann könnt ihr es mit dem dd Befehl sichern. Der Sicherungsort in diesem Beispiel ist die Festplatte und der Dateiname des Backups lautet mein_backup.img. Die Grösse des Backups ist übrigens gleich gross wie das benutzte Speichermedium. Das Sichern dauert eine Weile, seid bitte Geduldig und wartet, bis die Kommandozeile wieder bereit ist für neue Befehlseingaben.

dd if=/dev/sdb of=/media/hdd/mein_backup.img


Image wiederherstellen

Startet die Dreambox vom Flashspeicher und benutzt folgenden Befehl für die Wiederherstellung. Stellt sicher, das der Gerätename korrekt ist. Benutzt hier auch wieder den Befehl fdisk -l und zwar gewissenhaft!

Beim Wiederherstellen muss darauf geachtet werden, dass die Grösse der Speichermediums gleich gross (oder grösser ist), wie die der Backupdatei (*.img). Das Wiederherstellen dauert eine Weile, seid bitte Geduldig und wartet, bis die Kommandozeile wieder bereit ist für neue Befehlseingaben.

dd if=/media/hdd/mein_backup.img of=/dev/sdb


Zurück zum Inhaltsverzeichnis


Tipps & Tricks

GP3.2 Plugin Installieren

Das Skript bietet die Möglichkeit das GP3.2 Plugin, GP3 Addons oder GP3-Skins zu installieren. Somit sind das BluePanel und die Wunschplugins, Skins nach erfolgreichem Booten sofort verfügbar.

Editiert das Skript und sucht folgende Zeilen:

EXTRA=""

#EXTRA="geminiplugin geminidreamnetcast geminijukebox geminirezapp geminigweather gemininetcastwebif geminirssreader geminiwebcam"

Die gewünschten Pakete, müsst ihr beim Eintrag EXTRA="" zwischen die Anführungszeichen einfügen. Der Eintrag, um das GP3.2 Plugin, NFS Server und die Gemini Jukebox zu installieren würde wie folgt ausschauen.

 EXTRA="geminiplugin gemininfs geminijukebox"

Wenn ihr die Paketnamen nicht kennt, dann könnt ihr bei einem eingerichteten Image mit GP3 Plugin die Namen wie folgt ermitteln. Führt aber vorher den Befehl opkg update aus. Der erste Befehl zeigt alle GP3 Pakete, der zweite die GP3 Skins.

opkg list *gemini* 
opkg list *gp-skin*


Zurück zum Inhaltsverzeichnis


Supportthread

Braucht ihr Hilfe zu Media-Boot, dann folgt bitte folgendem Link ;)

Media-Boot


Zurück zur Übersicht:Gemini-Wiki:Portal oder Hauptseite