COLinux
Par jean-philippe gaulier le lundi, août 14 2006, 15:51 - Sysadmin - Lien permanent
Il y a de cela deux ans, j'avais donné un projet de pot de miel à des étudiants de licence professionnelle à l'IUT de Limoges. Le projet n'avait pas été bien loin, faute de travail de leur part, entre autre dû à de grosses lacunes pré-LUP, mais j'avais néanmoins cherché pas mal de ressources à leur filler. J'étais entre autre tombé sur un article dans l'informaticien à propos d'un soft libre se nommant COLinux, qui permet de faire tourner un linux sur windows, sans avoir besoin de bouffer une barette comme le ferait vmware et surtout en utilisant un logiciel libre. Dans mon nouvel environnement de travail, j'ai pu tester cette solution.
Il faut tout d'abord se rendre sur le site web du projet, qui une fois n'est pas coutume est hébergé sur sourceforge. Le projet se nomme COLinux. Le site n'est pas forcément toujours très à jour, cela est dû à la présence du wiki. Sur ce dernier, vous trouverez énormément de documentation, qui pour une fois, ne part presque pas dans tous les sens.
Une fois que vous avez téléchargé et installé colinux et le système adjacent, on vous invite à remplacer/compléter quelques petites lignes dans le fichier de configuration :
Pour ma part, j'ai complété avec :
<block_device index="0" path="\DosDevices\c:\coLinux\Debian-20040605-mit.ext3.1610mb" enabled="true" />
<network index="0" type="tap" name="Colinux TAP" />
Tout heureux de mon travail, j'ai donc lancé la commande suivante pour démarrer l'appli :
colinux-daemon.exe -c default.colinux.xml
Et là, surprise, un magnifique BSOD (blue screen of the death pour les intimes) que je n'avais pas pu contempler depuis de nombreuses années (et pour cause). après quelques lectures sur le net, j'apprends que l'hyperthreading et toutes les nouveautés des processeurs y sont sûrement pour quelque chose. Soit. On peut l'enlever ? Oui. Il suffit d'aller gratter dans le boot.ini et de passer /noexecute à AlwaysOff. Génial, ça règle le problème. Il fallait le savoir.
Pas de soucis, j'arrive enfin à mon prompt. Je me loggue en root/root et commence à regarder pour l'outil indispensable, le réseau. Après plusieurs tentatives, je finis par trouver la solution qui me convient. L'adresse primaire de mon pc va rester en tant que tel et je vais nater l'autre interface via les outils (inconnus) de windows (sous cmd) :
netsh routing ip nat install
netsh routing ip nat add interface "local" full
netsh routing ip nat add interface "Colinux" private
netsh routing ip dnsproxy install
IP normale pour mon interface windows, IP privée pour mon interface TAP, une autre IP privée pour mon interface Linux dans COLinux.
Pour résumer :
- 172.16.0.1/16 pour mon pc
- 192.168.0.1/24 pour mon interface tun
- 192.168.0.2/24 pour mon interface sous linux
Je rajoute l'export pour le proxy :
export http_proxy=http://login:pass@monproxy:port
Si jamais, tout comme moi, vous en avez marre d'avoir le clavier en QWERTY, voilà les quelques lignes qui vont bien :
apt-get install console-data console-tools
Puis on exécute :
dpkg-reconfigure console-data
Et au cas où :
loadkeys fr-latin1
On installe le serveur vnc en vu de pouvoir trouver un clicodrome d'ici peu :
apt-get install tightvncserver
On lance ensuite ce même serveur fraîchement installé :
vncserver :1 -geometry 1024x768 -depth 16
Il ne me reste plus qu'à installer et lancer mon gestionnaire de fenêtre préféré :
apt-get install xfce4
xfce4-sessions &
Le tour est joué. Il ne restera plus qu'à automatiser un peu le démarrage et les variables, mais c'est fonctionnel. Le projet est en version 0.6.4 pour la version stable (en date du premier juillet) et 0.7.1 pour la version de développement. C'est vraiment un beau jouet qui mérite que l'on se penche dessus, ne serait-ce que pour en féliciter l'auteur.
Commentaires
Ahhh, content de voir que tu peux enfin jouer avec Nunux sous Windows ! Te connaissant, tu dois avoir le mal de mer à longueur de journée, mais c'est mieux que rien, non ? Si tu veux te cultiver côté windows, je te suggère fortement la doc de netsh (1), l'un des rares outils windows vraiment bien foutus, et très, très puissant. J'avais envisagé un temps d'automatiser le filtrage des ports TCP 139 et 445 via un script utilisant netsh, et dès l'installation de w2k (pour des postes clients), mais MS m'avait mis des bâtons dans les roues (mais c'est une autre histoire).
Sinon, j'avais essayé CoLinux il y a un bon moment... sur un P4 HT. Et je n'avais pas trop gratté, ça me paraissait trop "bancal" comme solution. Quoi qu'il en soit, j'attends avec impatience le prochain billet "7 nights in bed with colinux"... ;-)
(1) www.microsoft.com/resourc...
À dire vrai, windows sert comme d'habitude à être en conformité avec les gens qui peuvent le moins. Pour être plus précis, au lieu d'être dans un environnement de prod performant, on en reste à utiliser ce que tout le monde "sait" utiliser. J'ai d'ailleurs un doute quant à ce qu'ils savent ;) M'enfin, je comprends leur problème et vu le taf qui m'attends, j'ai pour l'instant d'autres chats à fouetter que de les évangéliser à longueur de journée. Cependant, tu admettras que des gens qui bossent tout au long de la journée sur solaris pourrait faire un effort quant au système qu'ils utilisent ;p Il y a parfois des choses étranges dans ce monde de brute...
Finalement, on en revient à une très vieille problématique : vaut-il mieux un outil puissant, avec un utilisateur en mode poule-qui-a-trouvé-un-couteau, ou bien un utilisateur à l'aise avec un outil pas forcément des plus efficaces ?
Et c'est avec tristesse que j'ai conclu, au terme de plusieurs années d'essais, que la seconde solution était souvent la plus souhaitable (note bien que je n'ai pas dit "la meilleure").