Migration : Différence entre versions
(→Oui, mais je n'ai pas les mots de passe de mes utilisateurs) |
|||
(10 révisions intermédiaires par 4 utilisateurs non affichées) | |||
Ligne 1 : | Ligne 1 : | ||
− | Voici | + | Voici un how-to pour réaliser votre migration de SME6 vers SME 7 avec une installation "fraiche" |
+ | |||
+ | Vous pouvez aussi vous en inspirer largement pour une réinstallation (sauf partie renommage des dossiers IMAP) | ||
+ | |||
+ | ordre a respecter pour restaurer votre serveur: | ||
+ | |||
+ | 1 installation fraiche | ||
+ | 3 installation de vos contribs, mise en place des templates | ||
+ | 2 création des users groupes et ibays | ||
+ | 4 restauration des données utilisateurs, ibays.. | ||
+ | 5 installation d'autres contribs secondaires et templates | ||
Ligne 5 : | Ligne 15 : | ||
== Précautions == | == Précautions == | ||
− | Pour plus de sécurité je vous conseille de partir sur de nouveaux disques dur afin de conserver une version fonctionnelle de votre ancien | + | Pour plus de sécurité je vous conseille de partir sur de nouveaux disques dur afin de conserver une version fonctionnelle de votre ancien serveur tant que tout n'est pas fonctionnel et terminé. Si vous voulez tenter une upgrade directe avec le CD de SME 7 sur votre SME6, de même réalisez une copie de vos disques et tentez la sur cette copie avant tout |
== Installation de SME 7 fraiche avec copie des donnes utilisateurs == | == Installation de SME 7 fraiche avec copie des donnes utilisateurs == | ||
# familiarisez vous avec la contrib lazy admin tool: le principe de cette contrib est de réaliser une réinscription automatique de vos utilisateurs, groupes, ibays, domaines et hotes. | # familiarisez vous avec la contrib lazy admin tool: le principe de cette contrib est de réaliser une réinscription automatique de vos utilisateurs, groupes, ibays, domaines et hotes. | ||
− | # réalisez donc les fichiers | + | # réalisez donc les fichiers nécessaire au fonctionnement de cette contribution (fichier avec la listes de vos comptes) |
− | # Réalisez l'installation de | + | # Réalisez l'installation de SME à vos souhaits |
# installez la contrib lazy admin tool version sme 7 | # installez la contrib lazy admin tool version sme 7 | ||
+ | wget http://distro.ibiblio.org/pub/linux/distributions/smeserver/contribs//jbennett/sme7/lat/smeserver-lazy_admin_tools-0.9.1-2.noarch.rpm | ||
+ | rpm -Uvh smeserver-lazy_admin_tools-0.9.1-2.noarch.rpm | ||
# installez toutes vos contribs favorites compatibles SME 7 | # installez toutes vos contribs favorites compatibles SME 7 | ||
# executez les fichiers batch de lazy admin tool | # executez les fichiers batch de lazy admin tool | ||
Ligne 54 : | Ligne 66 : | ||
cat /tmp/listeibays|while read line | cat /tmp/listeibays|while read line | ||
do | do | ||
− | echo "=> copie dossier | + | echo "=> copie dossier ibay" |
echo "cp -pr --reply=yes $MONTAGE/home/e-smith/files/ibays/$line /home/e-smith/files/ibays" | echo "cp -pr --reply=yes $MONTAGE/home/e-smith/files/ibays/$line /home/e-smith/files/ibays" | ||
− | |||
− | |||
− | |||
cp -pr --reply=yes $MONTAGE/home/e-smith/files/ibays/$line /home/e-smith/files/ibays | cp -pr --reply=yes $MONTAGE/home/e-smith/files/ibays/$line /home/e-smith/files/ibays | ||
done | done | ||
Ligne 65 : | Ligne 74 : | ||
Le principe : sous SME 6 les dossiers sont du type ;DOSSIER;SOUSDOSSIER | Le principe : sous SME 6 les dossiers sont du type ;DOSSIER;SOUSDOSSIER | ||
sous SME 7 ils sont du type .DOSSIER.SOUSDOSSIER , il vous suffit donc de renommer tous les repertoires en question | sous SME 7 ils sont du type .DOSSIER.SOUSDOSSIER , il vous suffit donc de renommer tous les repertoires en question | ||
+ | |||
+ | |||
+ | un petit script (à améliorer certes, mais il peut faire gagner un peu de temps déjà): | ||
+ | |||
+ | #!/bin/sh | ||
+ | cd $1 | ||
+ | |||
+ | LS=`ls -A` | ||
+ | for i in $LS; | ||
+ | do | ||
+ | noma=`echo ${i//:/}`; | ||
+ | nom=`echo ${noma//;/.} `; | ||
+ | if [ "$noma" != "$nom" ] | ||
+ | then | ||
+ | mv "$noma" "$nom"; | ||
+ | echo "$noma ==> $nom" | ||
+ | fi | ||
+ | |||
10. restauration de vos templates-custom | 10. restauration de vos templates-custom | ||
− | là vous avez | + | là vous avez intérêt à les restaurer un par un puis faire un expand-template et relancer le service. |
− | En effet certain services ont changé de version et de | + | En effet certain services ont changé de version et de syntaxe entre les deux version de SME. il vous faudra peut-être modifier les templates en conséquence. Vérifiez aussi que vous importez uniquement les templates perso, et pas ceux créés par des contribs compatibles avec votre vieille SME . |
11. un petit reboot | 11. un petit reboot | ||
Ligne 74 : | Ligne 101 : | ||
signal-event reboot | signal-event reboot | ||
− | et voila, plus qu' | + | et voila, plus qu'à reconfigurer vos nouvelles contribs |
− | + | ||
== Oui, mais je n'ai pas les mots de passe de mes utilisateurs == | == Oui, mais je n'ai pas les mots de passe de mes utilisateurs == | ||
− | Evidement les Lazy admin tool sont | + | Evidement les Lazy admin tool sont insuffisants si vous ne connaissez pas les mots de passe des utilisateurs. |
voici une solution: http://www.tech-geeks.org/geeklog/article.php?story=20040907083535277 | voici une solution: http://www.tech-geeks.org/geeklog/article.php?story=20040907083535277 | ||
− | Le principe est de | + | Le principe est de récupérer les passwords dans le fichier /etc/shadow |
et de copier uniquement ceux des utilisateurs dans le nouveau shadow | et de copier uniquement ceux des utilisateurs dans le nouveau shadow | ||
− | + | lien vers le fichier : [http://smeserver.pialasse.com/fichiers/restore_shadow.pl.txt] | |
#!/usr/bin/perl | #!/usr/bin/perl | ||
# SCRIPT BY: ABE LOVELESS (ABE@LOVELESSCENTRAL.ORG) | # SCRIPT BY: ABE LOVELESS (ABE@LOVELESSCENTRAL.ORG) | ||
Ligne 144 : | Ligne 170 : | ||
Puis une fois les mots de passe copiés: | Puis une fois les mots de passe copiés: | ||
− | db | + | db accounts setprop username PasswordSet yes |
− | + | Pour chaque utilisateur où "username" est son nom d'utilisateur. | |
== Upgrade grace au CD == | == Upgrade grace au CD == |
Version actuelle en date du 8 mai 2007 à 06:30
Voici un how-to pour réaliser votre migration de SME6 vers SME 7 avec une installation "fraiche"
Vous pouvez aussi vous en inspirer largement pour une réinstallation (sauf partie renommage des dossiers IMAP)
ordre a respecter pour restaurer votre serveur:
1 installation fraiche 3 installation de vos contribs, mise en place des templates 2 création des users groupes et ibays 4 restauration des données utilisateurs, ibays.. 5 installation d'autres contribs secondaires et templates
Sommaire
Précautions
Pour plus de sécurité je vous conseille de partir sur de nouveaux disques dur afin de conserver une version fonctionnelle de votre ancien serveur tant que tout n'est pas fonctionnel et terminé. Si vous voulez tenter une upgrade directe avec le CD de SME 7 sur votre SME6, de même réalisez une copie de vos disques et tentez la sur cette copie avant tout
Installation de SME 7 fraiche avec copie des donnes utilisateurs
- familiarisez vous avec la contrib lazy admin tool: le principe de cette contrib est de réaliser une réinscription automatique de vos utilisateurs, groupes, ibays, domaines et hotes.
- réalisez donc les fichiers nécessaire au fonctionnement de cette contribution (fichier avec la listes de vos comptes)
- Réalisez l'installation de SME à vos souhaits
- installez la contrib lazy admin tool version sme 7
wget http://distro.ibiblio.org/pub/linux/distributions/smeserver/contribs//jbennett/sme7/lat/smeserver-lazy_admin_tools-0.9.1-2.noarch.rpm rpm -Uvh smeserver-lazy_admin_tools-0.9.1-2.noarch.rpm
- installez toutes vos contribs favorites compatibles SME 7
- executez les fichiers batch de lazy admin tool
lat-users -a -i fichier.txt lat-groups -a -i fichier.txt lat-ibays -a -i fichier.txt lat-domains -a -i fichier.txt lat-hosts -a -i fichier.txt lat-quota -a -i fichier.txt
7. restauration de vos données utilisateurs, un petit script pour vous aider
#!/bin/sh echo "script pour copier les fichiers utilisateurs" echo "sme 6 vers sme7" echo "emplacement des sauvegardes /media/disqueusb" echo "sinon ctrl + C et modifiez le script" read x MONTAGE="/media/disqueusb" ls -1 /home/e-smith/files/users/ >/tmp/listeusers cat /tmp/listeusers|while read line do echo "=> copie dossier mail" echo "cp -pr --reply=yes $MONTAGE/home/e-smith/files/users/$line/Maildir /home/e-smith/files/users/$line/" cp -pr --reply=yes $MONTAGE/home/e-smith/files/users/$line/Maildir /home/e-smith/files/users/$line/ echo "=> copie du repertoire HOME de $line" echo "cp -pr --reply=yes $MONTAGE/home/e-smith/files/users/$line/home/ /home/e-smith/files/users/$line/" cp -pr --reply=yes $MONTAGE/home/e-smith/files/users/$line/home /home/e-smith/files/users/$line/ done echo "copie fichiermail de l\'admin" cp -pr --reply=yes $MONTAGE/home/e-smith/files/Maildir /home/e-smith/files/
8. restauration de vos données ibays, un petit script pour vous aider
#!/bin/sh echo "script pour copier les ibays" echo "sme 6 vers sme7" echo "emplacement des sauvegardes /media/disqueusb" echo "sinon ctrl + C et modifiez le script" read x MONTAGE="/media/disqueusb" ls -1 /home/e-smith/files/ibays/ >/tmp/listeibays cat /tmp/listeibays|while read line do echo "=> copie dossier ibay" echo "cp -pr --reply=yes $MONTAGE/home/e-smith/files/ibays/$line /home/e-smith/files/ibays" cp -pr --reply=yes $MONTAGE/home/e-smith/files/ibays/$line /home/e-smith/files/ibays done
9. changement de nom des dossier IMAP dans les dossier Maildir Le principe : sous SME 6 les dossiers sont du type ;DOSSIER;SOUSDOSSIER sous SME 7 ils sont du type .DOSSIER.SOUSDOSSIER , il vous suffit donc de renommer tous les repertoires en question
un petit script (à améliorer certes, mais il peut faire gagner un peu de temps déjà):
#!/bin/sh cd $1 LS=`ls -A` for i in $LS; do noma=`echo ${i//:/}`; nom=`echo ${noma//;/.} `; if [ "$noma" != "$nom" ] then mv "$noma" "$nom"; echo "$noma ==> $nom" fi
10. restauration de vos templates-custom
là vous avez intérêt à les restaurer un par un puis faire un expand-template et relancer le service.
En effet certain services ont changé de version et de syntaxe entre les deux version de SME. il vous faudra peut-être modifier les templates en conséquence. Vérifiez aussi que vous importez uniquement les templates perso, et pas ceux créés par des contribs compatibles avec votre vieille SME .
11. un petit reboot
signal-event post-upgrade signal-event reboot
et voila, plus qu'à reconfigurer vos nouvelles contribs
Oui, mais je n'ai pas les mots de passe de mes utilisateurs
Evidement les Lazy admin tool sont insuffisants si vous ne connaissez pas les mots de passe des utilisateurs. voici une solution: http://www.tech-geeks.org/geeklog/article.php?story=20040907083535277
Le principe est de récupérer les passwords dans le fichier /etc/shadow et de copier uniquement ceux des utilisateurs dans le nouveau shadow
lien vers le fichier : [1]
#!/usr/bin/perl # SCRIPT BY: ABE LOVELESS (ABE@LOVELESSCENTRAL.ORG) # DATE: SEPTEMBER 03, 2004 # COPY THIS SERVER'S SHADOW FILE TO A NEW LOCATION. THEN RUN THIS SCRIPT # AGAINST THE COPY. IF RESULTS APPEAR SUCCESSFUL, COPY THIS SCRIPT'S OUTPUT # OVER /etc/shadow, AND RUN /sbin/e-smith/signal-event post-upgrade FOLLOWED # BY /sbin/e-smith/signal-event reboot TO RE-ACTIVATE THE ORIGINAL PASSWORDS # EDIT THE PATH IN THE VARIABLES BELOW # COPY OF THIS SERVER'S SHADOW FILE $server_shadow = "/root/butch/server_shadow"; # THE BACKUP SHADOW FILE WHERE PASSWORDS ARE PULLED FROM $backup_shadow = "/root/butch/backup_shadow"; # THE OUTPUT FILE $output_file = "/root/butch/output_file"; open(SERVER, "$server_shadow"); open(OUTPUT, ">>$output_file"); my @server_split; until (eof SERVER) { my $server_input = <SERVER>; @server_split = split(/:/,$server_input); $server_split[0] =~ s/^\s+//; $server_split[0] =~ s/\s+$//; $server_split[1] =~ s/^\s+//; $server_split[1] =~ s/\s+$//; open(BACKUP, "$backup_shadow"); until (eof BACKUP) { my $match = 0; my $input = <BACKUP>; @input_split = split(/:/,$input); $input_split[0] =~ s/^\s+//; $input_split[0] =~ s/\s+$//; $input_split[1] =~ s/^\s+//; $input_split[1] =~ s/\s+$//; if ("$input_split[0]" eq "$server_split[0]") { print "Matched: $input_split[0] \n"; $server_split[1] = $input_split[1]; } } close BACKUP; print OUTPUT join(':', @server_split); }
Puis une fois les mots de passe copiés:
db accounts setprop username PasswordSet yes
Pour chaque utilisateur où "username" est son nom d'utilisateur.
Upgrade grace au CD
- desinstallez toutes le contribs installées, absolument toutes, surtout l'antivirus et l'anti spam, car ceux ci sont intégrés à SME 7. Et certaines autres contribs sont incompatibles.
- mettre à jour avec le CD d'installation de SME7
- reinstallez vos contribs en version compatible SME7