Je chercher à lancer deux distributions en même temps (juste pour le fun) il existe la virtualisation avec Xen ou encore Qemu mais je me demandais s'il n'était pas possible de passer par autre chose à l'aide de kexec et chroot...
J'ai ma distribution hôte et un point de montage vers l'autre distribution je fais un
chroot /mnt/ma_distrib /bin/mon_shell
pour me retrouver à la racine de mon autre distrib...Maintenant, il ne me reste plus qu'à monter les partitions /proc et /sys...
Cependant, et c'est là que ça ce complique, il faut aussi lancer le kernel de la distrib (je n'ai pas essayé mais je pense que c'est là qu'interviendra kexec) puis peupler le /dev et ensuite lancer les script d'initialisation de la distrib et le tour est jouer :-)
En clair suis-je dans le vrai ?
Sinon à part passer par la virtualisation, y a t'il un moyen de lancer deux (ou plusieurs) distributions en même temps ?
Si quelqu'un a déjà essayé et qu'il a réussit ça serait super qu'il puisse me décrire sa méthode ;-)
# tu y es presque ... à coté
Posté par NeoX . Évalué à 4.
s'il suffisait d'un simple chroot, on ne s'embeterait pas avec des QEMU, XEN et autres outils de virtualisations/emulations ...
[^] # Re: tu y es presque ... à coté
Posté par alf . Évalué à 1.
Le site du projet: http://user-mode-linux.sourceforge.net/
Un tuto pour Debian que je viens de trouver: http://www.debian-administration.org/articles/48
[^] # Re: tu y es presque ... à coté
Posté par NeoX . Évalué à 2.
tu fais un disque virtuel
et tu utilise ensuite ce disque comme support de ta machine
donc c'est peut-etre "user-mode" il n'en reste pas moins que c'est de la virtualisation et pas un bete chroot.
[^] # Re: tu y es presque ... à coté
Posté par alf . Évalué à 1.
Je suis tout à fait d'accord avec toi, la seule méthode pour faire ce qu'il veut, c'est la virtualisation. Je notais juste qu'en dehors de Xen et Qemu, qui sont des technologies de virtualisation "génériques" (peut-on dire "portables" dans cette situation ?), il existait aussi une techno "pure Linux" comme UML qui faisait ce qu'il veut (faire tourner un Linux au-desus d'un Linux).
D'ailleurs, même si le problème (fondamental) de l'accès concurrent aux ressources par les 2 (ou n) noyaux ne se posait pas, et UML mis et part, il resterait que le noyau Linux est fait pour tourner directement au-dessus du matériel, pas en tant que processus au-dessus d'un autre noyau (ou même en thread supplémentaire d'un noyau existant).
D'où les différentes solutions qui existent déjà:
- patcher Linux pour qu'il tourne comme un processus utilisateur au-dessus de Linux (UML);
- créer une plate-forme intermédiaire sur laquelle on pourrait faire fonctionner parallèlement plusieurs noyaux adaptés à cette nouvelle plate-forme (Xen);
- émuler une architecture matérielle en mode utilisateur sur laquelle un noyau non patché peut tourner (Qemu, et plein d'autres).
Il est possible que d'autres solutions existent (quoiqu'à première vue je ne vois pas d'autres méthodes que les 3 que j'ai citées), mais je suis d'accord que chroot/kexec ne semble pas pouvoir y arriver.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.