Introduction
Dans ce tutoriel, nous allons voir comment installer un environnement LAMP (Linux Apache MySQL PHP) sous Windows « sans virtualisation » avec WSL (Windows Subsystem for Linux).
WSL permet de faire fonctionner Linux sous Windows comme un programme, ce qui évite l’installation d’un système de virtualisation.
Depuis le sous système Linux, il est possible d’accéder aux fichiers, ce qui est pratique pour le partage de document.
Au moment de la rédaction de ce tutoriel l’inverse n’est pas vrai, l’accès depuis Windows au sous système Linux n’est disponible qu’en lecture depuis l’explorateur Windows.
La réalisation de ce tutoriel nécessite Windows 10 Fall Creators Update et versions ultérieures.
Installation de Linux sous Windows
Avant d’installer Linux, il est nécessaire d’activer la fonctionnalité sous Windows. Ouvrir une invite de commande PowerShell en administrateur et entrer la commande suivante :
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
Patienter pendant l’installation …
L’installation terminée, fermer l’invite de commande PowerShell et lancer le Store Windows.
Rechercher Ubuntu et cliquer sur dessus 1 pour accéder au détail de l’application.
D’autres distributions sont disponible sur le store dont Debian, Suse et Kali.
Cliquer sur le bouton Installer 1 disponible sur la page de l’application.
Patienter pendant le téléchargement …
L’installation terminée, lancer Ubuntu soit en cliquant sur Lancer sur la page de l’application ou en recherchant Ubuntu dans menu démarrer.
Patienter pendant l’installer du système …
Configurer le compte utilisateur.
L’installation est terminée.
Utilisation de WSL
Pour accéder à la distribution plusieurs solutions sont possibles :
- Lancer directement le programme depuis le menu démarrer.
- Depuis une invite de commande PowerShell entrer :
wsl
Les environnements Linux disponible avec WSL ne disposent pas d’interface graphique et WLS n’est à la base pas prévu pour ce type d’environnement. Il est toujours possible d’installer un server x pour avoir une interface graphique.
Les distributions étant installées en tant qu’application pour lancer les programmes installés dans le système WSL, il est d’abord nécessaire d’ouvrir l’application Linux sur Windows.
Depuis Linux, les disques Windows sont disponible en lecture / écriture et sont montés dans /mnt.
Il est possible d’accéder au fichier Linux depuis l’explorateur en lecture en à l’emplacement suivant : \\wsl$\distrib
Exemple : mise à jour d’Ubuntu
Entrer la commande suivante pour mettre à jour les dépôts :
sudo apt update
Patienter pendant la mise à jour …
Entrer la commande suivante pour mettre à jour les paquets : *
sudo apt upgrade
Confirmer l’installation de l’installation.
Patienter pendant la mise à jour …
Environnement LAMP
Préparation
Avant d’installer le serveur LAMP, nous allons préparer notre environnement pour héberger les fichiers du site sur le système Windows.
Créer un dossier à l’emplacement de votre choix et copier par exemple un fichier html et une page php.
Installation des paquets
Entrer la commande suivante :
sudo apt install apache2 php libapache2-mod-php mysql-server php-mysql
Confirmer l’installation des paquets.
Patienter pendant l’installation…
L’installation est terminée.
Configuration
Pour fonctionner correctement, il est nécessaire d’apporter quelques réglages.
Pour utiliser le dossier créé sur le système Windows, il est nécessaire de modifier le dossier par défaut par un lien symbolique.
Déplacer le dossier par défaut d’Apache.
sudo mv /var/www var/www-bak
Création du lien symbolique
sudo ln -s /mnt/e/LAMP /var/www
Dans le fichier de configuration /etc/apache2/apache2.conf ajouter à la fin :
AcceptFilter http none
Dans le fichier /etc/apache2/sites-available/000-default.conf
Rechercher :
DocumentRoot /var/www/html
Remplacer par :
DocumentRoot /var/www
Ajouter avant </virtualhost> :
Options Indexes FollowSymlinks
AllowOverride All
Require all granted
Redémarrer le service Apache2 :
sudo /etc/init.d/apache2 restart
Utilisation
Ouvrir un navigateur Internet et accéder au page soit par l’adresse IP du poste Windows ou avec l’adresse 127.0.0.1
Sur la capture de la page phpinfo(), on voit que le système Linux est exécuté sur Windows.
Conclusion
WSL est un outil intéressant qui permet d’exécuter Linux en toute transparence sans avoir besoin de passer par un système de virtualisation.