Serveur LAMP · 6 min read · Oct 25, 2025

Ayez votre propre serveur LAMP Debian (chrooté) tout en utilisant le bureau Ubuntu parfait

Ayez votre propre serveur LAMP Debian (chrooté) tout en utilisant le bureau Ubuntu parfait

Ceci est une brève description des étapes à suivre pour configurer un serveur Web basé sur Debian (Debian Sarge alias Debian 3.1) qui fonctionnera chrooté sous Ubuntu 7.04.

J’ai suivi l’excellent guide de Falko sur la configuration du bureau parfait Ubuntu 7.04 :

https://www.howtoforge.com/the_perfect_desktop_ubuntu7.04

Cependant, pour rendre le bureau parfait pour moi, je dois ajouter une ou deux choses. Tout d’abord, je vais ajouter AVG car je pourrais transférer des fichiers et des données vers d’autres PC et je veux m’assurer que je ne transmets pas de virus. Pour ce faire, je vais suivre un autre des excellents guides de Falko :

https://www.howtoforge.com/avg_antivirus_ubuntu_feisty

Ensuite, je dois installer un serveur Web qui ressemble à celui de mon FAI afin que je puisse tester avant de les télécharger à leur emplacement final. Je ne fais pas fonctionner mon propre serveur Web car je me connecte à Internet via ADSL, cela peut aller jusqu’à 8M en téléchargement, mais je n’ai que 256K en upload, ce qui est ce que les visiteurs de mes sites obtiendront et cela dépendra du trafic à mon échange local.

Je veux que mes pages Web bénéficient pleinement de la bande passante disponible pour la connexion T1 de mon FAI, donc je garde mes pages Web hébergées à distance.

Cela ne signifie pas que je ne peux pas tout tester minutieusement avant qu’il n’y aille et donc j’ai besoin que mon serveur LAMP inclue :

  • Apache 1.3.33 (Debian GNU/Linux)
  • PHP/4.3.10-19
  • mysql 4.0.24.
  • phpmyadmin

Ces anciennes versions d’Apache, PHP et mysql ne sont plus disponibles pour installation sous Ubuntu et ne peuvent être installées que sur Debian Sarge, donc au lieu de faire fonctionner cela comme ma plateforme de base, je vais l’installer comme un système minimal au-dessus de mon bureau Ubuntu et exécuter les programmes Debian via chroot.

Si vous faites cela aussi et que vous avez déjà installé apache ou mysql, alors vous devrez vous assurer qu’ils ne fonctionnent pas pendant que vous installez ou exécutez votre apache/mysql sarge. Cela est dû au fait que l’apache et le mysql sarge échoueront à se lier à leurs ports d’écoute respectifs si les versions ubuntu les écoutent déjà.

Tout d’abord, nous devons installer debootstrap car nous allons l’utiliser pour créer le système minimal. Ensuite, nous pouvons télécharger et installer Debian Sarge.

Ouvrez une fenêtre de terminal :

sudo bash  
apt-get install debootstrap  
mkdir sarge-dir

Maintenant, vous devriez trouver votre miroir debian le plus proche et l’utiliser pour télécharger et installer le système debian. Allez sur http://www.debian.org/mirror/list/ et trouvez l’adresse du miroir approprié, puis :

debootstrap sarge sarge-dir http://ftp.uk.debian.org/debian

J’utilise le miroir du Royaume-Uni, mais vous pouvez changer la partie uk selon vos besoins. Après quelques minutes, le téléchargement et l’installation devraient être terminés, vous devez :

mount -o bind /proc sarge-dir/proc

Cela rendra le système de fichiers proc disponible dans chroot. Le système de fichiers pseudo Proc est un système de fichiers en temps réel, résidant en mémoire, qui suit les processus en cours d’exécution sur votre machine et l’état de votre système.

Et à partir de maintenant, utiliser le nouveau système est aussi simple que de taper :

chroot sarge-dir

Cette commande vous place dans chroot et vous pouvez modifier des fichiers à l’intérieur du nouveau système sarge installé.

À ce stade, si vous le souhaitez, vous pourriez suivre un autre des excellents guides howto de Falko :

https://www.howtoforge.com/perfect_setup_debian_sarge

Il suffit de commencer le tutoriel après la section réseau. Bien que quelques travaux supplémentaires soient nécessaires pour installer correctement le serveur de messagerie, car dans ce tutoriel, il est installé au démarrage, mais cela est à quelqu’un d’autre de fournir les détails.

