Voir le sujet précédent :: Voir le sujet suivant |
Auteur |
Message |
angenoir66 Utilisateur néophyte
Inscrit le: 08 Juin 2009 Messages: 8
|
#1 Posté le: 25/06/2009 08:40 Sujet du message: [Tuto] Debian sur magic |
|
|
Bonjour à tous,
Voici un petit tutoriel pour utiliser debian sur HTC Magic. Il est plus que grandement inspiré de la manipulation de saurik pour le G1 disponible à l'url suivante:
http://www.saurik.com/id/10
Vive Saurik! Vive Haykuro! Et Vive Christophe de SPF!
Première étape : Créer l'image debian
(NB: Les commentaires commencent par ##, ne les tapez donc pas en console...)
Code: |
## créer le répertoire de travail dans votre home directory
mkdir ~/debianMagic && cd ~/debianMagic
## installer debootstrap
apt-get install debootstrap
## Créer le fichier qui hébergera la partition debian
## Ici il fera 750Mo, perso j'en ai fais un de 1Go.
## Jouez avec le paramètre seek afin de lui faire prendre la taille qui vous convient
dd if=/dev/zero of=debian.img seek=749999999 bs=1 count=1
## Faire un système de fichier ext2 dans la partition
mke2fs -F ./debian.img
## Mounter la partition
mkdir ./debianMnt && sudo mount -o loop ./debian.img ./debianMnt
## Utiliser debbootstrap afin de creer une architecture debian de base
debootstrap --verbose --arch armel --foreign lenny debian http://ftp.de.debian.org/debian
## Démonter la partition
umount ./debian
|
Creez le fichier ~/debian/debian.sh en y collant le contenu suivant:
Code: |
#!/system/bin/sh
if [[ -d /data/local/mntmp/bin ]]
then echo "fs debian deja mounté"
else
echo "mount du fs de debian"
LOOP=`losetup -f`
losetup $LOOP /sdcard/debian/debian.img
mount -t ext2 $LOOP /data/local/mntmp/
fi
export PATH=$PATH:/bin:/usr/bin:/usr/sbin:/data/local/bin
export TERM=linux
export HOME=/root
## ajout pour X11
export USER=root
chroot /data/local/mntmp /bin/bash
|
Puis envoyons ce fichier sur notre android et modifions les droits d'exécution dans la foulée:
Code: |
adb shell mkdir /data/local/bin
adb push ~/debian/debian.sh /data/local/bin/debian.sh
adb shell chmod 755 /data/local/bin/debian.sh
|
Ensuite, il va nous falloir enregistrer l'image créée sur notre android. Soit en mountant la sd, soit par "adb push", soit en utilisant un lecteur de carte µsd... Libre à vous.
Pour la suite de ce tutoriel je vais prendre en compte que vous avez enregistré l'image dans un dossier debian à la racine de la carte. Ce qui correspond donc à /sdcard/debian/debian.img une fois la carte remonté sous android.
Pour les utilisateurs de la rom SPF de Christophe, pas de soucis le driver ext2 est en dur dans le noyau. Pour les autres... Bon courage, je n'ai pas personnellement pas réussi à le cross-compiler.
Les commandes suivantes se déroulent sous "adb shell" en mode interactif. Lancez "abd shell" sans arguments.
Commençons par exporter quelques variables d'environnement utiles pour la suite des manips.
Code: |
export PATH=$PATH:/bin:/usr/bin:/usr/sbin:/data/local/bin
export TERM=linux
export HOME=/root
|
Créer le point de montage:
Code: | mkdir /data/local/mntmp/ |
Mounter l'image en loopback:
Code: |
LOOP=`losetup -f`
losetup $LOOP /sdcard/debian/debian.img
mount -t ext2 $LOOP /data/local/mntmp/
|
Puis se chrooter dedans:
Code: | chroot /data/local/mntmp/ /bin/bash |
Il faut ensuite finaliser l'installation de debian, depuis le chroot.
Code: | /debootstrap/debootstrap --second-stage |
Cela va mouliner un moment, le temps de prendre un café
Une fois cette etape terminée, nous allons compléter les sources de debian:
Code: | echo 'deb http://ftp.de.debian.org/debian lenny main'>/etc/apt/sources.list |
Ensuite montez quelques partitions systèmes nécessaires au bon fonctionnement de debian:
Code: |
mount -t devpts devpts /dev/pts
mount -t proc proc /proc
mount -t sysfs sysfs /sys
|
ET VOILA! Votre debian est d'ore et déjà fonctionnelle.
Je vous conseille cependant de modifier quelques fichiers afin de la rendre bien plus pratique.
/root/.bashrc
Code: |
export PS1='\h:\w\$ '
umask 022
export PATH=/sbin:/system/sbin:/system/bin:/system/xbin:/system/xbin/bb:/bin:/usr/bin:/usr/sbin
export TERM=linux
export HOME=/root
## ajout pour X11
export USER=root
PS1='\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]$ '
##autocompletion
if [ -f /etc/bash_completion ]; then
. /etc/bash_completion
fi
##nettoyage de l'historique
export HISTCONTROL=ignoredups
export HISTCONTROL=ignoreboth
##maj de la taille du shell
shopt -s checkwinsize
|
/etc/fstab
Code: |
mount -t devpts devpts /dev/pts
mount -t proc proc /proc
mount -t sysfs sysfs /sys
|
Vous pouvez aussi installer ssh, afin de vous logguer depuis votre ordi simplement, et avoir un shell qui ne part pas en sucette des qu'on utilise les touches directionnelles.
Code: |
## mise en place d'un mot de passe pour root
passwd
## installation de ssh
/usr/bin/apt-get update
/usr/bin/apt-get install ssh
/etc/init.d/ssh restart
|
Si comme moi, le lieu où vous êtes filtre les connections ssh sortantes mais que vous voulez malgré tout bidouiller, vous pouvez rediriger un port de votre machine vers androidvia adb
Code: | adb forward tcp:10001 tcp:22 |
Il vous suffiraensuite de faire
Code: | ssh root@localhost -p 10001 |
Vous pouvez même créer un tunnelssh, afin de faire du thetering sans aucune application.
Vous n'êtes plus désormais freiné que par votre imagination ^^
Vous pourrez lancer facilement votre debian en lançant le script
Code: | /data/local/bin/debian.sh |
NB: La page de Saurik ( http://www.saurik.com/id/10 ) propose d'autres manipulations sympathiques, comme par exemple utiliser les commandes debian depuis le shell android via unionfs, personnellement je préfère éviter afin de laisser les données séparées en cas de hack)
pour avoir un serveur x:
sur l'android
Code: |
apt-get install tightvncserver lxde
export USER=root
vncserver -geometry 480x320
|
dur la machine cliente:
Code: |
./adb forward tcp:10002 tcp:5900
./adb forward tcp:10003 tcp:5901
|
Il suffit ensuite de lancer le client vnc en lui donnant l'adresse 127.0.0.1 et le port 10002
Dernière édition par angenoir66 le 25/06/2009 09:53; édité 1 fois |
|
Revenir en haut de page |
|
|
brabinder Utilisateur avancé
Inscrit le: 10 Mai 2009 Messages: 136 Localisation: Orleans
|
#2 Posté le: 25/06/2009 08:55 Sujet du message: |
|
|
Geek ?? +1
Joli tuto |
|
Revenir en haut de page |
|
|
luo Visiteur en Or
Inscrit le: 25 Mai 2009 Messages: 2201
|
|
Revenir en haut de page |
|
|
zaraki Visiteur en Or
Inscrit le: 09 Juin 2009 Messages: 2549 Localisation: Autour de Paris :D
|
#4 Posté le: 25/06/2009 11:14 Sujet du message: |
|
|
trop bon , merci |
|
Revenir en haut de page |
|
|
vilraleur Utilisateur fidèle
Inscrit le: 29 Mai 2009 Messages: 963 Localisation: Bordeaux
|
#5 Posté le: 25/06/2009 11:39 Sujet du message: |
|
|
question bête ...
On peut téléphonner avec au moins ? |
|
Revenir en haut de page |
|
|
brabinder Utilisateur avancé
Inscrit le: 10 Mai 2009 Messages: 136 Localisation: Orleans
|
#6 Posté le: 25/06/2009 11:44 Sujet du message: |
|
|
Je pense pas. Peut etre avec skype |
|
Revenir en haut de page |
|
|
angenoir66 Utilisateur néophyte
Inscrit le: 08 Juin 2009 Messages: 8
|
#7 Posté le: 25/06/2009 18:41 Sujet du message: |
|
|
Merci à tous pour vos commentaires sympas
Alors oui on peux téléphoner, debian est uniquement chrooté, donc il se lance en surcouche d'android si on veut. Toutes les fonctions d'android sont toujours existantes (le téléphone entre autre).
Par contre si vous lancer un serveur X, il consomme beaucoup de ressources, du coup le temps que le téléphone se mette à sonner... vous risquez de louper vos appels.
Mais si vous vous contentez de vous chrooter dans debian pour lancer le serveur ssh, ou votre client mail en console, votre agrégateur de flux en console, votre client d'im en console, etc etc etc
Ça ne consommera quasiment rien Et toutes les autres fonctions seront aussi réactives qu'à l'ordinaire.
Et vous pouvez toujours tester swapper (petit utilitaire pour les users roots qui permet de créer et allouer un fichier de swap super facilement sur la µsd, en raccourcissant potentiellement sa durée de vie à cause des ecritures multiples, ok... Mais c'est beau la réactivité accrue que cela procure à un android bien chargé) |
|
Revenir en haut de page |
|
|
zaraki Visiteur en Or
Inscrit le: 09 Juin 2009 Messages: 2549 Localisation: Autour de Paris :D
|
#8 Posté le: 26/06/2009 00:43 Sujet du message: Re: |
|
|
angenoir66 a écrit: |
Et vous pouvez toujours tester swapper (petit utilitaire pour les users roots qui permet de créer et allouer un fichier de swap super facilement sur la µsd, en raccourcissant potentiellement sa durée de vie à cause des ecritures multiples, ok... Mais c'est beau la réactivité accrue que cela procure à un android bien chargé) |
euh encore merci
tuer ma carte sd plus vite pour un gain de ressources assez important , ca vos le coup , une carte µsd ne coute plus tres cher ... |
|
Revenir en haut de page |
|
|
brabinder Utilisateur avancé
Inscrit le: 10 Mai 2009 Messages: 136 Localisation: Orleans
|
#9 Posté le: 26/06/2009 11:06 Sujet du message: |
|
|
A propos de swapper, si vous comptez l'utiliser, il faut arreter le swap avant de monter la sd car sinon des que vous démonterez la sd, vous aurez un message "sd corrompue voulez vous formatez ?".
Et obligation de reboot pour que tout rentre dans l'ordre _________________ abus de F5 |
|
Revenir en haut de page |
|
|
szizman Utilisateur néophyte
Inscrit le: 26 Nov 2009 Messages: 4
|
#10 Posté le: 01/12/2009 02:21 Sujet du message: |
|
|
ya t'il eu de la nouveauté sur le sujet, je serai intéressé de faire la même.
Si certain peuvent livrer leur expérience d'install ça serai cool et vu que les poste remontent à un certain temps, il y a peut être eu une évolution supplémentaire.
merci |
|
Revenir en haut de page |
|
|
|