Archlinux unter Android installieren

Linux auf dem Handy…. So etwas nerdiges. Aber das hat doch eh fast jeder (Android). Also warum nicht die vorhandenen Möglichkeiten nutzen und nebenbei noch ein anständiges System laufen haben. Wie man also Archlinux unter Android installiert, kannst du in den nächsten Absätzen lesen.

Vorneweg: So schwer ist das wirklich nicht. Die Vorteile überwiegen natürlich:

  • Richtige Anwendungen Laufen lassen
  • Ordentliche Entwicklungsumgebung in gewohnter Atmosphäre
  • Git
  • Python, ruby, …
  • Echte X Anwendungen laufen
  • Webserver
  • Cronjobs
  • …… und vieles mehr

Technisches

Es gibt einige Möglichkeiten Linux auf sein Handy zu bringen:

  • VM –  wenn dies funktionieren sollte, dann wäre das wohl ziemlich langsam und würde viel Strom kosten
  • Nativ – soll es geben… Aber dann läuft Android nicht mehr und man kann sich nicht telefonieren
  • Chroot dabei wird der ganz normale Android Kernel verwendet, nur befindet sich der aktuelle Prozess und alle Kindprozesse in einer eigenen Umgebung (also in unserem Archlinux) dies ermöglicht es, das Android parallel einfach weiter laufen kann, da nichts emuliert wird wirkt sich das sich nicht auf die Akkulaufzeit aus

Voraussetzungen

  • Root

Ich zeige dir also, wie man Archlinux in einer chroot-Umgebung installiert.

Warum Archlinux?

  • Es gibt eine ARM Version
  • Aktuelle Software
  • Gute Community
  • Tolles OS

Was lesen?

Ich habe mich bei meiner Installation an diese zwei Tutorials gehalten.

Das erste solltest du dir anschauen, wenn du alles selber machen willst, und wenn du das System auf die SD Karte installieren willst (nicht empfohlen, da langsam und die SD Karte kann kaputtgeschrieben werden).

Das zweite ist etwas veraltet und funktioniert Nicht ganz so wie beschrieben, weil das verlinkte image nicht mehr vorhanden ist.

Also hier meine Vorschläge:

  • Du willst alles selber machen und das Linux auf die SD-Karte installieren? Dann Versuche das erste Tutorial
  • Du willst alles selber machen, aber Linux auf die Systempartition installieren? Dann lies das erste Tutorial bis “Upload the tarball to the phone“ und liest bei mir ab … weiter
  • Du willst dir die Mühen mit der extrahieren des Dateisystems sparen? Dann lies meinen Artikel

Installation

Logge dich über SSH oder die adb Konsole auf den Handy ein (oder du tippst alles auf dem Handy, dann viel Spaß…)

Für SSH versuche mal die App: DropBear SSH Server

Ansonsten einfach adb shell ausführen.

Führe folgende Befehle aus:

su 
bash 
cd /data/local/ 
mkdir arch 
cd arch 
wget https://azapps.de/wp-content/uploads/2013/02/archlinux.tar.gz
tar xzf archlinux.tar.gz 
rm Arch*.tar.gz 
mount -o bind /dev dev 
mount -t proc proc proc 
mount -t sysfs sysfs sys 
ln -s /proc/self/fd dev/fd 
echo "nameserver 85.214.20.141" >> /data/local/arch/etc/resolv.conf

Du lädst dir damit mein vorbereitetes image in das Verzeichnis runter, entpackst es und mountest noch ein paar Sachen an die richtigen Stellen. Dann richtest du dir Sicherheitshalber noch einen Notfall DNS Server ein (wenn du Google vertraust, nimmst du die 8.8.8.8. Der hier ist von Digital Courage).

Für das erste mal tippst du folgende Befehle ein:

chroot . /bin/bash 
source /etc/profile 
export TERM=xterm-256color 
export HOME=/root mount /dev/pts 
pacman -Syuu

Damit wechselst du in den chroot und lädst ein paar Sachen nach und setzt die Variablen richtig.

Im Prinzip bist du fertig. Du kannst noch einen neuen Nutzer anlegen, damit du nicht immer als Root arbeiten musst:

useradd -m nutzername

Damit du das initialisieren nicht jedes mal händisch machen musst, nimmst du einfach das vorbereitete Script von lrvick: https://gist.github.com/lrvick/2632221 das macht alles automatisch.

Wie geht es weiter?

Basiseinrichtung

Als Terminalemulator empfehle ich dir den hier: Android Terminal Emulator der kommt auch sehr gut mit den Farben klar und da funktioniert auch htop wunderbar.

DIE Tastatur (Hacker’s Keyboard) solltest du unbedingt für solche Sachen verwenden.

Damit du das Script nicht jedes mal von Hand ausführen musst, kannst du es als init Script in Terminal emulator benutzen:

Einstellungen/Startbefehl

su -c “/data/local/arch/init.sh“

Wenn du jetzt das Terminal öffnest, bist du immer gleich in Archlinux drin.

2 Gedanken zu „Archlinux unter Android installieren

  1. Laszlo

    Hi, ich habe nach der Beschreibung versucht Arch auf mein Htc One zu installieren und bin bis
    echo „nameserver 85.214.20.141″ >> /data/local/arch/etc/resolv.conf
    gekommen. Verstehe ich richtig, es sollte ein Download starten?
    Und ich finde mit dem Dateimanager den ordner /data/local/arch nirgendwo obwohl ich in der Konsole in dem Ordner bin. Sorry für die blöden fragen , ich bin nicht so linux bewandert.

  2. AZ Artikelautor

    Hallo Laszlo,
    Die Zeile
    echo “nameserver 85.214.20.141″ >> /data/local/arch/etc/resolv.conf
    schreibt „nameserver 85.214.20.141″ in die gegebene Datei. Die Datei wird für DNS benötigt.
    Den Ordner wird ein normaler Dateibrowser nicht anzeigen können, weil er keine Root Rechte hat. Du musst einen nutzen, der Root Rechte anfordern kann (z.B. ES Datei Explorer oder der Standarddateimanager von Cyanogenmod)

    Wenn du noch nicht viel Erfahrung mit Linux hast, dann installiere dir am besten ein Arch Linux auf deinen Rechner. Dort hast du auch eine ordentliche Tastatur – damit macht das Arbeiten auch mehr Spaß.

Kommentare sind geschlossen.