Je ne vais pas faire cela car j’ai besoin d’une version différente d’apache et je n’ai pas besoin de toute l’autre configuration. Donc, je vais éditer le sources.list et mettre à jour le système de fichiers.

echo deb http://ftp.uk.debian.org/debian/ sarge main > /etc/apt/sources.list  
echo deb http://security.debian.org/ sarge/updates main >> /etc/apt/sources.list  
apt-get update  
apt-get upgrade

Maintenant, il est temps d’installer les programmes dont j’ai besoin :

apt-get install apache php4 mysql-server phpmyadmin

Activer suExec ? <– Oui
MySQL ne s’installera que si vous avez un nom d’hôte NON NUMÉRIQUE … <– D’accord
Quel serveur Web souhaitez-vous reconfigurer automatiquement ? <— apache
Voulez-vous que je redémarre apache maintenant ? <– Oui

Vous pourriez voir quelques messages d’erreur concernant les locales qui ne sont pas configurées :

perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = (unset),
LC_ALL = (unset),
LANG = “en_GB.UTF-8

sont pris en charge et installés sur votre système.
perl: warning: Falling back to the standard locale (“C”).
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory

Cela pourrait être dû au fait que la méthode d’installation de debootstrap n’a peut-être pas installé les locales.

apt-get install locales localeconf

Sélectionnez les locales à générer.
[] en_GB ISO-8859-1
[
] en_GB.ISO-8859-15 ISO-8859-15
[*] en_GB.UTF-8 UTF-8
<– D’accord

Quelle locale devrait être la par défaut dans l’environnement système ? <– en_GB
Gérer les fichiers de configuration des locales avec debconf ? <– Oui
Si vous ne souhaitez pas utiliser la locale système par défaut… <– D’accord
Paramètres d’environnement qui devraient remplacer la locale par défaut : <– Vide
Remplacer les fichiers de configuration des locales existants ? <– Oui
Si vous n’êtes pas sûr … toujours pris en charge. <– D’accord
Locale système par défaut : <– en_GB.UTF-8 UTF-8

Je vais maintenant créer un utilisateur sarge qui est le même que mon utilisateur ubuntu actuel. Cela signifie que je ne devrais avoir aucun problème de permissions lorsque j’édite mes pages Web dans Ubuntu.

adduser user_name_in_ubuntu

Le fichier de configuration d’Apache se trouve toujours à : /etc/apache/httpd.conf, mais il est référencé depuis le sarge-dir et la même chose s’applique à votre dossier Web /var/www. Lorsque vous éditez des pages Web depuis le bureau Ubuntu, allez d’abord dans le sarge-dir puis trouvez /var/www/. Lorsque vous éditez des pages Web dans Ubuntu, allez d’abord dans le sarge-dir puis trouvez /var/www/

Maintenant, je vais vérifier les installations.

Les installations d’apache et de php peuvent être effectuées ensemble en créant un fichier phpinfo dans votre dossier /var/www avec la commande phpinfo() à l’intérieur. Toujours chrooté pour le moment.

nano /var/www/phpinfo.php

Dans ce fichier, vous devriez taper :

Pointez votre navigateur vers http://localhost/phpinfo.php et cela devrait afficher toute la configuration apache et les paramètres par défaut.

Le fichier de configuration pour mysql se trouve à : /etc/mysql/my.cnf encore référencé depuis le sarge-dir. À ce stade, il est également utile de définir le mot de passe Root, donc, toujours chrooté :

mysql -u root

Pour vous amener à l’invite de commande mysql, puis :

mysql> USE mysql;  
mysql> UPDATE user SET Password=PASSWORD('your-password') WHERE user='root';  
mysql> FLUSH PRIVILEGES;

Le fichier de configuration de phpmyadmin se trouve à : /etc/phpmyadmin/config.inc.php.

Vous voudrez peut-être ajouter votre mot de passe mysql dedans pour vous éviter de vous connecter à la console phpmyadmin chaque fois que vous devez l’utiliser.

Si vous devez jamais redémarrer Apache ou si apache ne démarre pas au démarrage, alors vous devrez chroot dans sarge d’abord puis redémarrer apache.

sudo bash  
chroot sarge-dir  
/etc/init.d/httpd restart
Share: X/Twitter LinkedIn

Recevez de nouveaux articles dans votre boîte de réception.

Aucun spam. Désabonnez-vous à tout moment.