J’avais fait quelques essais avec Ubuntu server 7.04 et j’en avais été satisfait.
Plutôt que de faire un upgrade, je décide de réinstaller complètement mon serveur avec la version Ubuntu Gutsy server 7.10

Pourquoi ?
Pour repartir à zéro. Pour éliminer les traces de mes essais précédents et les softs inutiles, et puis il est aussi facile de tout réinstaller que d’upgrader car je n’avais encore rien en production sur ce serveur.
Je ne m’étendrai pas sur l’installation elle-même.
En résumé (et dans le désordre) :
- télécharger de l’image ISO d’Ubuntu server 7.10 et la graver
- booter le server sur le CD-R d’Ubuntu server 7.10
- répondre aux différentes questions : langue, clavier, heure GMT (c’est préférable car je n’ai qu’Ubuntu sur ce serveur)
- choisir un userid qui aura les droits administratifs (avec “sudo“)
- partitionner le disque dur : classiquement on crée une partition séparée pour /, /home, et dans le cas d’un serveur, je conseille aussi de séparer le /var où se trouveront par exemple les différents sites Web (/var/www/…)
Ubuntu server me demande quels serveurs installer.
Par défaut, il me propose de faire une installation LAMP, càd
- Linux
- Apache
- MySQL
- PHP
Evidemment, il me faut ça !
Je désire en faire un serveur Web et installer Spip et DotClear.
Donc, Apache, MySQL et PHP sont indispensables.
Pas envie de devoir descendre dans ma cave pour chaque reconfiguration du serveur.
Je choisi donc d’installer également le serveur OpenSSH.
Les disques durs actuels étant assez grands, un 250 GB, il est clair que je n’aurai pas 250 GB de sites Web ! ![]()
Utiliser le reste comme serveur de fichiers pour partager des dossiers, ou pour avoir accès à ses données privées depuis tous les PC du réseau local est une idée intéressante aussi.
Je sélectionne donc également Samba dans les choix que me propose Ubuntu server lors de l’installation.
Je continue l’installation.
La seule question qui me sera posée ensuite est celle du mot de passe “root” (administration) de MySQL (ne pas confondre avec un user “root” Linux, c’est le mot de passe pour l’administration de la base de données).
J’en choisi un relativement complexe, et surtout, je ne l’oublie pas ! (ça peut servir…)
L’installation de base a pris environ 45 minutes sur ce petit serveur moyennement rapide.
Le serveur utilisé est un petit PC Dell avec un Pentium III à 866 MHz et 128 MB de mémoire SDRam.
Il est probable que j’augmente la taille de la mémoire à 256 ou 384 MB par après si c’est nécessaire.
L’installation se termine, le serveur reboot…
Et voilà :
- Apache fonctionne
- l’accès distant en SSH aussi
- pour Samba, je devrai d’abord configurer les dossiers qui seront partagés
Je fais une mise à jour :
sudo aptitude update sudo aptitude dist-upgrade
Il ne fait la mise à jour que d’une seule petite librairie dont je n’ai pas retenu le nom.
Je vérifie dans le log système :
less /var/log/syslog
Je parcours en vitesse les messages. Tout semble normal, pas d’erreur flagrante.
En résumé, Ubuntu serveur Gutsy 7.10 est vraiment simple d’installation.
Sur cette machine déjà ancienne, et donc au hardware bien connu, je n’ai eu aucun problème de compatibilité. Tout ce dont j’ai besoin fonctionne.
Je pourrais en rester là, mais à mon avis, il reste quelques points à améliorer :
La configuration réseau :
Par défaut, Ubuntu server configure son interface réseau en DHCP.
Si la configuration en DHCP est une chose hyper pratique pour une station de travail (desktop ou laptop), ce n’est pas idéal pour un serveur.
En effet, pour pouvoir y accéder en SSH, ou pour le rendre accessible depuis Internet en mettant une règle de port forward sur le port http 80 dans votre modem/routeur, il faut être certain que l’adresse IP du serveur ne changera pas.
Cela pourrait se faire en spécifiant la MAC adress de l’interface du serveur dans le serveur DHCP.
Mais c’est rarement possible si vous utilisez le DHCP serveur d’un modem/routeur ADSL.
Le plus simple et de modifier la configuration de l’interface et la mettre en adresse IP statique :
Pour cela, éditer le fichier “interfaces”
sudo vi /etc/network/interfaces
et remplacer la ligne “inet dhcp” par :
# The primary network interface
auto eth0
#iface eth0 inet dhcp
iface eth0 inet static
address 192.168.1.251
netmask 255.255.255.0
gateway 192.168.1.1
Adapter évidemment les adresses IP en fonction de votre réseau.
L’adresse Gateway étant celle de votre modem/routeur ADSL, ou de votre firewall.
Sortir de l’éditeur VI par “:q” et redémarrer le réseau pour activer la nouvelle définition IP.
Attention si vous êtes en accès distant par SSH !
Le changement d’adresse IP va évidemment vous déconnectez. Vous devrez refaire une session SSH en utilisant la nouvelle adresse IP du serveur.
Donc, il faut faire un RESTART du réseau, pas une commande STOP… car vous n’auriez plus la session SSH active pour taper la commande “start”
sudo /etc/init.d/networking restart * Reconfiguring network interfaces...
Votre session SSH se coupe probablement (ou se bloque).
Redémarrez la sur la nouvelle adresse IP du serveur.
Sans se lancer dans l’installation d’un nombre important de programmes, je voudrais malgré tout en ajouter quelques uns :
Mise à l’heure avec NTP :
Je pense que la mise à jour NTP se fait déjà automatiquement au démarrage du serveur.
NTDATE est en effet installé.
Je veux aller plus loin et faire servir cette machine de serveur NTP pour tout mon réseau local, càd que je veux pouvoir synchroniser les horloges de tous mes PC (Linux ou même Windows) sur mon propre serveur, lui seul se mettant à l’heure sur Internet.
Pour cela, je dois installer un serveur NTP.
Le paquet “ntp-server” ne semble plus disponible. Il est tout simplement remplacer par le paquet “ntp”.
Pour installer un paquet en ligne de commande, vous pouvez utiliser “apt-get” ou “aptitude”, toujours avec “sudo“.
Il semble qu’en cas de conflit, Aptitude soit préférable à “apt-get”.
Je vais donc utiliser Aptitude :
sudo aptitude install ntp Lecture des listes de paquets... Fait Construction de l'arbre des dépendances Lecture des informations d'état... Fait Lecture de l'information d'état étendu Initialisation de l'état des paquets... Fait Construction de la base de données des étiquettes... Fait Les NOUVEAUX paquets suivants vont être installés : ntp 0 paquets mis à jour, 1 nouvellement installés, 0 à enlever et 0 non mis à jour. Il est nécessaire de télécharger 434ko d'archives. Après dépaquetage, 1090ko seront utilisés. Écriture de l'information d'état étendu... Fait Prendre :1 http://be.archive.ubuntu.com gutsy/main ntp 1:4.2.4p0+dfsg-1ubuntu2 [434kB] 434ko téléchargés en 1s (410ko/s) Sélection du paquet ntp précédemment désélectionné. (Lecture de la base de données... 19389 fichiers et répertoires déjà installés.) Dépaquetage de ntp (à partir de .../ntp_1%3a4.2.4p0+dfsg-1ubuntu2_i386.deb) ... Paramétrage de ntp (1:4.2.4p0+dfsg-1ubuntu2) ... * Starting NTP server ntpd ...
On peut vérifier le bon fonctionnement du serveur NTP.
Il doit être en machine et se synchroniser sur une horloge Internet.
ps -A|grep ntp
6934 ? 00:00:00 ntpd
didier@abrasd03:/etc$ ntpq -p
remote refid st t when poll reach delay offset jitter
==============================================================================
europium.canoni 193.79.237.14 2 u 2 64 73 818.284 223.014 137.118
On voit qu’il est en train de se synchroniser sur une référence de temps.
Ce serveur NTP est un serveur pris au hasard dans ceux fournis par Canonical.
Il est intéressant d’en ajouter quelques uns pour améliorer la précision, ou palier l’indisponibilité d’un des serveurs.
Plutôt que de chercher au hasard un serveur de temps, un projet mettant à la disposition du public des serveurs de temps existe : Pool NTP
Les serveurs sont organisés par zone géographique.
Vous pouvez prendre celui que vous voulez, mais il est logique de prendre des serveurs près de chez soi pour minimiser les délais de transmission et ainsi améliorer la précision.
Je prendrai donc, en plus du serveur aléatoire proposé par Ubuntu, un serveur belge et un serveur européen.
Je vais y ajouter le serveur NTP de Belbone, bien connu en belgique, et un partenaire qui est mon 1er serveur sur mon réseau.
Editer le fichier paramètre de NTP :
sudo vi /etc/ntp.conf
Et modifier les lignes “servers” :
# You do need to talk to an NTP server or two (or three). server ntp.ubuntu.com server be.pool.ntp.org server europe.pool.ntp.org server ntp1.belbone.be peer 192.168.1.250
Sauver et redémarrer le serveur de temps :
sudo /etc/init.d/ntp restart
* Stopping NTP server ntpd
[ OK ]
* Starting NTP server ntpd
[ OK ]
didier@abrasd03:/etc$ ntpq -p
remote refid st t when poll reach delay offset jitter
==============================================================================
europium.canoni 193.79.237.14 2 u 5 64 1 751.772 68.688 0.001
boogey.rootshel 33.3.52.73 4 u 4 64 1 706.849 7.084 0.001
cima.upc.es 147.83.123.136 3 u 3 64 1 635.095 15.021 0.001
ntp1.belbone.be 195.13.23.6 2 u 51 64 17 11.093 -241.53 61.959
192.168.168.250 193.120.10.3 2 u 3 64 1 5.534 -198.85 0.001
On voit les 5 serveurs de temps utilisés :
un de Canonical un serveur belge un serveur européen, ici espagnol. celui de Belbone et le partenaire local sur mon réseau.
Le serveur NTP se synchronise sur un seul autre serveur : celui qu’il “estime”, sur base de son algorithme, comme étant le plus fiable, de niveau (strate) le plus haut, et de délais le plus court. Il est capable de rejeter les serveurs NTP qui présenteraient, par exemple, des écarts importants avec les autres serveurs de sa liste.
Il faut savoir que, en cas de différence significative, la mise à l’heure n’est pas brutale. Elle est progressive. Cela évite les incohérences dans les logs ou dans une application.
Il serait en effet génant d’avoir des records dans une base de donnée avec un temps qui reviendrait tout d’un coup en arrière de 3 ou 4 minutes !
La mise à l’heure peut donc prendre… un certain temps…




