Serveur dédié : mise à jour vers Debian 7 Wheezy

Hier soir, j’ai mis le serveur à jour : nous passons de Debian 6 (« Squeeze ») à Debian 7 (« Wheezy ») – vous l’aurez remarqué : chez Debian, les versions portent le nom de personnages de Toy Story :)

Histoire de garder une trace de ce que je fais, voici les étapes que j’ai suivies.

Contrairement aux versions précédentes, Debian recommande d’utiliser apt-get au lieu d’aptitude. Donc acte dans ce tutoriel.

Etape 1 : s’assurer que le système est à jour

On vérifie que notre Squeeze est à jour :

apt-get update && apt-get upgradeLangage du code : JavaScript (javascript)

Etape 2 : installer les nouveaux dépôts

Pour voir vos dépôts existants :

cat /etc/apt/sources.listLangage du code : PHP (php)

Résultat :

deb http://mirror.ovh.net/debian/ squeeze main contrib
deb-src http://mirror.ovh.net/debian/ squeeze main contrib

deb http://security.debian.org/ squeeze/updates main contrib
deb-src http://security.debian.org/ squeeze/updates main contrib

# Webmin
deb http://download.webmin.com/download/repository/  sarge contrib

# varnish
deb http://repo.varnish-cache.org/debian/ squeeze varnish-3.0

# mod security
deb  squeeze-backports main 

# dotdeb updated LAMP servers
deb http://packages.dotdeb.org squeeze all
deb-src http://packages.dotdeb.org squeeze allLangage du code : PHP (php)

Il faut remplacer toutes les occurrences de squeeze en wheezy. On peut le faire avec cette commande :

sed -i 's/squeeze/wheezy/g' /etc/apt/sources.listLangage du code : PHP (php)

Evidemment, il y a un piège : le dépôt des backports a changé de nom et d’adresse. Il se trouve désormais ici :

deb http://ftp.debian.org/debian/ wheezy-backports mainLangage du code : JavaScript (javascript)

Après modification, voici donc notre sources.list :

deb http://mirror.ovh.net/debian/ wheezy main contrib
deb-src http://mirror.ovh.net/debian/ wheezy main contrib

deb http://security.debian.org/ wheezy/updates main contrib
deb-src http://security.debian.org/ wheezy/updates main contrib

# Webmin
deb http://download.webmin.com/download/repository/  sarge contrib

# varnish
deb http://repo.varnish-cache.org/debian/ wheezy varnish-3.0

# mod security
deb http://ftp.debian.org/debian/ wheezy-backports main

# dotdeb updated LAMP servers
deb http://packages.dotdeb.org wheezy all
deb-src http://packages.dotdeb.org wheezy allLangage du code : PHP (php)
Kinsta: Premium Managed WordPress hosting

Etape 3 : lancement de la mise à jour partielle

Mise à jour des fichiers :

apt-get updateLangage du code : JavaScript (javascript)

Aucune erreur. On continue avec la mise à jour minimale des paquets :

apt-get upgradeLangage du code : JavaScript (javascript)

Après quelques minutes, plantage sur le dernier paquet. MySQL est en cause :

Unpacking replacement mysql-client-5.5 ...
dpkg: error processing /var/cache/apt/archives/mysql-client-5.5_5.5.30+dfsg-1.1_amd64.deb (--unpack):
 trying to overwrite '/usr/share/man/man1/mysqlcheck.1.gz', which is also in package mysql-client-core-5.5 5.5.30-1~dotdeb.0
configured to not write apport reports
                                      dpkg-deb: subprocess paste killed by signal (Broken pipe)
Processing triggers for man-db ...
Errors were encountered while processing:
 /var/cache/apt/archives/mysql-client-5.5_5.5.30+dfsg-1.1_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)Langage du code : JavaScript (javascript)

Je force l’installation :

apt-get -f install -o Dpkg::Options::="--force-overwrite"Langage du code : PHP (php)

et retire mysql-client-5.5 et tout ce qui va avec (tout MySQL en fait) parce que je n’ai pas envie qu’il vienne me mettre la zone pendant la mise à jour du système. On le remettra plus tard :

apt-get remove mysql-client-5.5Langage du code : JavaScript (javascript)

Etape 4 : mise à jour du système

Allez, c’est parti. Les sauvegardes ont été faites, on se lance dans le bain (avec une petite prière quand même, toujours) :

apt-get dist-upgradeLangage du code : JavaScript (javascript)

Un quart d’heure plus tard, après quelques validations pour savoir quels fichiers de configuration garder et redémarrer les services, le serveur est à jour.

On réinstalle MySQL :

apt-get install mysql-client-5.5Langage du code : JavaScript (javascript)

J’ai gardé le fichier /etc/apache2/apache2.conf durant l’installation, ce qui me plante Apache :

apache2: Syntax error on line 212 of /etc/apache2/apache2.conf: Could not open configuration file /etc/apache2/httpd.conf: No such file or directoryLangage du code : HTTP (http)

Il suffit de commenter la ligne et de redémarrer Apache.

Voilà. Un quart d’heure pour glaner les informations de mise à jour, 20 minutes pour l’installation proprement dite et à peu près 20 minutes pour vérifier que tout va bien et faire le ménage. Une heure d’admin serveur quoi ;)

Demandez à l'IA son opinion
Gravatar for Matt Biscay

Je suis Matt Biscay, développeur WordPress & WooCommerce certifié chez Codeable, administrateur système et enseignant.

J’aide les entreprises à créer, optimiser et fiabiliser leurs sites WordPress avec une approche technique propre : performance, sécurité, maintenance, développement sur mesure et résolution de problèmes complexes.

Sur Skyminds, je partage des tutoriels WordPress, WooCommerce, Linux et administration système, avec des solutions testées sur des cas réels et pensées pour durer.

Découvrez mes services WordPress et WooCommerce.

1 réflexion au sujet de « Serveur dédié : mise à jour vers Debian 7 Wheezy »

Laisser un commentaire