S
sven-ola
Ambitioniertes Mitglied
- 24
Man kann auch auf das Galaxy ein Debian parallel installieren. Dabei bleiben alle Funktionen des Mobiltelefons erhalten. Angeregt von Beiträgen u.a. in diesem Forum habe ich das für mein Galaxy hinbekommen.
Ich stehe nicht so auf fertige "Installier-Programme", die funktionieren im Zweifelsfall nicht weil irgend etwas fehlt oder anders ist als vorausgesetzt. Daher gibts hier eine kleine Anleitung für Linux in Einzelschritten. Man muss dazu nix kompilieren, aber das richtet sich nur an Leute, die mit einer Linux-Shell umgehen können und wissen, dass man sich damit auch das Mobiltelefon kaputt machen kann.
Voraussetzung ist, dass man mit "adb shell" eine Root-Shell auf dem Mobiltelefon aufrufen kann. Wie man das hinbekommt steht in diesem Forum an anderer stelle, z.B. von mir https://www.android-hilfe.de/forum/...linux-mit-virtualbox-aber-kein-root.4445.html. Da ich an diesen Post kein fertiges Debian-Image dranhängen werde, braucht es auch ein Debian-ähnliches PC-Linux (Debian, (k)Ubuntu, Knoppix etc).
Zunächst empfehle ich zur Lektüre, wie andere das auf dem G1 gemacht haben. Von dem ersten Link habe ich auch das Busybox-Programm: Debian & Android Together on G1 - Jay Freeman (saurik) und Elitehardware.de . Auch interessant: wie kompiliert man das "unionfs.ko" (Dateisystem mit dem man über bestehende Verzeichnisse ein anderes Verzeichnis "darüberlegen" kann - siehe https://www.android-hilfe.de/forum/...l-module-kompilieren-erster-versuch.4801.html )
Auf dem PC ein Image herstellen (Shell aufrufen):
Das angehängte ZIP-Archiv (1 Megabyte) herunterladen und entpacken. Mobiltelefon per USB anschließen und unter Einstellungen->Anwendungen->Entwicklung die Optionen "USB Debugging" und "Aktiv bleiben" einschalten. Letztere verhindert, dass z.B. die Internet-Verbindung über WLAN automatisch in den Schlafmodus geht. Nun die Dateien auf das Mobiltelefon übertragen:
Jetzt auf das Mobiltelefon wechseln (adb shell) und starten mit /data/local/bin/bootdeb. Das dauert eine Weile, dann der Debian-Installer muss seine zweite Runde unter dem ARM-Prozessor ausführen. Zum Abschluss erhält man eine Debian-Bash-Shell, von der aus es z.B. mit "apt-get update", "apt-get upgrade" oder z.B. "apt-get install wireless-tools" weitergehen kann. Für diese Befehle sollte das Mobiltelefon eine günstige Internet-Verbindung haben, denn es werden mehrere Megabyte heruntergeladen.
Noch ein paar Hinweise:
* Das "bootdeb" Script mounted die Datei "/sdcard/debian.img" als ext2-loop. Darum sollte man nicht die SD-Karte abmelden, solange das Debian aktiv ist. Erst mit "/data/local/bin/bootdeb umount" das Debian-Dateisystem aushängen, dann kann man die SD-Karte "dem PC zur Verfügung stellen".
* Ein Root-Passwort ist nicht gesetzt. Evnt. also "passwd" aufrufen, wenn man z.B. den openssh-server installieren und starten will.
* Das Debian startet nicht automatisch mit dem Telefon und das "bootdeb"-Script startet selbst auch keine Debian-Daemonen. Dies kann man aber "zu Fuss" machen, z.B. mit /etc/init.d/ssh start. Solange ein Debian-Daemon läuft kann man natürlich kein "bootdeb umount" machen.
* Das Root-Dateisystem des Mobiltelefons kommt aus der Initrd des Kernels (Ramdisk). Dieses ist normalerweise Read-Only. Das Debian-Programm "dpkg" hat leider eine Macke (Schreibzugriff auf ..//dpkg-tmp), so dass "apt-get install" nur läuft wenn auf die Root-Partition geschrieben werden kann.
Viel Spaß beim basteln wünscht
// Sven-Ola
Ich stehe nicht so auf fertige "Installier-Programme", die funktionieren im Zweifelsfall nicht weil irgend etwas fehlt oder anders ist als vorausgesetzt. Daher gibts hier eine kleine Anleitung für Linux in Einzelschritten. Man muss dazu nix kompilieren, aber das richtet sich nur an Leute, die mit einer Linux-Shell umgehen können und wissen, dass man sich damit auch das Mobiltelefon kaputt machen kann.
Voraussetzung ist, dass man mit "adb shell" eine Root-Shell auf dem Mobiltelefon aufrufen kann. Wie man das hinbekommt steht in diesem Forum an anderer stelle, z.B. von mir https://www.android-hilfe.de/forum/...linux-mit-virtualbox-aber-kein-root.4445.html. Da ich an diesen Post kein fertiges Debian-Image dranhängen werde, braucht es auch ein Debian-ähnliches PC-Linux (Debian, (k)Ubuntu, Knoppix etc).
Zunächst empfehle ich zur Lektüre, wie andere das auf dem G1 gemacht haben. Von dem ersten Link habe ich auch das Busybox-Programm: Debian & Android Together on G1 - Jay Freeman (saurik) und Elitehardware.de . Auch interessant: wie kompiliert man das "unionfs.ko" (Dateisystem mit dem man über bestehende Verzeichnisse ein anderes Verzeichnis "darüberlegen" kann - siehe https://www.android-hilfe.de/forum/...l-module-kompilieren-erster-versuch.4801.html )
Auf dem PC ein Image herstellen (Shell aufrufen):
Code:
sudo apt-get install debootstrap
dd if=/dev/zero of=debian.img bs=1048576 count=768
mke2fs -F debian.img
tune2fs -c 0 debian.img
mkdir debian-image
sudo mount -o loop debian.img debian-image
sudo debootstrap --verbose --arch armel --foreign lenny debian-image http://ftp
sudo umount debian-image
rmdir debian-image
Code:
adb shell mkdir /data/local/mnt
adb shell mkdir /data/local/bin
adb push busybox /data/local/bin/
adb push bootdeb /data/local/bin/
adb push unionfs.ko /data/local/bin/
adb push debian.img /sdcard/
adb shell chmod 4755 /data/local/bin/bootdeb
Noch ein paar Hinweise:
* Das "bootdeb" Script mounted die Datei "/sdcard/debian.img" als ext2-loop. Darum sollte man nicht die SD-Karte abmelden, solange das Debian aktiv ist. Erst mit "/data/local/bin/bootdeb umount" das Debian-Dateisystem aushängen, dann kann man die SD-Karte "dem PC zur Verfügung stellen".
* Ein Root-Passwort ist nicht gesetzt. Evnt. also "passwd" aufrufen, wenn man z.B. den openssh-server installieren und starten will.
* Das Debian startet nicht automatisch mit dem Telefon und das "bootdeb"-Script startet selbst auch keine Debian-Daemonen. Dies kann man aber "zu Fuss" machen, z.B. mit /etc/init.d/ssh start. Solange ein Debian-Daemon läuft kann man natürlich kein "bootdeb umount" machen.
* Das Root-Dateisystem des Mobiltelefons kommt aus der Initrd des Kernels (Ramdisk). Dieses ist normalerweise Read-Only. Das Debian-Programm "dpkg" hat leider eine Macke (Schreibzugriff auf ..//dpkg-tmp), so dass "apt-get install" nur läuft wenn auf die Root-Partition geschrieben werden kann.
Viel Spaß beim basteln wünscht
// Sven-Ola