En lisant cet article, vous allez suivre lesétapes qui m'ont permis, grâce à plusieurs projets open source, d'installer 2machines dont une virtuelle dans une machine physique.
Le but principal de cette installation estde faire fonctionner simultanément un environnement graphique Windows et unenvironnement graphique linux avec leur applications de travail classique(bureautique, internet). Et sous certaines conditions, elle peut même permettrele fonctionnement simultané de 3 ordinateurs (un pseudo linux, un vrai linux etun vrai Windows).
Quels peuvent être les intérêts d'une telleconfiguration ?
Ils sont multiples :
- Curieux : vous pourrez disposez d'uneinterface graphique (kde) et de tout un environnement de travail (bureautique,navigation internet, courriel, environnement de développement) pour vousinitier au monde de linux.
- Webmasters, web designers, web développeurs,etc... : Vous disposerez simultanément de plusieurs systèmes d'exploitationpour tester vos créations dans leur environnements graphique et leursnavigateurs respectifs.
- Développeurs réseau/systèmes : vousdisposez simultanément de plusieurs machines/noyaux que vous pourrez faireinteragir par programmation.
Il y en a sûrement d'autres que voustrouverez vous même. Et tout cela sans passer par des couches logiciellescommerciales (type émulateur d'OS) et ralentissant les traitements. Comme tousles outils utilisés dans ce guide sont de type open source, on peut aussis'attendre à des économies en investissement logiciels.
Il sagit dune installation coopérative etnon pas multiboot. Vous naurez besoin de démarrer la machine quune seule foispour faire fonctionner les deux systèmes dexploitation simultanément.
Note : cet article est une versionécourtée dun article que je nai pas encore publié, comprenant plus dedétails, des captures décran et des astuces, comme installer un cdrom,redimensionner une partition colinux, ou installer des applications connuescomme firefox, open office avec les dictionnaires français.
1. Installation de Cygwin
Une fois le matériel préparé, l'installation de Cygwin esttrès simple. Cette étape est un cliquodrome (une opération pousse bouton sivous préférez
).
1) Se rendre à l'adresse racine du projet Cygwin :http://www.cygwin.com/
2) Localiser, dans la page principale, le lien vers lefichier setup.exe pour le télécharger.
3) Enregistrer le fichier setup.exe dans le dossier qui luia été réservé.
4) Une fois téléchargé, lancer l'exécution du programmesetup.exe.
5) Ce programme d'auto installation va vous permettre devous connecter sur plusieurs serveurs du projet Cygwin. Choisissez en un, depréférence, le plus proche de chez vous.
6) Lorsque la fenêtre de choix des librairies apparaît,appliquez la maxime "Tout". Prenez et installer tout. Letéléchargement de cette partie est probablement le plus long. Mais une fois quevous aurez tout téléchargez, vous n'aurez pas besoin de le refaire.L'installateur de Cygwin (setup.exe) peut s'exécuter depuis un répertoire pré chargéautant de fois que vous aurez besoin. Il se peut que l'installateur demande deslibrairies qui ne soient pas sur le serveur où vous vous êtes connecté.Relancez l'installateur en vous connectant à dautres serveurs du projet pourtélécharger les librairies manquantes.
7) Une fois le téléchargement complet du projet terminé,l'installateur poursuit par l'installation du projet Cygwin.
8) il vous propose finalement de créer deux raccourcis.Choisissez au moins celui sur le bureau.
A partir de maintenant, vous disposez d'un environnement enligne de commande qui ressemble fortement à unix. Si vous cliquer sur l'icône Cygwindéposé sur le bureau par l'installateur, vous allez voir une fenêtre de typeécran de console s'ouvrir sur le bureau. Vous êtes en ligne avec un interpréteurde commandes disposant d'un langage de commande très puissant, le bash (BourneAgain SHell). Vous disposez également de plusieurs autres interpréteurs decommandes avec des langages encore plus riches (tcsh) ou respectant certainesnormes (l'équivalent de sh est ash pour Cygwin)
Mais vous disposer également :
- d'une interface de commandes semi graphique : mc (midnightcommander) pour naviguer plus facilement dans les répertoires et manipuler lesfichiers.
- de plusieurs éditeurs de texte de la famille Unix : vi (etsa version améliorée vim) et emacs. Mais il y en a d'autres, comme nano, ed,joe, nedit...
- d'un éditeur scientifique : teX
- de trois navigateurs internet en mode texte : lynx, linkset w3m
- d'un environnement de développement complet aveccompilateur (gcc), assembleur (as, nasm), éditeur de liens (ld) et testeur(gdb, ddd).
Vous pouvez d'ores et déjà programmer en FORTRAN, Pascal,ADA, C, Objective C, Objective Caml, C++, ruby, Prolog, lisp, Perl, Python etJava.
- de nombreuses librairies pour le développement sous unix(gtk, ncurses, Qt, gnome, opengl, openssl, openldap...), des librairies pourmanipuler de nombreux formats d'images (JPG, PNG, TIFF...)
- de plusieurs centaines d'outils pour compresser, crypter,archiver, manipuler vos fichiers (la commande info vous en donne un aperçu),administrer votre machine et sa configuration,
- d'un système de gestion de base de données : postgreSQL
- des outils mathématiques (teXemacs, gnuplot, bc)
- des outils réseaux (client irc, console AIM, ICQ, outilsde diagnostic...)
- De plusieurs serveurs : un serveur http apache (apachectlstart pour le lancer), un serveur ftp, un serveur ssl et d'autre encore.
Et plein d'autres outils encore.
URL : http://www.colinux.org
Maintenant que cygwin est installé, passons à la secondeétape. Linstallation dun vrai noyau linux qui va fonctionner en simultanéeavec le noyau windows.
Le système colinux nest pas un émulateur, mais un portagedu noyau linux lui permettant de fonctionner coopérativement avec un autresystème dexploitation sur une même machine. Les performances du noyau linuxsont beaucoup plus rapides par rapport à lémulation cygwin. Pour ceux que celaintéresse, colinux permet au noyau linux de fonctionner en mode ring 0 sur lesprocesseurs de la gamme x86.
Il faut dabord installer le programme principal :Cooperative linux ou colinux pour les intimes.
Pour cette installation, jai utilisé la version 0.6.2, quinest pas la dernière (0.6.3) car elle bloquait. Nayant pas voulu chercherpourquoi, jai utilisé une version opérationnelle pour ma configuration.
Linstallation de colinux nécessite le téléchargement deplusieurs fichiers :
1) Le programme colinux 0.6.2 lui-même : http://prdownloads.sourceforge.net/colinux/coLinux-0.6.2.exe?download
2) La librairie winpcap : http://winpcap.mirror.ethereal.com/install/bin/WinPcap_3_1_beta4.exe
3) Le rootfilesystem : http://armadillo.atmark-techno.com/download/colinux/root_fs.lzh
4) Le home filesystem : http://armadillo.atmark-techno.com/download/colinux/home_fs_2G.lzh
5) Le fichier déchange (swap): http://armadillo.atmark-techno.com/download/colinux/swap_device_512M.lzh
Une fois ces opérations terminées :
1) Installer colinux à laide de son installateur(e:\colinux, pour cette installation). Lors de linstallation ne cochez pas« télécharger WinPcap », ni « télécharger "the Debianimage to download" », puisque vous venez de le faire.
2) Décompresser les trois fichiers systèmes dans lerépertoire dinstallation de colinux (e:\colinux, pour cette installation)
La configuration de colinux se passe en deux étapes :
1) configuration du réseau
2) Configuration du système colinux
Par défaut, le système colinux utilise un fichier deconfiguration xml : default.colinux.xml.
Le choix du mode réseau utilisé par colinux détermineégalement comment rédiger ce fichier.
Il existe deux méthodes pour faire fonctionner colinux avecwindows
1) La méthode par interface réseau virtuelle (TAP driver)
2) La méthode par interface réseau windows (bridging)
Pour utiliser cette méthode, il faut avoir choisidinstaller le TAP driver lors de linstallation de colinux.
Une fois installé vous pouvez vérifiez la présence dupilote, en consultant les « connexions réseau »(Démarrez->connexions réseau->Afficher toutes les connexions)
Il faut ensuite créer un pont de connexion entre votreconnexion locale et ladaptateur colinux.
- Si vous avez une connexion Ethernet (par câble).Choisissez de faire le pont entre « connexion locale » etladaptateur colinux.
- Si vous avez une connexion Wifi (par ondes radios).Choisissez de faire le pont entre « connexion sans fil » etladaptateur colinux. (Mon cas pour cette installation)
Enfin il faudra ajouter la ligne suivante dans le fichierxml :
<networkindex="0" type="tap" />
Cette méthode nécessite linstallation de la librairiewinpcap.
Il suffit ensuite de modifier la ligne de connexion réseaudu fichier xml par :
<network index="0" type="bridged"name="Connexion réseau sans fil"/>
« Connexion réseau sans fil » étant le nom completde votre connexion locale. Remplacez par « connexion locale », sivous utiliser une connexion par câble (par le nom que vous voyez dans votrefenêtre de connexion réseau. Je lai renommé « connexion locale »parce que cétait plus court.
Il faut éditer ce fichier avec votre éditeur favori etmodifier quelques lignes pour prendre en compte les fichiers du filesystem.
Voici la version finale pour cette configuration :
<?xmlversion="1.0" encoding="UTF-8"?>
<colinux>
<block_device index="0"path="\DosDevices\e:\coLinux\root_fs" enabled="true" />
<block_device index="1"path="\DosDevices\e:\coLinux\swap_device" enabled="true"/>
<block_device index="2"path="\DosDevices\e:\coLinux\home_fs" enabled="true" />
<bootparams>root=/dev/cobd0</bootparams>
<image path="vmlinux" />
<memory size="128" />
<network index="0"type="tap" />
</colinux>
Il suffit de créer, dans le répertoire de colinux, unfichier de commandes par lots (batch, appelez le go.bat) avec la commandesuivante :
colinux-daemon.exe -c default.colinux.xml -t nt
Enregistrez ce fichier et double cliquez dessus. Une consoleva souvrir et lancer linux. A linvite (login), tapez le nom de luniqueutilisateur, pour linstant, le fameux maître des lieux, le tant redouté« root ». Le fichier initial root_fs contient une configuration quine comporte pas de mot de passe pour le super utilisateur. Il suffira donc detaper :
root [entrée]
Pour vous identifier.
Pour quitter colinux, il faut taper lune des commandessuivantes :
halt
poweroff
reboot -n
shutdown rnow
Le langage shell de linux cest comme la langue française,il existe une multitude de synonymes pour dire la même chose. A chacun son goûtet sa couleur. Attention ces commandes ne peuvent être exécutées que par lesuper utilisateur (root).
Premier réflexe, sécuriser le compte du super utilisateur.Taper la commande suivante :
passwd
Si le compte possédait déjà un mot de passe, la commandevous invitera à taper lancien mot de passe. Ensuite, il vous sera demander detaper deux fois le nouveau mot de passe suivi de [entrée]
Second réflexe, ne pas utiliser le compte du superutilisateur sauf pour les modifications importantes (type installationlogiciels) nécessitant des droits non accordés aux utilisateurs normaux. Parconséquent, il faut créer un compte utilisateur appartenant à un groupe nonprivilégié. Par défaut, lors de la création dun utilisateur, celui-ci estconsidéré comme normal (sans droits privilégiés) si aucune option nestspécifiée et un groupe du même nom sera créé. Tapez la commande suivante.
adduser votre_pseudo
Il vous sera demandé de taper deux fois son mot de passe etquelques infos (pour la base whois).
La console colinux est par défaut configurée en QWERTY. Pourplus daisance, la reconfiguration se fait avec la commande suivante :
dpkg-reconfigure console-data
Il suffit ensuite de suivre les instructions :
Selectkeymap from arch list -> azerty -> French -> With Euro (latin 15)
Il faut éditer trois fichiers :
- /etc/network/interfaces
- /etc/hosts
- /etc/resolv.conf
Pour le fichier /etc/network/interfaces :
# Configuration de la boucle
auto lo eth0
iface loinet loopback
#Configuration de linterface eth0
iface eth0inet static
address192.168.0.40
gateway 192.168.0.1
netmask 255.255.255.0
A savoir :
Ladresse IP 192.168.0.40 est celle que jai choisie pourcolinux
Ladresse IP 192.168.0.1 est celle de ma passerelle internet(le routeur)
Pour le fichier /etc/hosts :
127.0.0.1 localhost
192.168.0.40 colinux
La seule ligne à modifier est la seconde (si elle nexistepas). Il sagit encore de ladresse IP de colinux.
Pour le fichier /etc/resolv.conf :
search
nameserver 192.168.0.1
Ici, jai laissé la configuration se charger de trouver lesserveurs DNS depuis la passerelle internet (le routeur).
Pour finaliser linstallation, il faut redémarrer colinux
reboot -n
La fenêtre de la console colinux va se fermer. Il suffira dedouble cliquer à nouveau sur le fichier de démarrage (go.bat), pour relancercolinux.
Pour tester votre connexion internet, vous pouvez lancerquelques ping sur vos sites préférés.
ping www.monsite.com
Si la commande répond correctement, alors le réseau estcorrectement configuré.
Linstallation de kde va se faire par internet sous colinux,avec la commande apt-get.
apt-getupdate
apt-getinstall kdebase kdepim
apt-getinstall kde-i18n-fr
Répondez oui à toutes les questions que vous posera lacommande.
Une fois les paquets installés, il faut créer un script delancement pour le serveur X (serveur daffichage) de cygwin, auquel kde seconnectera pour safficher.
cygserver&
exportSERVER=cygwin
exportDISPLAY=<adresse IP de votre machine windows> :0.0
xwin clipboardrootless noreset &
xhost +
Ladresse IP de votre machine windows, se trouve dans lepont de connexion, il sagit dune adresse locale et non celle attribuée parvotre fournisseur daccès. Elle commence généralement par 192.168.0.x. Pour latrouver, deux solutions :
1) lancer la commande ipconfig depuis une console cmd ou uneconsole cygwin
2) Démarrage->Connexions->Afficher toutes lesconnexions->Pont réseau->Statut->Prise en charge.
Enregistrez ce script, appelons xgo, dans un répertoire decygwin, par exemple, /home/votre_pseudo/
Rendez le exécutable, en tapant la commande suivante depuisla console cygwin :
chmod u+x xgo
Et lancer le, toujours depuis cygwin :
./xgo ou xgo
Si tout va bien, une icône X apparaît dans la barre destâches. Le serveur X est en attente de clients et de requêtes.
Il faut a présent créer un second script, sous linuxcelui-là pour connecter le serveur X et lancer kde. Appelons le kde.
export DISPLAY=<adresse IP de votre machinewindows> :0.0
startkde &
Faites les même opérations denregistrement, demodifications des droits (chmod), puis lancer le depuis linux :
kde ou ./kde selon votre configuration
Toujours dans le répertoire /home/<Votre pseudo> decygwin, créer un fichier xend contenant les commandes suivantes :
kill -9`pidof cygserver` `pidof xwin`
Puis rendez le executable
chmod u+x xend
Ce script doit être lancé en fin de session pour terminerles composants cygwin.
Note :
a) Toutes ces opérations sont réalisées sous colinux.
b) Cette installation de samba nest pas sécurisée pour enfaciliter la procédure.
Dans létat de linstallation, lintégration est minimalemais déjà existante, grâce à loption clipboard du serveur xwin. Elle permetlutilisation du presse-papier pour échanger des informations entre les deuxsystèmes. Cependant, si besoin est déchanger de gros fichier, le presse-papiersera hors jeu. Doù linstallation et la configuration du serveur samba, pourpermettre léchange de gros volume de données.
1) Télécharger et installer samba
apt-get install samba
# éventuellement
apt-get install smbfs
2) Editer le fichier de configuration de samba
# Version débutants
nano /etc/samba/smb.conf
# Version confirmés
vi /etc/samba/smb.conf
3) Trouver la ligne suivante dans le fichier :
; security = user
Enlever le point virgule pour la décommenter et la changerpar
security = share
Cela dit à samba de partager vos fichiers sans avoir besoinde sidentifier. Cest ici que réside une faille de sécurité. Mais il sagitdune installation personnelle.
4) Trouver la ligne suivante dans le fichier
invalid users = root
La commenter en plaçant un point virgule devant :
; invalid users = root
5) Création dun partage
A la fin du fichier de configuration vous allez trouver lesrépertoires partageables. Ici, je donne un exemple pour partager le répertoire/usr/src. Il faut rajouter ces lignes :
[usr_src]
path =/usr/src
public = yes
writable = yes
browsable = yes
create mode = 0777
directory mode = 0777
guest ok = yes
6) Sauvegardez votre fichier et quitter léditeur
7) Rendez le répertoire partageable lisible et inscriptible
chmod 777 /usr
chmod 777 /usr/src
8) En allant dans la session windows, faites affichez les« favoris réseau », puis demander de « voir les ordinateurs dugroupe de travail ». Vous verrez apparaître lordinateur colinux. Encliquant dessus vous entrerez dans le répertoire /usr/src. Vous pouvezdésormais faire glisser des fichiers vers ou depuis ce répertoire ; sambase chargera de la transformation du fichier NTFS en ext3 ou inversement.
Le gros avantage de cette installation, cest bien sûr queles deux noyaux fonctionnent simultanément. Un simple clic permet de passerdun système à lautre. Plus besoin de multiboot
Il existe aussi les Services For Unix ou sfu 3.5. Mais cepaquetage propriétaire de Microsoft n'est plus maintenu. Il ne fonctionne pasavec XP/SP2. Maximum XP/SP1. Il est très difficile à désinstaller en cas decrash (problème de fichiers difficilement effaçables même après désinstallationet plusieurs redémarrages). Et n'avait qu'une politique : faciliter lamigration de unix vers windows (et non l'inverse). Il sagit plus dunecuriosité que dune utilité.
Vous trouverez beaucoup dinformation sur colinux dans lewiki :
http://wiki.colinux.org/mediawiki/index.php/Main_Page