Ce que l’on a besoin de récupérer et de modifier depuis le serveur d’origine :
- La base de donnée ;
- La définition des listes ;
- La définition des topics (s’ils ont été modifié)
- La définition des robots ;
- Les alias de mail des listes ;
- Les DNS qui pointent sur le serveur de listes ;
Ce que l’on va recréer sur le nouveau serveur :
- Les différents virtualhosts ;
- Modifier la configuration de Postfix pour prendre en charge les listes ;
Exporter la base de donnée
On utilise l’outil mysqldump
pour ce faire :
- mysqldump --databases sympa -u root --password=mot_de_passe_root > sympa_old.sql
Copie des données de Sympa
Sur le serveur d’origine :
On envoie le contenu du répertoire home de Sympa sur le nouveau serveur :
- scp -r /home/sympa/ user@server_2:sympa_old/
On envoie aussi ses fichiers de configuration :
- scp -r /etc/sympa.conf user@server_2:sympa_old/
- scp -r /etc/wwsympa.conf user@server_2:sympa_old/
On envoie aussi le contenu de son ou ses virtualhosts :
- scp -r /etc/apache2/sites-available/sympa user@server_2:sympa_old/
On envoie les aliases d’emails :
- scp -r /etc/mail/sympa_aliases user@server_2:sympa_old/
Si vous utilisez les robots de Sympa :
- scp -r /etc/mail/sympa_virtual_regexp user@server_2:sympa_old/
On envoie finalement la base de donnée :
- scp -r sympa_old.sql user@server_2:sympa_old/
Sur le serveur distant, tous les fichiers ne sont pas à conserver :
On commence par copier les configuration du serveur :
- sudo cp -Rvf sympa_old/sympa.conf /etc/
- sudo cp -Rvf sympa_old/wwsympa.conf /etc/
On copie les archives :
- sudo cp -Rvf sympa_old/arc/* /home/sympa/arc/
On copie les bounce :
- sudo cp -Rvf sympa_old/bounce/* /home/sympa/bounce/
On copie les données des listes :
- sudo cp -Rvf sympa_old/list_data/* /home/sympa/list_data/
- sudo cp -Rvf sympa_old/etc/* /home/sympa/etc/
On copie les données des robots (ce répertoire n’est pas sensé exister) :
- sudo cp -Rvf sympa_old/expl/ /home/sympa/
On copie les spool :
- sudo cp -Rvf sympa_old/spool/* /home/sympa/spool/
Application des modifications et redémarrage
On restaure l’ancienne base de donnée :
- mysql -u root -p sympa < sympa_old.sql
Assurez vous bien que les droits d’utilisation sur cette table sont bien les mêmes que sur l’ancien serveur, sinon modifiez la configuration d’accès mysql dans /etc/sympa.conf
On donne les bons droits aux fichiers que l’on vient de copier coller :
- sudo chown -Rvf sympa:sympa /home/sympa/
On relance la configuration de sympa en laissant les informations par défaut (celles du fichier actuel /etc/sympa.conf) qui donnera les bons droits au fichier de conf
- sudo /home/sympa/bin/sympa_wizard.pl
On upgrade la structure des données si les serveurs n’ont pas tout à fait la même version :
- sudo /home/sympa/bin/sympa.pl --upgrade
Modification des DNS et de la configuration de Postfix
Il est nécessaire que Postfix puisse acheminer le courier.
On copie les aliases de mails :
- sudo cp sympa_old/sympa_aliases /etc/mail/
Si vous utilisez les robots de sympa, il vous faudra également copier les alias virtuels :
- sudo cp sympa_old/sympa_virtual_regexp /etc/mail/sympa_virtual_regexp
On s’assure qu’ils ont les bons droits :
- sudo chown -Rvf sympa:sympa /etc/mail/
On regénère la base de donnée des aliases :
- sudo newaliases
Il est également nécessaire de vérifier la configuration de Postfix /etc/postfix/main.cf
:
- sudo nano /etc/postfix/main.cf
Principalement les directives :
alias_maps
qui doit être :
alias_maps = hash:/etc/aliases,hash:/etc/mail/sympa_aliases
alias_database
qui doit être :
alias_database = hash:/etc/aliases, hash:/etc/mail/sympa_aliases
Si vous utilisez les robots de sympa, virtual_alias_maps
qui doit être :
virtual_alias_maps = regexp:/etc/mail/sympa_virtual_regexp
et mydestination
qui doit comprendre tous les robots de mailing lists du serveur sympa.
Il ne vous reste plus qu’à modifier les DNS de vos domaines pointant sur le serveur.
Redémarrage des services
Vous devrez redémarrer les différents services qui ont été modifiés, Postfix, Apache, Sympa :
- sudo /etc/init.d/postfix restart
- sudo /etc/init.d/sympa restart
- sudo /etc/init.d/apache2 restart