Migration : Différence entre versions

De SME Server Wiki
(Oui, mais je n'ai pas les mots de passe de mes utilisateurs)
(Installation de SME 7 fraiche avec copie des donnes utilisateurs)
Ligne 65 : Ligne 65 :
 
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 ti script ( a ameliorer certe  mais il peut faire gagner un peu de temps deja):
 +
 +
#!/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
Ligne 75 : Ligne 91 :
  
 
et voila, plus qu'a reconfigurer vos nouvelles contribs
 
et voila, plus qu'a 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 ==

Version du 7 septembre 2006 à 22:14

Voici quelques brides d'how-to pour réaliser votre migrtation de SME6 vers SME 7 avec une installation "fraiche"



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 sereru 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 meme 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

  1. 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.
  2. réalisez donc les fichiers necessaire au fonctionement de cette contribs (fichier avec la listes de vos comptes)
  3. Réalisez l'installation de sme à vos souhaits
  4. installez la contrib lazy admin tool version sme 7
  5. installez toutes vos contribs favorites compatibles SME 7
  6. 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 mail"
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
echo "=> copie du repertoire HOME de $line"
echo "cp -pr --reply=yes $MONTAGE/home/e-smith/files/ibays/$line /home/e-smith/files/ibay"
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 ti script ( a ameliorer certe mais il peut faire gagner un peu de temps deja):

#!/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 interet à les restaurer un par un puis fair eun expand-template et relancer le service. En effet certain services ont changé de version et de syntaxeentre els deux version de SME. il vous faudra peut ere modofier les template sen consequence. Verifiez aussi que vous importez uniquement les tempaltes 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'a reconfigurer vos nouvelles contribs

Oui, mais je n'ai pas les mots de passe de mes utilisateurs

Evidement les Lazy admin tool sont insuffisant si vous ne connaissez pas le smots d epasse des utilisateurs. voici une solution: http://www.tech-geeks.org/geeklog/article.php?story=20040907083535277

Le principe est de recuperer les password dans le fichier /etc/shadow et de copier uniquement ceux des utilisateurs dans le nouveau shadow


#!/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 account setprop username PassworSet yes

pour chaque utilisateurs ou "username" est son nom d'utilisateur

Upgrade grace au CD

  1. 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.
  2. mettre à jour avec le CD d'installation de SME7
  3. reinstallez vos contribs en version compatible SME7