Postanowiłem korzystając z artykułu Fnordi z niemieckiej strony Android Forum & Community - Android-Hilfe.de wyjaśnić po Polsku jak sobie postawić linuksa który więcej może na motoroli milestone. U siebie zrobiłem i wszystko ładnie działa:
Potrzebujemy:
- Android 2.0.1 / 2.1
- root na fonie ( Rootowanie Motoroli Milestone (2.0, 2.0.1, 2.1) | SmartMobile.pl )
- busybox (debian.zip)
- ConnectBot lub inny Terminal Emulator
- jakis root explorer na fona. Ja mam Astro
- VNC client na fona np android-vnc-viewer
- Ubuntu GNU/Linux na swoim kompie
- ext2.ko (debian.zip)
- Scripts (debian.zip)
Instalujemy paczki na naszym ubuntu za pomocą apt-get:
$ sudo apt-get install qemu-arm-static debootstrap
Następnie tworzymy obraz pliku naszego przyszłego linuksa. Ja to robiłem na pulpicie żeby było widać:
$ cd Pulpit
$ sudo dd if=/dev/zero of=debian.img bs=1024 count=3500000
$ sudo mkfs.ext2 -F debian.img
$ sudo tune2fs -c0 debian.img
Następnie tworzymy katalog debian i montujemy w nim naszego debiana z utworzonego wcześniej obrazu pliku:
$ mkdir debian
$ sudo mount -o loop debian.img debian/
Następnie insatlujemy system i tworzymy katalog jak poniżej:
$ sudo build-arm-chroot --verbose --arch=armel --foreign lenny debian http://ftp.de.debian.org/debian]Index of /debian
$ sudo mkdir debian/sdcard
No i tam jeszcze montujemy jakieś głupoty i uruchamiamy na naszym kompie w konsoli stworzonego przez nas debiana. Poznać to po tym że pojawia się w konsoli #. Jest to znak, że jesteśmy w debianie już i jesteśmy rootem. Trochę łopatologicznie wyjaśnione.:mrgreen:
$ sudo mount -t proc none debian/proc/
$ sudo mount -t sysfs sysfs debian/sys/
$ sudo mount -t devpts devpts debian/dev/pts
$ sudo chroot debian/ /bin/bash
# export HOME=/root
# export LC_ALL=C
Następnie dodajemy wpis do pliku source.list i apdejtujemy nasz debian a wszystko to robimy na naszym kompie. Niewiarygodne a jednak prawdziwe. Nie martwcie się, że sobie namieszacie w swoim ubuntu bo jesteście w debianie. Zresztą ubuntu to też debian. No ale nieważne.
# echo 'deb http://ftp.de.debian.org/debian lenny main contrib non-free' > /etc/apt/sources.list
# apt-get update
Następnie instalujemy server naszego środowiska graficznego. Ja nie potrzebuje no ale też zainstalowałem żeby zobaczyć:
# apt-get install lxde tightvncserver
I następnie czyścimy wszystko i odmontowujemy i mamy przygotowany już nasz obraz do przeniesienia go na milestone:
# apt-get clean
# killall /usr/bin/qemu-arm-static
# exit
$ sudo umount debian/proc
$ sudo umount debian/dev/pts
$ sudo umount debian/sys
$ sudo umount debian/
Teraz już będziemy dotykać tylko naszego fona
Tworzymy na naszej karcie pamięci w fonie katalog debian. Można go stworzyć np exploatorem astro. Kopiujemy nasz plik debian.img z kompa do fona za pomocą kabel usb. No i jeszcze kopiujemy plik który załączyłem debian.zip również do fona do katalogu debian za pomocą również może być kabel i tam rozpakowujemy. Następnie kopiujemy i nadajemy uprawnienia plikom jak poniżej za pomocą konsola np connect bot którą można nabyć w android market:
Oczywiście nie muszę przypominać, że fon musi mieć roota.
# mount -o remount,rw -t yaffs2 /dev/block/mtdblock6 /system
# cp /sdcard/debian/busybox /system/bin/
# chmod 755 /system/bin/busybox
# cp /sdcard/debian/ext2.ko /system/lib/modules/
# chmod 644 /system/lib/modules/ext2.ko
# cp /sdcard/debian/startdeb /system/bin/
# chmod 755 /system/bin/startdeb
# cp /sdcard/debian/stopdeb /system/bin/
# chmod 755 /system/bin/stopdeb
Następnie tworzymy katalogi:
# mkdir /data/local/debian
# mkdir /data/local/debian/mnt
No i uruchamiamy naszego debiana na fonie:
$ su
# startdeb
No i już jesteśmy w debianie na fonie i dalej wykonujemy co poniżej. Kto się zna to wie o co chodzi a kto nie to sobie wykonuje i kiedyś się dowie.
# echo 'nameserver 4.2.2.2' > /etc/resolv.conf
# echo "localhost" > /etc/hostname
# echo "127.0.0.1 localhost.localdomain localhost" > /etc/hosts
# export HOME=/root
# export USER=root
# vncserver -geometry 854x480
Teraz będzie trudne.:cwaniak:
Edytujemy w edytorze nano plik xstartup
# nano -w /root/.vnc/xstartup
No i wsawiamy taki krzyżyk przed linijke poniżej a oznacza to że nie będzie ona brana pod uwagę i tylko będzie sobie była wię można ją też wykasować
#/etc/X11/Xsession
I dopisujemy jeszcze taką linijkę do tego pliku i można zapisać i zamknąć nano co nie jest takie proste :cii:
lxsession
No i otwieramy jeszcze w nano jeden plik i wstawiamy tekst poniżej i zapisujemy:
# nano -w /usr/sbin/lxde
#!bin/bash
export USER=root
vncserver -geometry 854x480
Nadajemy uprawnienia temu plikowi:
# chmod +x /usr/sbin/lxde
No i jeszcze jeden plik w nano:
# nano -w /usr/sbin/klxde
Zmieniamy zawartość na:
#!/bin/bash
killall Xtightvnc && killall lxsession
No i nadajemy uprawnienia:
# chmod +x /usr/sbin/klxde
Uffff no i koniec i teraz podsumujmy.
Aby włączyć debiana przechodzimy w konsoli w fonie do karty sd i katalogu debian i tam wpisujemy co już zrobiliśmy wcześniej:
# startdeb
Aby wyłączyć:
# exit
# stopdeb
Jeżeli chcemy środowisko graficzne to po włączeniu debiana wpisujemy:
# lxde
A żeby wyłączyć :
# klxde
Jednak samo włączenie nie pokaże nam w cudowny sposób tego środowiska tylko musimy się połączyć z jego serwerem dopiero wtedy. Robimy to przez klienta vnc wpisując odpowiednie dane:
adres: localhost
port: 5901
password: wcześniej jaki podaliśmy w konfiguracji
Miłej zabawy linux zondzi za pomocą motorola milestone:facepalm:
---------- Post dołączono o 13:07 ---------- Poprzedni post napisano o 12:43 ----------
Zapomniałem wstawić plik debian.zip Sorki
http://www.android-hilfe.de/attachments/anleitungen-fuer-motorola-milestone/7860d1273427636-how-debian-chroot-mit-lxde-auf-dem-milestone-debian.zip