Open Source im professionellen Einsatz
Linux-Magazin 06/2016
© Alexey Poprotsky, 123RF

© Alexey Poprotsky, 123RF

Debian 8 auf dem Nexus 5

Taschen-Linux

Möchte ein Entwickler sein Programm präsentieren, trägt er meist ein Smartphone und ein Notebook bei sich. Letzteres macht Maru OS überflüssig, indem es ein Desktop-Debian auf das Smartphone bringt.

819

Heutige Android-Geräte verfügen über viel RAM und brauchbare Prozessoren: Wie schön wäre es, die Software direkt auf dem Smartphone vorzuführen, auf einem echten Debian-System? Maru OS [1] macht's möglich.

Das System des amerikanischen Entwicklers Preetam D'Souza vereint zwei Betriebssysteme in einer Firmware. Sein Custom-ROM für das Nexus 5, denn nur auf diesem Gerät läuft es bislang, soll bis zum Erscheinen dieser Magazin-Ausgabe unter einer freien Lizenz stehen, wenn alles nach Plan läuft. Es bietet sowohl Android 5.1 in der AOSP-Version als auch Debian 8 "Jessie" zur Nutzung an und ist auf der DELUG-DVD zu finden. Das Debian-System tritt nur dann in Aktion, wenn der Nutzer das Nexus 5 über einen Adapter mit einem HDMI-fähigen Monitor verbindet.

Diese Lösung bietet gegenüber dem klassischen Android-System gleich mehrere Vorteile: Debian lässt sich auf einem größeren Monitor deutlich besser nutzen als Android, das vor allem für kleine Displays und Touchscreens optimiert ist. Zudem starten auf dem Debian-System nahezu alle Anwendungen, die das Debian-Projekt für die ARM-Plattform anbietet. Dazu gehören neben Libre Office (in Version 4.3) auch praktische Helfer wie Gimp oder der beliebte Webserver Apache. Sogar einige eher exotische Programme wie Blender oder Latex laufen auf dem Android-Smartphone.

Der Fokus liegt aber eher auf dem Einsatz leichtgewichtiger Anwendungen. Das überrascht nicht. Zwar verfügt das Nexus 5 mit 2 GByte RAM über genügend Arbeitsspeicher, doch erweist sich die verbaute Snapdragon-800-CPU als etwas schwach auf der Brust, wenn es um rechenintensive Tasks geht.

Zum Vergleich: Um eine 60 Sekunden lange WAV-Datei (16 Bit, 44,1 kHz) mit dem Encoder-Aufruf »oggenc -q 10« ins Ogg-Vorbis-Format zu konvertieren, benötigt ein Intel-i5-5200U-Prozessor rund 1,2 Sekunden. Der Snapdragon 800 arbeitet sich hingegen mehr als 6 Sekunden lang an dieser Aufgabe ab (Abbildung 1).

Abbildung 1: Eine 60 Sekunden lange WAV-Datei konvertiert oggenc auf dem Nexus 5 unter Debian in 6,4 Sekunden.

Download und Installation

Maru steckt noch in einer (geschlossenen) Betaphase, doch auf dem Nexus 5 lässt sich das System schon sehr gut nutzen. Wer es täglich mit Maru verwenden will, muss aber ein paar Hürden nehmen. So lässt sich der Android-Teil von Maru OS (Abbildung 2) aktuell nur über eine Neuinstallation des Systems aktualisieren. Androids übliche OTA-Updates kann der Entwickler nicht bereitstellen. Da sich das System schnell weiterentwickelt, muss der Nutzer flexibel sein.

Abbildung 2: Der Android-Desktop von Maru. Beim Anschluss an einen Monitor startet das Debian-System automatisch.

Ein weiterer Nachteil: Maru setzt auf Android 5.1, für das Nexus 5 gibt es aber bereits seit Oktober 2015 Android 6 "Marshmallow". Außerdem scheint das Audio-Routing auf dem Debian-System noch nicht zu funktionieren. Im Test lieferte das Nexus 5 kein Audiosignal über den HDMI-Ausgang. Unter Android arbeitet die Audio-Ausgabe wie gewohnt. Maru gibt es aktuell nur in englischer Sprache. Wer will, stellt das Android- und das Debian-System nachträglich auf Deutsch um, minimale Englischkenntnisse sind aber von Vorteil.

