samedi 5 novembre 2011

Installation et configuration réseau d'une machine virtuelle chez online.net (Dedibox)

Vous avez installé ESXi sur votre dedibox et vous voulez créer une nouvelle machine virtuelle ?

Il vous faudra une adresse IP pour votre nouvelle vm autrement dit une IP fail over. Vous la commandez depuis votre interface online.net et vous lui attribuez une adresse mac de type vmware (commençant par : 00:50:56)

Vous notez l'adresse mac exacte et vous revenez sur votre client vSphere pour créer la vm et lui assigner l'adresse mac que online vous a donné.

Le début de l'installation est relativement simple, en effet, la seule chose à garder à l'esprit est de monter l'image ISO de la distribution Linux de votre choix qui se trouve sur le datastore de votre serveur ESXi et brancher (connecter) le cdrom au démarrage de la vm depuis votre client vSphere.

Pendant l'installation les choses se compliquent car vous aurez besoin du réseau pour joindre les miroirs de APT.

Avant toutes manipulations, assurez-vous via votre client vSphere que l'adaptateur réseau de la vm est bien connecté.

Ensuite, lorsque le debian-installer (j'ai choisis Debian) vous propose de configurer le réseau, vous devez :

  • Renseigner uniquement l'adresse ip (l'ip fail over que vous venez d'acheter sur le site online)
  • Renseigner le masque (255.255.255.255) 
  • Ne rien mettre dans le champ passerelle et donc ne pas toucher à la configuration des routes pour le moment car elles sera effacée lorsqu'on arrive à l'étape de téléchargement des paquets.
  • Renseigner le server DNS : 8.8.8.8
Maintenant,

- il faudra suivre les étapes de l'installation (partitionnement du disque, ajout des utilisateurs, etc)

- À l'étape choix du miroir pour télécharger les paquets, il faudra choisir un miroir et là il va gueuler par ce que le réseau n'est pas configuré.

- il suffira de faire un alt+F2, taper les 2 commandes route suivantes, ensuite alt+F1 pour revenir à l'écran d'installation. (alt+F4 affiche la sortie du fichier /var/log/syslog)

route add -host GATEWAYDEDIBOX dev eth0
route add default gateway GATEWAYDEDIBOX
GATEWAYDEDIBOX est l'adresse de votre serveur ESXi avec .1 à la fin. càd : pour l'adresse ip 88.190.X.Y, votre gateway sera 88.190.X.1
Si cela ne fonctionne pas vérifiez que c'est le 88.190.X de l'adresse ip du serveur ESXi que vous utilisez comme gateway et non pas le 88.190.X de l'ip fail over que vous venez d'acheter.

Voilà, continuez l'installation et n'oubliez pas d'ajouter les routes dans le /etc/rc.local

Le DNS proposé par online.net est 88.190.254.14 
Votre adresse de broadcast n'est rien d'autre que votre adresse ip.

Sources:

mardi 1 novembre 2011

Parcourir rapidement les sources du framework Android

Un jour ou l'autre vous aurez besoin de plonger dans le code sources du framework Android. C'est ce que j'ai eu à faire pour debugguer un problème d'envoi de sms à plus de 3000 caractères.

J'avais besoin de voir le code de la classe SmsDispatcher. La solution décrite sur le site officiel ou ici est de cloner les sources avec Git, ensuite faire un zip du répertoire /frameworks/base/core/java et mettre le zip dans le dossier Android ou vous avez au préalable installé le SDK.

$ repo init -u https://android.googlesource.com/platform/manifest
$ repo init -u https://android.googlesource.com/platform/manifest -b android-2.3.7_r1

et il faudra installer repo auparavant. Cela téléchargera 5.5G de code source et prendra donc un bon moment (2Mb/s pas moins de 20minutes) avant de vous donner la main.

Par ailleurs, si vous tentez de parcourir la webview du repository, vous n'irez pas très loin :

Un moyen plus simple de voir les sources si on ne veut pas attendre tout ce temps c'est d'utiliser Google codesearch

 Il suffit de cliquer sur Android ensuite frameworks -> base -> et là vous pouvez parcourir les classes du framework. Attacher les sources à Eclipse :

Un autre site: grepcode.com propose aussi de parcourir le code source et fait mieux en proposant de télécharger le code sources du Framework sour forme d'un jar qu'on pourra utiliser pour voir les sources sous Eclipse. il suffit de créer un dossier sources dans le dossier ou on a téléchargé le sdk et d'y mettre le jar.

$ cd ~/android/android-sdk-linux/platforms/android-8/
$ mkdir sources $ cp ~/Téléchargement/android-2.2.1_r1-sources.jar sources/

Enfin, dans Eclispe : cliquez sur votre -> android.jar -> bouton droit -> properties -> cliquez sur external files et indiquez les sources :


Quelques ressources :