1. Nimm jetzt an unserem Uhans - 3. ADVENT - Gewinnspiel teil - Alle Informationen findest Du hier!

Debian auf Milestone

Dieses Thema im Forum "Root / Hacking / Modding für Motorola Milestone" wurde erstellt von morgon, 16.02.2010.

  1. morgon, 16.02.2010 #1
    morgon

    morgon Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    143
    Erhaltene Danke:
    15
    Registriert seit:
    24.11.2009
    Debian fully working on the Motorola Droid! Included is an ext2.ko module for those of us running stock kernels that lack ext2fs support. (I will provide support in comments.) : Android

    beschreibt die Installation von Debian auf dem Droid.

    Hat das schon jemand auf dem Milestone (der ja mit dem Droid ziemlich identisch ist oder) erfolgreicht probiert?

    Wäre ein wichtiges Argument für mich da ich im Moment eher zum N900 tendiere...
     
  2. Lowbyte, 16.02.2010 #2
    Lowbyte

    Lowbyte Android-Lexikon

    Beiträge:
    998
    Erhaltene Danke:
    488
    Registriert seit:
    20.03.2009
    Impossible!
    Nur das Droid in den USA kann unsignierte Images laden!
    Unser Milestone in EMEA lädt nur signierte Images - da keiner den signierungskey kennt NO WAY AT THE MOMENT!:eek:
     
  3. Jarny, 16.02.2010 #3
    Jarny

    Jarny Android-Experte

    Beiträge:
    520
    Erhaltene Danke:
    38
    Registriert seit:
    01.06.2009
    Wir aufgrund des vernagelten Bootloaders vom Milestone leider nicht möglich sein. Bedanken kannst du dich bei Motorola der als einziger Hersteller den Bootloader von nem Androidphone signiert hat. Leider!
    Gruß
    Jarny

    *edit* Lowbyte war schneller
     
  4. morgon, 16.02.2010 #4
    morgon

    morgon Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    143
    Erhaltene Danke:
    15
    Registriert seit:
    24.11.2009
    Danke für die schnelle Antwort!

    Dann wird's wohl kein Milestone ...
     
  5. xperit, 16.02.2010 #5
    xperit

    xperit Neuer Benutzer

    Beiträge:
    4
    Erhaltene Danke:
    0
    Registriert seit:
    16.02.2010
    So ist das nicht ganz richtig!

    Also auf dem Droid wird das Debian auch nicht wirklich installiert. Es wird nur eine chroot-Umgebung eingerichtet. Und das geht genau so mit dem Milestone. Was man dafür braucht ist halt ein passendes ext2.ko Modul, aber das gibt es hier im Forum ja zum Glück schon, siehe post von Newton im APP2SD Beitrag. Und busybox damit man in diese Installation chrooten kann. Dann kann man das genau so wie dort beschrieben machen. Ich hab Debian mit vncserver am laufen und es funktioniert recht gut.

    xperit
     
  6. Milp, 16.02.2010 #6
    Milp

    Milp Android-Hilfe.de Mitglied

    Beiträge:
    135
    Erhaltene Danke:
    1
    Registriert seit:
    17.08.2009
    Würde x11 damit auch funktionieren?
     
  7. morgon, 16.02.2010 #7
    morgon

    morgon Threadstarter Android-Hilfe.de Mitglied

    Beiträge:
    143
    Erhaltene Danke:
    15
    Registriert seit:
    24.11.2009
    Cool! :D

    Funktioniert die Installation genauso wie auf dem Droid oder gibt es Milestone-spezifische Unterschiede?
     
  8. xperit, 16.02.2010 #8
    xperit

    xperit Neuer Benutzer

    Beiträge:
    4
    Erhaltene Danke:
    0
    Registriert seit:
    16.02.2010
    X11 läuft nicht direkt, aber über den Umweg eines vncservers und der app androidvnc kann man auf X zugreifen, ich hab mich da für iceWM als windowmanager entschieden. Leider hat man so dann keine Graphikbeschleunigung oder sowas. Das hat aber auch den Vorteil, dass das Android System nicht beeinflusst wird und so das Telefon noch normal funktioniert.

    Ich hab einige Anleitungen gemixed, aber im Prinzip sollte das mit der Anleitung funktionieren, das ext2.ko muss man halt vorher noch laden und für das loop-device musste ich mit mknod /dev/loop0 anlegen. Ging aber alles recht problemlos.

    Xperit
     
  9. k1l, 16.02.2010 #9
    k1l

    k1l Android-Lexikon

    Beiträge:
    1,317
    Erhaltene Danke:
    404
    Registriert seit:
    20.12.2009
    Tablet:
    HP Touchpad
    magst du das mal bitte genauer beschreiben, was du genau gemacht hast? und wie es jetzt funktioniert/aussieht?
     
  10. Milp, 17.02.2010 #10
    Milp

    Milp Android-Hilfe.de Mitglied

    Beiträge:
    135
    Erhaltene Danke:
    1
    Registriert seit:
    17.08.2009
    Ich hab die anleitung nicht ganz durchgelesen, aber versetzt einen dieses kernel module in die lage loop devices zu erstellen (was ja normal nicht möglich ist)?

    Ich dachte das laden von kernel modulen wäre nicht möglich, wegen bootloader und so? Wenn das jetzt möglich ist, könnten wir doch auch ein modul für swap support haben und endlich swap to sd zum laufen bekommen, oder?

    Sorry, wenn das ein wenig off topic geht.
     
  11. 7Voo, 08.05.2010 #11
    7Voo

    7Voo Gast

    Hey, der link mit der Anelitung ist down.
    Sie ist aber noch im cache von google: Droid Does Debian! [Archive] - Alldroid

    Hab jetzt alles soweit parat, bevor ich da iwas in meinem Milestone mache, wollt ich gern nochmal wissen wohin mit der ext2.ko ?
     
  12. AnGeLo^, 08.05.2010 #12
    AnGeLo^

    AnGeLo^ Android-Hilfe.de Mitglied

    Beiträge:
    141
    Erhaltene Danke:
    25
    Registriert seit:
    08.12.2009
    Normaleweise kommen die .ko Dateien nach /system/lib/modules. ;)
     
  13. 7Voo, 08.05.2010 #13
    7Voo

    7Voo Gast

    Mh, nu komm ich nicht weiter.. sobald ich debiandroid.sh ausführe, kommt:

    • debiandroid.sh liegt unter /data/local/debian/ mit chmod 775.
    • Busybox hab ich mit LMF installiert und ist unter /data/ zu finden.
    • Die ext2.ko liegt unter /system/lib/modules/ mit chmod 664.
    • Die debian.img liegt unter /sdcard/debian.

    Alles wie in der Anleitung beschrieben.

    @xperit: Du hast es schon zum laufen bekommen auf dem Milestone ?
    Könntes du mir erklären wie genau, und welche Firmware etc.
    ---------------------------------------------------------------------------------------------------------

    Edit: mknod << den Befhel kennt adb nicht. Wie soll ich den ausführen ?
    Edit 2: Ok gibts doch, lässt sich aber nur per adbr ausführen.. bei mir kommt aber:

    Edit 3:
    In der Anleitung ist iwie was durch ein ander.
    Man muss die .img datei in /sdcard/debian/ in debian2.img bennen und nicht debian.img.
    Unter /data/local/ muss man einen Ordner "mnt" erstellen.
    In dem nochmal die Ordner "proc", "sys", "sdcard", und "dev"; in diesem (dev) noch einen mit dem Namen "pts".

    Bin jetzt soweit gekommen, dass es nur noch 2 Fehlermeldungen gibt:

    Edit 4:

    Man muss als nächstes in /data/local/debian/mnt/ einen ordner "bin" und in diesem einen "bash" erstellen.
    Als nächstes den script erneut ausführen (debiandroid.sh).. bei mir kommt dann leider:

    Hab dem mnt Ordner schon chmod 777 gesetzt, klappt aber nicht. :/
     
    Zuletzt von einem Moderator bearbeitet: 08.05.2010
  14. xperit, 08.05.2010 #14
    xperit

    xperit Neuer Benutzer

    Beiträge:
    4
    Erhaltene Danke:
    0
    Registriert seit:
    16.02.2010
    Hallo, also ich hab das ja nicht nach der Anleitung gemacht.

    Also du hast das image erstellt? Das wird ja in zwei schritten gemacht, also erst mit debootstrap auf nem linux pc, und den 2. Step auf dem handy.

    Ich hab es bei mir so gemacht, dass die ext2.ko in /data/local liegt.

    Hast Du die busybox installiert?
    Dann kannst du ja als root das Modul mit

    insmod /data/local/ext2.ko

    Dann kannst du mit lsmod überprüfen ob, ob das modul wirklich geladen ist.



    Nun erstellt man sich ne loop device file mit:

    mknod /dev/loop0 b 7 0

    Dann mountest man das image:
    mount -o loop /sdcard/debian/debian.img /data/local/debian

    ( ich benutze partition auf der sd, die mounte ich mit "mount -o noatime /dev/block/mmcblk0p2 /data/local/debian")

    Dann brauchst man noch ne paar sachen in die chroot:
    mount -o bind /dev /data/local/debian/dev
    mount -o bind /sys /data/local/debian/sys
    mount -o bind /proc /data/local/debian/proc
    mount -t devpts devpts /data/local/debian/dev/pts

    Dann ne paar variablen setzen:
    export PATH=$PATH:/bin:/sbin:/usr/bin:/usr/sbin
    export HOME=/root
    export USER=root
    export TERM=linux

    Dann kann man nun nach debian chrooten:

    chroot /data/local/debian /bin/bash

    Hier musst du dann den zweiten schritt vom debootstrap durchführen.

    Das kannst Du dann für später alles in ein skript packen, aber erst ist manuell besser, dann sieht man auch eher wo es hängt.

    Xperit.
     
  15. 7Voo, 08.05.2010 #15
    7Voo

    7Voo Gast

    Vielen Dank für die Aneltung!

    Ich habe busybox unter /data mit chmod 777 installiert.
    ext2.ko hatte ich vorher unter /system/lib/modules/, jetzt unter /data/locale/. Mit insmod hab ich es dann eingebunden mit Erfolg.


    Nur leider komme ich hier nicht weiter:

    Woran kanns liegen ? :/
     
    Zuletzt von einem Moderator bearbeitet: 08.05.2010
  16. Hdr32, 09.05.2010 #16
    Hdr32

    Hdr32 Junior Mitglied

    Beiträge:
    34
    Erhaltene Danke:
    0
    Registriert seit:
    07.05.2010
    @7Voo wie du gemerkt hast in meinem thread hatte ich auch das eine oder andere problem...

    ich glaube meine architektur ist der die du zuerst hattest recht ähnlich... liegt wohl daran, dass du ähnliche tutorials gelesen hast wie ich oder ähnliche tips bekommen hast ;)

    ich habe ein wenig rumgefummelt und mit folgendem erfolg gehabt (jedenfalls was debian angeht):

    Code:
    mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system
    insmod /system/lib/modules/ext2.ko
    
    --------
    
    mkdir /dev/loop0
    mkdir /data/local/mnt
    
    --------
    
    mknod /dev/loop0 b 7 0
    mount -o loop,noatime /sdcard/debian/debian.img /data/local/mnt
    losetup /dev/loop0 sdcard/debian/debian.img
    mount -t devpts devpts /data/local/mnt/dev/pts
    mount -t proc proc /data/local/mnt/proc
    mount -t sysfs sysfs /data/local/mnt/sys
    export PATH=$PATH:/bin:/sbin:/usr/bin:/usr/sbin
    export HOME=/root
    export USER=root
    export TERM=linux
    chroot /data/local/mnt /bin/bash
    die mkdir geschichte habe ich ein wenig abgegrenzt, weil das nur einmal nötig ist (denn wenn ein ordner da ist... dann ist er da... :p) und das ganz oben ist mein initial command im terminal. die debian.img liegt in /sdcard/debian.
     
  17. 7Voo, 09.05.2010 #17
    7Voo

    7Voo Gast

    Also wenn ich adb recovery starte muss ich erstmal /data und /system mounten, damit die Befehle überhaupt gehen.

    Dann komm ich hier wieder nicht weiter:

    Hab die ext2.ko in /data/local/, denke das macht kein Unterschied ?
     
  18. Hdr32, 09.05.2010 #18
    Hdr32

    Hdr32 Junior Mitglied

    Beiträge:
    34
    Erhaltene Danke:
    0
    Registriert seit:
    07.05.2010
    naja... wenn die ext2.ko in /data/local ist, dann ist es natürlich nicht

    Code:
    insmod /system/lib/modules/ext2.ko
    sondern

    Code:
    insmod /data/local/ext2.ko
    aber für mich funktioniert das in /system/lib/modules/ am besten... habe aber auch noch nichts anderes versucht...
     
  19. 7Voo, 09.05.2010 #19
    7Voo

    7Voo Gast

    Ja das: insmod /data/local/ext2.ko, was schon klar, aber funkt trotzdem nicht.

    Ich hab grad nochmal von vorne angefangen mit der debian.img und werds mit der ext2.ko in system/lib/modules probieren.

    Könntest du mir mal sagen woher du die ext2.ko genommen hast ?
    Hab sie aus dem Apps2SD Thread, aber bin mir nicht sicher ob ich die richtige erwischt hab.
     
  20. Hdr32, 09.05.2010 #20
    Hdr32

    Hdr32 Junior Mitglied

    Beiträge:
    34
    Erhaltene Danke:
    0
    Registriert seit:
    07.05.2010
    Hier ist meine ext2.ko her

    ... ist sicherlich die selbe die du hast...

    meine debian.img habe ich mir aber nicht selbst gemacht... da war ich ein wenig faul...

    die ist von hier und da sind auch noch einige andere dateien dabei, aber da ich ja auf meinem ms ein paar probleme mit scripts habe, habe ich das per hand versucht... und am ende steht bei mir wie es soll "localhost #"

    ich habe an der stelle auch noch das eine oder andere problem, aber das ist erstmal nicht so wichtig...
     

Diese Seite empfehlen