Zwar stand der angekündigte Quellcode zu Redaktionsschluss noch nicht zum Download bereit. Aber wer Maru testen möchte, findet unter [1] einen »Sign me up!« -Button, um an den Betatests teilzunehmen. Nach einer erfolgreichen Registrierung erhält der Nutzer per Mail einen Link zum Download des rund 700 MByte großen Zip-Archivs. Das enthält nicht nur alle notwendigen Systemabbilder, sondern auch die zur Installation benötigten Tools wie die Android Debug Bridge (»adb« ) und »fastboot« .

Im besten Fall schaltet der Anwender auf dem Nexus 5 die Entwickleroptionen frei, entpackt die Zip-Datei »maru -v0.2-hammer-head.zip« in einen Ordner und ruft das »install.sh« -Skript auf. Das entsperrt – wenn nötig – auch den Bootloader des Smartphones. Vorsicht: Beim Überspielen löscht es alle Daten auf dem Nexus 5.

Im Zip-Paket steckt neben dem Installer auch ein »uninstall.sh« -Skript, welches das Nexus 5 auf Wunsch wieder mit der Original-Firmware von Google bestückt [2]. Dazu muss auf dem eigenen Rechner lediglich eine beliebige Version der Original-Firmware im entpackten Zustand vorliegen. Das Skript erwartet noch den absoluten Pfad zur Nexus-5-Firmware, um anschließend dort die Installation zu starten. Diese löscht einmal mehr sämtliche Daten auf dem Smartphone.

Wie funktioniert das?

Während frühere Versuche von Motorola, Ubuntu und anderen Herstellern mit Virtualisierung oder Emulation arbeiteten und in den meisten Fällen an zu wenig RAM scheiterten [3], benutzt Maru das schlanke Containersystem LXC von Linuxcontainers.org [4]. Das Debian-System greift somit direkt auf den Kernel 3.4 von Android zu, anstatt den Standardkernel von Jessie (3.16) zu benutzen. Dieser Kernel zeigt sich dann auch allein verantwortlich für die komplette Virtualisierung. Er gaukelt dem Debian-System einen auf der ARM-Architektur basierenden PC vor.

Die Trennung vom Android-System erfolgt über spezielle Kernel-Kontrollgruppen (Cgroups), die alle Prozesse des LXC-Containers hierarchisch einem Linux-Prozess zuordnen. Oder einfacher formuliert: LXC ist ein Mittelding zwischen einem simplen »chroot« und einer kompletten Virtualisierung wie Xen oder KVM. Es braucht weniger Ressourcen, kann aber zum Beispiel kein anderes Betriebssystem simulieren, da der Kernel eben ein Linux-Kernel bleibt.

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 3 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

Linux-Magazin kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • Neue Version 0.3 von Maru OS

    Preetam D'Souza hat Maru OS in Version 0.3 veröffentlicht, ein Android-Image, das ein Smartphone bei Bedarf in ein Debian-Desktopsystem verwandelt. Es unterstützt nun Android 6, Debian läuft auch ohne Bildschirm im Hintergrund.

  • Debian neben Android – Maru wird Open Source

    Das Ziel von Maru ist anspruchsvoll: Auf einem modifizierten Android Lollipop aufbauend verwandelt es sich beim Anschluss an Monitor und Tastatur in ein PC-Betriebssystem auf Debian Basis.

  • Maru OS 0.4 unterstützt Nexus 7 2013

    Das Debian für das Nexus 5, Maru OS, erweitert seine Hardware-Unterstützung auf andere Nexus-Geräte und verschlüsselt Festplatten neuerdings vollständig.

  • Quellcode von Maru OS verfügbar

    Maru OS vereint zwei Betriebssysteme in einer Firmware und macht Android-Smartphones in Verbindung mit einem Monitor zum Debian-Rechner. Nun gibt es den Quellecode von Maru OS.

  • Maru OS ohne Einladung

    Der Hauptentwickler von Maru OS, Preetam D'Souza, hat bekannt gegeben, dass sich sein Debian für das Nexus 5 nun auch ohne Einladung herunterladen lässt.

comments powered by Disqus

Stellenmarkt

Artikelserien und interessante Workshops aus dem Magazin können Sie hier als Bundle erwerben.