Il est arrivé ici que je transfère ce miracle d'une machine à repasser à une machine virtuelle. La situation est franchement déprimante - l'ancienne version de Debian avec le noyau 2 et la relocalisation de Zimbra 6.0.4 étaient prévues pour CentOS 7 et ZImbra 8.8.
Je dois dire tout de suite que pour terminer cet événement, il faut aimer pleinement le BDSM, et pas léger, mais hardcore avec des hits en dessous de la ceinture. Sinon, rien ne fonctionnera pour vous et tout se tiendra au milieu du chemin.
Alors mettons-le dans l'ordre.
Au départ, nous devions déployer une version de Zimbra identique à l'ancien serveur, dans mon cas c'était Zimbra 6.0.4 pour CentOS 5, malheureusement c'était la version la plus avancée de l'OS pour ce logiciel à l'époque.
Téléchargez ici zimbra.
wget https://files2.zimbra.com/downloads/6.0.4_GA/zcs-6.0.4_GA_2038.RHEL5_64.20091214192925.tgz
Et déballer:
tar -xvf https://files2.zimbra.com/downloads/6.0.4_GA/zcs-6.0.4_GA_2038.RHEL5_64.20091214192925.tgz
Avant de l'installer, configurez CentOS. Dans la version 5, désactivez Selinux, Postfix / Sendmail (non plus) et configurez des navets pour yum.
vi /etc/sysconfig/selinux
Là, nous définissons la valeur:
SELINUX=disabled
Nous arrêtons et désactivons les services afin que lors de l'installation et de la mise à jour, ils n'interfèrent pas avec nous:
service iptables stop chkconfig iptables off service sendmail stop chkconfig sendmail off service postfix stop chkconfig postfix off
Nous avons mis en place des navets pour miam. Dans ce fichier, vous devez # commenter les lignes commençant par miroir:
vi /etc/yum.repos.d/CentOS-Base.repo
Et éditez
'baseurl='
Au lieu de 5.11, nous avons défini notre version.
baseurl=http://vault.centos.org/5.11/os/$basearch/
Ensuite, mettez à jour CentOS
yum update
Après avoir mis à jour le système d'exploitation, il ne reste plus qu'un seul réglage, car zimbra est très jaloux du DNS, c'est un paramètre très important et sans lui le processus d'installation ne fonctionnera tout simplement pas.
vi /etc/hosts
Nous y enregistrons votre adresse IP et le nom complet du serveur - IP FQNS NS.
Tout est dans cet ordre, sinon encore une erreur. Dans mon cas, le serveur s'appelait srvmail (ou plutôt, son enregistrement mx).
192.168.0.2 srvmail.domail.local srvmail
Ensuite, vous pouvez procéder à l'installation, aller dans le répertoire avec le zimbra décompressé à l'avance et exécuter:
./install.sh --platform-override
Drapeau
"--platform-override"
indique au programme d'installation quoi installer dans tous les cas (réécrivez la plate-forme de force).
Un autre indicateur utile est
"-s"
cet indicateur indique au programme d'installation que nous voulons installer uniquement les packages exécutables et non configurer.
Ensuite, le programme d'installation commencera l'installation et si tout a été fait correctement, il n'y aura pas d'erreurs. A la fin de l'installation, nous vérifions l'état du service zimbra:
zmcontrol status
Si tous les services sont en état de fonctionnement, alors tout est OK, puis continuez.
Arrêtez notre zimbru:
zmcontrol stop
Une fois le zimbra installé, nous devons transférer la base de données, ainsi que le fichier de configuration de l'ancien serveur zimbra vers le nouveau.
Nous avons besoin de dossiers
db data index
situé dans
/opt/zimbra
ainsi que le fichier
/opt/zimbra/conf/localconfig.xml
Les données de dossier sur le nouveau serveur peuvent être supprimées ou sauvegardées.
Étant donné que les dossiers et les fichiers pendant le transfert pourraient changer l'hôte (autorisations), nous devons résoudre ce problème:
chown -R zimbra.zimbra /opt/zimbra /opt/zimbra/libexec/zmfixperms
De plus, avant un test, il est nécessaire de vérifier la base de données sql pour les erreurs, vous pouvez le faire en utilisant l'utilitaire standard
mysqlcheck
ou en utilisant l'utilitaire Zimbro intégré
zmdbintegrityreport
Exécutez mysql et exécutez le script:
/opt/zimbra/bin/mysql.server start /opt/zimbra/libexec/zmdbintegrityreport /opt/zimbra/libexec/zmdbintegrityreport -r
La première ligne vérifie les erreurs et la seconde vérifie et essaie immédiatement d'être réparée.
Si aucune erreur ne s'est produite, alors applaudissez et regardez ci-dessous, si des erreurs:
mysql.general_log Error : You can't use locks with log tables. mysql.slow_log Error : You can't use locks with log tables.
Ensuite, vous devez effectuer les opérations suivantes:
cd /opt/zimbra/db/data/mysql ls -al *log.frm mv *log.frm /tmp/ /opt/zimbra/libexec/zmdbintegrityreport
Si ce dernier se termine sans erreur, arrêtez mysql et continuez.
/opt/zimbra/bin/mysql.server stop
Maintenant, nous devons changer les mots de passe en base LDAP. Nous commençons ldap:
ldap start
Dans la première version avec le drapeau «r», nous changeons le mot de passe pour l'utilisateur root, et dans la deuxième ligne pour l'utilisateur zimbra, nous arrêtons à nouveau ldap:
zmldappasswd -r newrootpass zmldappasswd newpass ldap stop
Si vous aimez le BDSM et l'occultisme, lisez attentivement le paragraphe suivant. Sinon, n'hésitez pas à sauter.
Pour les fans de BDSMMaintenant un peu étranglé)) Je comprends que vous êtes déjà assez fatigué et que cette matité est un peu agaçante, mais laissez-moi vous expliquer quelque chose. Lorsque nous avons transféré les bases (ldap et sql), nous avons également transféré leurs accès (utilisateurs et mots de passe), lorsque nous avons défini un nouveau zimbru, il a généré automatiquement des mots de passe pour les bases et ils sont stockés dans le fichier /opt/zimbra/conf/localconfig.xml. Et si nous essayions de simplement transférer les bases et de démarrer immédiatement les services Zimbra, ils nous enverraient nafig et ne démarreraient pas, car les mots de passe ne correspondraient pas. En principe, vous pouvez aller dans l'autre sens sans copier le fichier de paramètres, mais vous devez ensuite comparer les paramètres avec l'ancien serveur pour les modifier sur le nouveau. Il existe une commande spéciale zmlocalconfig pour cela.
Nous regardons les paramètres par exemple ldap:
zmlocalconfig -s | grep ldap
Nous les utilisons sur le nouveau serveur:
zmlocalconfig -e < >=< >
La chose la plus importante est de changer les mots de passe pour tous les ldap et mysql.
Avec mysql, tout est beaucoup plus compliqué, vous devez démarrer le service avec la réinitialisation de la table de privilèges puis appliquer le mot de passe égal aux anciennes configurations de zimbra:
vi /opt/zimbra/bin/mysql.server
trouver la ligne là-bas
(--ledir=${mysql_directory}/libexec < /dev/null > /dev/null 2>&1 &)
Et changez-le en
(--ledir=${mysql_directory}/libexec < /dev/null > /dev/null 2>&1 --skip-grant-tables &)
Vérifiez si mysql fonctionne, si oui nous l'éteignons
/opt/zimbra/bin/mysql.server stop
Ensuite, exécutez la pommette sur un nouveau
mysql.server start
Ensuite, accédez à mysql sans mot de passe (mysql) et définissez des mots de passe égaux à l'ancien zimbra (!!! vous devez exécuter l'ancien zimbra !!!!!!!!!!!)
zmlocalconfig -s | grep mysql_root_password zmlocalconfig -s | grep zimbra_mysql_password
mysql> UPDATE mysql.user SET Password=PASSWORD('password') WHERE User='root'; ----> Root user. mysql> UPDATE mysql.user SET Password=PASSWORD('password') WHERE User='zimbra'; ----> Zimbra user
Nous écrivons les modifications et sortons
FLUSH PRIVILEGES; exit;
Ensuite, redémarrez la pommette en arrêtant et en démarrant
mysql.server stop mysql.server start
Vérifier le bon fonctionnement
mysql zimbra
si cela se passe sans erreurs, réjouissez-vous.
arrêtez mysql
/opt/zimbra/bin/mysql.server stop
Ensuite, nous nous assurons à nouveau que les services
zimbra, mysql, ldap
ne fonctionnent pas:
ps -aux |grep slapd ps -aux |grep sql zmcontrol status
Si quelque chose tourne soudainement, vous devez tuer ou arrêter.
Eh bien, le moment est venu pour votre premier lancement d'un nouveau serveur. Nous plions les doigts avec une croix et ne la lâchons pas jusqu'à ce qu'elle soit complètement lancée, si vous avez besoin d'utiliser un tambourin à portée de main:
zmcontrol start
Il existe 2 options pour le développement d'événements:
Au démarrage,
figdit casse et plie LDAP
Vérifiez à nouveau le zimbra et le mot de passe root. Ou au lancement, ldap fonctionnait déjà et vous venez de manquer quelque chose au
bétail inattentif .
Lors du démarrage des pauses
figachit et des virages mysql, voir le point 1
Eh bien, l'option lorsque mailboxd ne démarre pas
Vous devez donc générer un nouveau certificat:
Avant cela, vous devez supprimer l'ancien magasin de clés, sinon FAIL vous attend:
rm -rf /opt/zimbra/mailboxd/etc/keystone cd /opt/zimbra/bin ./zmcertmgr createca -new ./zmcertmgr createcrt -new -days 1825 ./zmcertmgr deploycrt self ./zmcertmgr deployca
Arrêtez et exécutez zimbra d'une nouvelle manière:
zmcontrol stop zmcontrol start
Si vous avez vu SUKES, alors sautez et profitez (tous les services doivent être en mode Running).
Vous pouvez essayer de vous écraser sur le WEB, s'il ne se charge pas, ne désespérez pas, C'EST NORMAL.
Ces problèmes sont éliminés par une mise à niveau vers la même version !!!
Attention, les services Zimbra doivent être démarrés lors de la mise à niveau, sinon ECHEC!
Nous allons dans le dossier avec le zimbra téléchargé et saisissons:
./install.sh --platform-override
Zimbra demandera plusieurs fois si nous voulons une mise à jour, nous disons oui et continuons. Soit dit en passant, il récupérera les paramètres du système dans le fichier localconfig.xml que nous avons déplacé. Considérez-le comme un petit hack :-)
Après l'installation, vérifiez l'état de l'expéditeur:
zmcontrol status
Si tout va bien, vous pouvez vous connecter à WEB et vous connecter en tant que n'importe quel utilisateur de l'ancien serveur, les mots de passe seront les mêmes.
De plus, comme sur le pouce, téléchargez la dernière version 7.x.x.x, déballez-la et encore:
./install.sh --platform-override
À ce stade, nous sommes prêts à classer notre système d'exploitation à la prochaine étape.
Mais vous devez d'abord vérifier notre base de données pour la corruption:
/opt/zimbra/libexec/zmdbintegrityreport
S'il n'y a pas d'erreurs, alors allez-y, si les erreurs de mboxgroup
mboxgroup1.appointment error : Table upgrade required. Please do "REPAIR TABLE `appointment`" or dump/reload to fix it! mboxgroup1.data_source_item error : Table upgrade required. Please do "REPAIR TABLE `data_source_item`" or dump/reload to fix it! mboxgroup1.imap_folder error : Table upgrade required. Please do "REPAIR TABLE `imap_folder`" or dump/reload to fix it! mboxgroup1.mail_item error : Table upgrade required. Please do "REPAIR TABLE `mail_item`" or dump/reload to fix it! mboxgroup1.pop3_message ........ error : Table upgrade required. Please do "REPAIR TABLE `volume`" or dump/reload to fix it!
alors vous devez mettre à jour la version de la base de données:
/opt/zimbra/libexec/scripts/migrate20100913-Mysql51.pl
En ce moment passionnant, prenez un tambourin dans votre main droite et priez ...
Après la mise à jour, nous vérifions à nouveau les bases de données et les corrigeons si nécessaire:
/opt/zimbra/libexec/zmdbintegrityreport /opt/zimbra/libexec/zmdbintegrityreport -r
Si à nouveau l'erreur de verrouillage générale et lente, voyez ci-dessus comment y remédier.
Eh bien, la dernière chose à faire avant de mettre à niveau le système d'exploitation est:
charger des variables zimbra:
source /opt/zimbra/bin/zmshutil zmsetvars
sauvegarde MYSQL:
/opt/zimbra/mysql/bin/mysqldump --user=root --password=$mysql_root_password --socket=$mysql_socket --all-databases --single-transaction --master-data --flush-logs > {name dump}.sql
Si l'erreur revient, alors l'option ci-dessous:
/opt/zimbra/mysql/bin/mysqldump --user=root --password=$mysql_root_password --socket=$mysql_socket --all-databases --single-transaction --flush-logs > {name dump}.sql
sauvegarde ldap:
/opt/zimbra/libexec/zmslapcat /opt/zimbra/libexec/zmslapcat -c /opt/zimbra/libexec/zmslapcat -a
Ensuite, nous transférons à nouveau les dossiers
db, data, index, localconfig.xml
ainsi que les sauvegardes
sql ldap</code> , , scsi
? / , CentOS6.
, .. , :
6 Centos zimbra 7..., , 8.0.8 8.0.0!!!
8.0.8 CentOS7 ----> 8.5.1 ----> 8.6.0 :
zmprov ms <zimbraserverhostname> zimbraReverseProxyMailEnabled TRUE zimbraReverseProxyHttpEnabled TRUE
--->8.7.9 ------> 8.8.9.
.
sql ldap</code> , , scsi
? / , CentOS6.
, .. , :
6 Centos zimbra 7..., , 8.0.8 8.0.0!!!
8.0.8 CentOS7 ----> 8.5.1 ----> 8.6.0 :
zmprov ms <zimbraserverhostname> zimbraReverseProxyMailEnabled TRUE zimbraReverseProxyHttpEnabled TRUE
--->8.7.9 ------> 8.8.9.
.