L’installation de multiples systèmes d’exploitation sur PC est possible depuis de nombreuses années. Aujourd’hui, à l’ère des smartphones et autres tablettes, cette pratique commence à peine à se populariser, notamment grâce au noyau alternatif Siyah Kernel (depuis la version 3.1) disponible pour le Samsung Galaxy S2. Malheureusement, la bonne documentation se fait rare, surtout pour les anglophobes… Il est grand temps de s’y mettre !
Sommaire
- Théorie : comment ça marche ?
- Pratique : préparatifs et informations avant installation
- Pratique : installation
- Pratique : désinstallation
- Conclusion
- Errata
Théorie : comment ça marche ?
La gestion des ROM
Sur un appareil mobile sous Android, l’installation de la ROM (distribution Android) est très simple : elle est installée sur le stockage interne du l’appareil, formaté en plusieurs partitions montées à différents points de montage. On citera notamment /cache
, /data
et /system
, bien connus des habitués du mode recovery.
Le dual‐boot avec Siyah Kernel reprend les mêmes bases et s’organise de façon similaire : la ROM principale est installée normalement et la ROM secondaire est installée de façon similaire, mais là où la ROM principale utilisera /data
et /cache
, la ROM secondaire utilisera des images au format .img
à la place (data.img
, cache.img
…).
Quid du « bootloader » ?
Sur un PC ou autre machine de bureau, qui dit dual‐boot dit bootloader (parfois alternatif), n’ayez crainte, ici point de MBR ou autres GRUB, le bootloader de votre appareil ne bougera pas d’un pouce ! En effet, le noyau se chargera de gérer le dual‐boot comme un grand, sans rien demander au bootloader (si ce n’est de le lancer).
Fonctionnement du dual‐boot
Voyons maintenant le fonctionnement général de la chose.
Dans tout ce joyeux bazar, c’est le noyau qui a le beau rôle, celui‐ci se charge de deux choses majeures : la mise en place des ROM, et le démarrage de celles‐ci.
Une fois n’est pas coutume, tous les chemins mènent à la ROM. Siyah Kernel propose de mettre en place la ROM secondaire de plusieurs façons : soit en installant une ROM directement à l’emplacement de la ROM secondaire (via une archive ZIP), soit en clonant la ROM principale vers la secondaire. Quelque soit la méthode choisie le résultat sera d’avoir un dual‐boot fraîchement mis en place, avec la possibilité de changer ou modifier chacune des ROM sans que cela n’ait d’impact sur l’autre. La seule condition étant de veiller à ce que Siyah Kernel soit réinstallé à chaque changement de ROM principale (car celle‐ci installe son propre noyau).
Une fois les ROM mises en place, le démarrage sur l’une ou l’autre se passe de façon tout aussi simple : le bootloader de l’appareil lance le seul noyau qui lui est accessible : le Siyah Kernel de la ROM principale. À ce moment‐là, Siyah Kernel va rechercher la présence, ou non, d’une ROM secondaire, si celle‐ci est présente, il jouera le rôle de pseudo-bootloader et proposera d’amorcer l’une ou l’autre des deux ROM.
Ainsi, donc, seul Siyah Kernel, noyau de la ROM principale est lancé et utilisé, quelque soit la ROM choisie à l’amorçage. Le noyau est donc commun aux deux ROM.
Pratique : préparatifs et informations avant installation
Noyau
Pour la réalisation de ce tutoriel, pas d’alternatives possibles : Siyah Kernel étant le seul (hors dérivés de ce dernier) à proposer un dual‐boot stable et abouti, impossible de l’éviter. Notons tout de même que le noyau de la ROM secondaire importe peu et que ce n’est pas la peine de le changer : comme expliqué dans la partie Théorie, c’est toujours Siyah Kernel, installé sur la ROM principale, qui lance l’une ou l’autre des ROM, le noyau de la ROM secondaire n’est donc jamais lancé ni utilisé.
La dernière version du Siyah Kernel est accessible via le lien en haut de l’article.
N.B. : Il existe des dérivés de Siyah Kernel permettant également le dual‐boot, mais ceux‐ci étant moins populaires, et la manipulation étant la même, cela ne sera pas traité dans cet article.
Version d’Android
La fonctionnalité de dual‐boot de Siyah Kernel ne fonctionne qu’avec des ROM basées sur Android Ice Cream Sandwich 4.0.x et Android Jelly Bean 4.1.x.
ROM conseillées
Ici, le choix est vaste : toutes les ROM Android 4.0.x et 4.1.x sont compatibles avec Siyah Kernel, ainsi l’utilisateur est libre de conserver sa ROM habituelle, pour peu qu’elle rentre dans ces critères. Cependant, même si théoriquement Siyah Kernel est compatible avec toutes les ROM, pensez à vérifier que votre ROM n’est pas un cas particulier éventuellement incompatible.
Les ROM basées sur CyanogenMod, MIUI, AOSP et AOKP sont réputées pour être quasiment irréprochables sur ce point. Un vaste choix de ROM en tout genre est disponible sur les forums XDA.
La ROM utilisée doit évidemment être « rootée ».
Résumé du matériel nécessaire
Voici ce dont vous aurez besoin :
- un Samsung Galaxy S2 équipé d’Android 4.0.x ou 4.1.x rooté ;
- Siyah Kernel en version CWM (sous forme d’archive ZIP, le format
.tar
étant réservé au flashage avec Odin) ; - la ou les ROM à installer (en archives ZIP également).
Ainsi que :
- une batterie relativement chargée (il est aussi possible de brancher l’appareil sur secteur pendant la manipulation) ;
- de la place disponible sur le stockage interne ou la carte SD de l’appareil (~4 Gio) :
- compter 1 Gio pour le stockage des archives ZIP des ROM (effaçable après l’opération),
- 2 Gio pour l’image de
/data
, - 100 Mio pour l’image de
/cache
;
- ne pas oublier de faire une sauvegarde des données et applications stockées sur l’appareil (stockage interne et carte SD y compris, en cas de mauvaise manipulation).
Note : Dans le mode recovery que vous utiliserez au cours de la manipulation, la sélection des options s’effectue avec les boutons volume +
et volume -
, et la validation s’effectue avec le bouton Power
(ou le bouton Home
selon la version du mode recovery).
Tout le monde est prêt ? C’est parti !
Pratique : installation
Préambule
La démarche de la manipulation qui va suivre est commune aux deux appareils et s’applique à toutes les ROM. Cependant, si vous devez respecter certaines étapes pour l’installation de votre ROM faites le normalement, que ce soit une installation en tant que ROM principale ou secondaire.
Le tutoriel est néanmoins adapté de façon à être compatible avec toutes les ROM, vous verrez notamment que les partitions/images /data
et /cache
sont formatées en début de manipulation, ce qui remplace les traditionnels wipe data/factory reset
et wipe cache partition
communs à l’installation de nombreuses ROM.
La manipulation qui va suivre à été testée sur un Samsung Galaxy S2 (modèle GT-I9100) avec les ROM CyanogenMod 9.0 (stable) en ROM principale et Resurrection Remix 3.0.5 en secondaire, et Siyah Kernel 4.1.1.
Installation de Siyah Kernel
Note : Si vous désirez « flasher » Siyah Kernel via Odin (utile si votre appareil n’est pas encore « rooté ») plutôt que par le mode recovery, c’est tout à fait possible, cependant cette méthode ne sera pas traitée ici, car cette dernière comporte plus de risques qu’un « flashage » via le mode recovery.
Avant toute chose, placez tous les fichiers ZIP nécessaires (Siyah Kernel et la ou les ROM à installer) sur le stockage interne de l’appareil ou sur votre carte SD. Ceci étant fait, nous allons procéder à l’installation de Siyah Kernel. Pour ce faire, il vous faudra suivre ces étapes :
- éteignez l’appareil ;
- démarrez l’appareil en mode recovery avec la combinaison de touches :
Volume +
+Home
(bouton central) +Power
, à maintenir jusqu’à l’affichage du menu du mode recovery ; - sélectionnez successivement les options
install zip from sdcard
etchoose zip from sdcard
ou, si vous avez placé le ZIP sur la mémoire interne :choose zip from internal sdcard
, puis sélectionnez le ZIP correspondant à Siyah Kernel, l’installation devrait être rapide ; - revenez ensuite au menu principal du recovery en sélectionnant
+++++Go Back+++++
en bas, puis sélectionnezadvanced
et efinwipe dalvik cache
; - revenez au menu principal du mode recovery, puis redémarrez l’appareil avec
reboot system now
.
Siyah Kernel est maintenant installé sur votre ROM, laissez cette dernière démarrer (cela peut prendre un peu plus de temps que d’habitude) et vous serez paré pour la deuxième étape.
Installation de la ROM secondaire
Maintenant que Siyah Kernel est installé sur votre appareil, il ne reste plus qu’à installer la ROM secondaire et le dual‐boot sera mis en place.
Cette deuxième partie va se diviser en trois parties distinctes. Une première partie décrira le processus préparatoire commun aux deux méthodes d’installation qui seront décrites dans les deux parties suivantes : l’installation directe et le clonage de ROM.
Note : Vous remarquerez que Siyah Kernel est équipé du CWM Touch, qui rend le mode recovery pilotable via l’écran tactile au moyen de la barre d’action située en bas : un bouton de déplacement vers le bas, un vers le haut, un bouton retour et un valider.
Partie 1 : Préparation des images disque
Pour préparer vos images (qui simulent les partitions pour la ROM secondaire), il vous faut évidemment redémarrer en mode recovery, vous savez comment faire. Une fois dans le mode recovery, il vous faudra suivre les étapes suivantes :
- sélectionnez
mounts and storage
; - sélectionnez successivement les options
format /secondrom_cache
,format /secondrom_data
etformat /secondrom_system
(le formatage de/secondrom_data
peut être long).
Vous voici maintenant avec des images fraîchement préparées pour y installer une ROM. Nous allons maintenant voir successivement les deux méthodes d’installation différentes.
Note : Les images servant à l’installation de la ROM secondaire étant stockées sur le stockage interne de l’appareil, veillez à ne pas formater ce dernier, cela effacerait entièrement la ROM secondaire.
Partie 2 : Installation directe
L’installation directe consiste tout simplement à installer la ROM secondaire via le ZIP de ladite ROM. Pour ce faire, suivez ces étapes :
- sélectionnez l’option
dual-boot options
; - sélectionnez ensuite : soit l’option
install zip to 2ndROM from internal SD
, si le ZIP se trouve sur le stockage interne, soitinstall zip to 2ndROM from external SD
, s’il se trouve sur la carte SD, puis sélectionnez le ZIP correspondant à la ROM à installer et patientez jusqu’à la fin de l’installation ; - une fois l’installation terminée, sélectionnez l’option
Wipe 2ndROM dalvik-cache
; - revenez au menu principal du mode recovery, puis redémarrez l’appareil avec
reboot system now
.
Au démarrage, Siyah Kernel vous proposera d’appuyer sur le bouton Home
pour amorcer la ROM secondaire, sans quoi il démarrera automatiquement sur la ROM principale au bout de 3 secondes.
Encore une fois, vous pourrez remarquer que la ROM secondaire met plus de temps que d’habitude à démarrer, ce qui est normal.
Partie 3 : Clonage de ROM
Avertissement : Si vous avez des applications installées sur carte SD et que vous clonez la ROM, ces dernières ne fonctionneront plus et devront être réinstallées.
Lors du clonage de ROM, votre ROM principale sera clonée et installée à l’emplacement de la ROM secondaire (écrasant la précédente, s’il y en a une). Le principe d’installation est le même, des fichiers .img
seront également utilisés, l’intérêt de cette méthode est de « déplacer » la ROM.
En effet, en clonant la ROM principale vers la ROM secondaire, puis en installant une nouvelle ROM à l’emplacement de la principale, vous pourrez ainsi changer de ROM tout en gardant la précédente en secondaire, par exemple.
L’inverse est également possible, vous pouvez cloner la ROM secondaire vers la ROM principale, puis installer une nouvelle ROM à l’emplacement de la secondaire.
Ces options vous laissent un large choix, vous pouvez par exemple installer une ROM stable en ROM principale et une ROM en développement en ROM secondaire. Ainsi, quand la ROM en développement deviendra stable, vous pourrez la basculer en ROM principale, puis installer une nouvelle ROM de développement en ROM secondaire.
Cette partie décrira donc uniquement comment cloner des ROM de façon propre.
Clonage de ROM principale vers ROM secondaire :
- formatez les images
secondrom_cache
,secondrom_data
etsecondrom_system
, comme indiqué dans la partie 1 ; - sélectionnez l’option
dual-boot options
, puisClone 1stROM to 2ndROM
; - sélectionnez l’option
Wipe 2ndROM dalvik-cache
; - revenez au menu principal du mode recovery, puis redémarrez l’appareil avec
reboot system now
.
Clonage de ROM secondaire vers principale :
- sélectionnez
mounts and storage
, puis formatez les partitions/cache
,/data
et/system
; - revenez au menu principal du mode recovery, puis sélectionnez
dual-boot options
etClone 2ndROM to 1stROM
; - revenez ensuite au menu principal du recovery, puis sélectionnez
advanced
, puiswipe dalvik cache
; - revenez au menu principal du mode recovery, puis redémarrez l’appareil avec
reboot system now
.
Comme toujours, le temps de démarrage des ROM après clonage peut être rallongé.
Pratique : désinstallation
Tout comme vous avez voulu mettre en place le dual‐boot, vous voudrez peut‐être le désinstaller un jour. Voici la méthode.
Désinstallation de ROM secondaire
Pour ce faire, rien de plus simple, il vous suffit de redémarrer en mode recovery et de suivre l’une de ces deux méthodes en quelques étapes :
- en formatant les images :
- sélectionnez
mounts and storage
puis formatez les images/secondrom_cache
,/secondrom_date
etsecondrom_system
, - revenez au menu principal du mode recovery, puis redémarrez l’appareil avec
reboot system now
;
- sélectionnez
- ou en utilisant l’option
Remove 2ndROM
:- sélectionnez
dual-boot options
, puisRemove 2ndROM
, - revenez au menu principal du mode recovery, puis redémarrez l’appareil avec
reboot system now
.
- sélectionnez
Ces deux méthodes mènent au même résultat. La seule différence est que la première méthode laissera derrière elle des images vierges mais tout de même existantes, ce qui vous évitera de les recréer si vous remettez en place un dual-boot, tandis que la seconde ne laissera rien, ce qui libérera un peu plus de 2 Gio sur le stockage interne de l’appareil, car les images seront supprimées.
Désinstallation de ROM principale
Si vous désirez supprimer la ROM principale et ne conserver que la ROM secondaire, il suffit de cloner la secondaire vers la principale, puis de supprimer la secondaire en suivant l’une des deux méthodes de la partie précédente.
Conclusion
Vous voici maintenant avec toutes les cartes en mains pour un dual‐boot compris et réussi sur votre Galaxy S2 grâce au Siyah Kernel. Cela vous permettra de profiter encore plus de votre appareil !
Errata
Contrairement à ce qui était indiqué dans l’article (maintenant corrigé), le dual‐boot n’est pas possible sur le Samsung Galaxy S3. En effet, Siyah Kernel ne propose pas encore cette fonctionnalité. Je présente donc toutes mes excuses aux personnes ayant été induites en erreur (notamment micka33720, dont le commentaire m’a permis de me rendre compte de mon erreur). En outre, un article sera rédigé dès que cette fonctionnalité sera disponible.
Aller plus loin
- Siyah Kernel (1082 clics)
- Siyah kernel sur XDA Forums (719 clics)
# Peut-on dual-booté avec tout ?
Posté par Argon . Évalué à 5.
Apparamment il est dit dans l'article que le kernel de la deuxième ROM est "ignoré" et que c'est le Siyah Kernel qui reste en place dans le téléphone. Donc ma question est simple : est-ce que l'on peut booter autres choses qu'un Android en deuxième ROM ? Pour éventuellement tester Meego, Firefox OS, etc…
de même que nous profitons des avantages que nous apportent les inventions d'autres, nous devrions être heureux d'avoir l'opportunité de servir les autres au moyen de nos propres inventions ;et nous devrions faire cela gratuitement et avec générosité
[^] # Re: Peut-on dual-booté avec tout ?
Posté par Sudiukil . Évalué à 2.
Non, car Siyah Kernel n'est compatible qu'avec Android.
[^] # Re: Peut-on dual-booté avec tout ?
Posté par eMerzh (site web personnel) . Évalué à 2.
En regardant le 1er liens sur XDA, il est indiqué que :
Donc B2G serait supporté … bonne nouvelle
[^] # Re: Peut-on dual-booté avec tout ?
Posté par Sudiukil . Évalué à 2.
En effet, désolé, mea-culpa entre B2G et Firefox OS… je pense y jeter un œil dans ce cas (si c'est concluant j'écrirai un article sur l'installation de B2G avec une partie dual-boot).
# ce n'est pas du dual boot
Posté par bilboa . Évalué à 6.
ca sera du dual boot "comme sur pc" quand on pourra charger un noyau different. c'est même pas si dur que ca, sans accès au boot loader, on peut utiliser kexec.
[^] # Re: ce n'est pas du dual boot
Posté par erdnaxeli (site web personnel) . Évalué à 2.
Oui. Là finalement on a juste un chroot.
Il existe deux catégories de gens : ceux qui divisent les gens en deux catégories et les autres.
[^] # Re: ce n'est pas du dual boot
Posté par Sudiukil . Évalué à 2.
Oui ici, comme expliqué dans l'article le noyau est chargé et selon le choix au boot soit les partitions "normales" sont montée, soit ce sont les images, ce qui revient à un seul noyau avec deux userspaces différents.
[^] # Re: ce n'est pas du dual boot
Posté par mazarini . Évalué à 1. Dernière modification le 03 septembre 2012 à 13:43.
Ce n'est pas un système de chroot qui permet déjà d'utiliser une distribution linux avec Android ?
Il me semble avoir vu une app "Ubuntu" sur le market de Google.
[^] # Re: ce n'est pas du dual boot
Posté par Sudiukil . Évalué à 2.
Pour l'app Ubuntu je ne sais pas, mais il existe l'app Linux Installer qui permet d'installer Debian via un simple chroot.
# ne fonctionne pas
Posté par micka33720 . Évalué à 1.
je ne comprends pas. j'ai essayé avec plusieurs roms et avec plusieurs versions de siyah mais rien à faire. quand je vais dans "mounts and storage" il n' y a pas de "secondrom_cache" etc…et encore moins l'option "dual boot".
J'ai loupé quelque chose?
[^] # Re: ne fonctionne pas
Posté par Sudiukil . Évalué à 1.
S2 ou S3 ? Version exacte de Siyah ? ROM testées ?
[^] # Re: ne fonctionne pas
Posté par micka33720 . Évalué à 1.
Je suis sous S3 et j'ai testé avec les roms cyanogen,omega,dragons…(ICS et JB)
pour la version siyah j'ai testé la S3-v1.5.2 et la S3-v1.4
mais apres avoir fouiner toute la journée, il semblerait que cela ne fonctionne que sous S2. ou alors c'est moi qui loupe quelque chose.
[^] # Re: ne fonctionne pas
Posté par tuxicoman (site web personnel) . Évalué à 1.
Arf, j'ai lu tout l'article la bave aux lèvres pour rien !
[^] # Re: ne fonctionne pas
Posté par Sudiukil . Évalué à 1.
Encore un fois, toutes mes excuses pur cette énorme bourde. Mais promis, dès que c'est disponible (je surveille) je poste ça.
[^] # Re: ne fonctionne pas
Posté par micka33720 . Évalué à 0.
Bonjour, je reviens vers vous pour vous informer que le dual-boot est enfin disponible pour nos GS3 depuis la sortie de SiyahKernel S3-v1.7.1. attention : uniquement pour les versions JB. @+
# Dispo pour le S3
Posté par v3ry . Évalué à 1.
Bonjour à vous,je me suis retrouvé ici en cherchant des infos sur le dual boot s3 qui vient d’être release :
http://forum.xda-developers.com/showthread.php?t=1709686&page=800
Les options du recovery touch sont différent et pas toute les fonctions sont implanter, comme installer un zip sur la 2eme rom mais avec un backup,instal de la rom secondaire sur la principale et switch sur le secondaire puis réstorer primaire et c'est bon.
J’espère ne pas vous avoir perdu sur ma dernière phrase.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.