Sucedió aquí de alguna manera transfiero este milagro de una máquina de hierro a una virtual. La situación es francamente deprimente: el antiguo Debian con versiones del kernel 2 y Zimbra 6.0.4 Relocation se planeó para CentOS 7 y ZImbra 8.8.
Debo decir de inmediato que para completar este evento, debes amar completamente el BDSM, y no la luz, sino el hardcore con éxitos debajo del cinturón. De lo contrario, nada funcionará para usted y todo se interpondrá en el medio del camino.
Así que vamos a ponerlo en orden.
Inicialmente, necesitábamos implementar una versión de Zimbra idéntica al servidor anterior, en mi caso era Zimbra 6.0.4 para CentOS 5, desafortunadamente era la versión más avanzada del sistema operativo para este software en ese momento.
Descargar desde aquí zimbra.
wget https://files2.zimbra.com/downloads/6.0.4_GA/zcs-6.0.4_GA_2038.RHEL5_64.20091214192925.tgz
Y desempaquetar:
tar -xvf https://files2.zimbra.com/downloads/6.0.4_GA/zcs-6.0.4_GA_2038.RHEL5_64.20091214192925.tgz
Antes de instalarlo, configure CentOS. En la versión 5, desactive Selinux, Postfix / Sendmail (cualquiera) y configure los nabos para yum.
vi /etc/sysconfig/selinux
Allí establecemos el valor:
SELINUX=disabled
Paramos y apagamos los servicios para que durante la instalación y actualización no interfieran con nosotros:
service iptables stop chkconfig iptables off service sendmail stop chkconfig sendmail off service postfix stop chkconfig postfix off
Preparamos nabos para ñam. En este archivo necesita # comentar las líneas que comienzan con espejo:
vi /etc/yum.repos.d/CentOS-Base.repo
Y editar
'baseurl='
En lugar de 5.11, configuramos nuestra versión.
baseurl=http://vault.centos.org/5.11/os/$basearch/
A continuación, actualice CentOS
yum update
Después de actualizar el sistema operativo, queda solo hacer una configuración, porque zimbra está muy celoso de DNS, esta es una configuración muy importante y sin ella el proceso de instalación simplemente no funcionará.
vi /etc/hosts
En él registramos su ip y el nombre completo del servidor - IP FQNS NS.
Todo está en ese orden, de lo contrario nuevamente es un error. En mi caso, el servidor se llamaba srvmail (o más bien, su registro mx).
192.168.0.2 srvmail.domail.local srvmail
A continuación, puede continuar con la instalación, ir al directorio con el zimbra desempaquetado de antemano y ejecutar:
./install.sh --platform-override
Bandera
"--platform-override"
le dice al instalador qué instalar en cualquier caso (reescriba la plataforma a la fuerza).
Otro indicador útil es
"-s"
este indicador le dice al instalador que queremos instalar solo paquetes ejecutables y no configurar.
A continuación, el instalador comenzará la instalación y, si todo se realizó correctamente, no habrá errores. Al final de la instalación, verificamos el estado del servicio zimbra:
zmcontrol status
Si todos los servicios están en el estado En
Running
, entonces todo está bien, luego continúe.
Detener nuestro zimbru:
zmcontrol stop
Después de instalar el zimbra, necesitamos transferir la base de datos, así como el archivo de configuración del antiguo servidor de zimbra al nuevo.
Necesitamos carpetas
db data index
ubicado en
/opt/zimbra
así como archivo
/opt/zimbra/conf/localconfig.xml
Los datos de la carpeta en el nuevo servidor se pueden eliminar o hacer una copia de seguridad.
Dado que las carpetas y los archivos durante la transferencia podrían cambiar el host (permisos), debemos solucionar esto:
chown -R zimbra.zimbra /opt/zimbra /opt/zimbra/libexec/zmfixperms
Además, antes de ejecutar una prueba, es necesario verificar si hay errores en la base de datos SQL, puede hacerlo utilizando la utilidad estándar
mysqlcheck
o usando la utilidad incorporada de Zimbro
zmdbintegrityreport
Ejecute mysql y ejecute el script:
/opt/zimbra/bin/mysql.server start /opt/zimbra/libexec/zmdbintegrityreport /opt/zimbra/libexec/zmdbintegrityreport -r
La primera línea verifica si hay errores, y la segunda verifica e inmediatamente intenta ser reparada.
Si no se han producido errores, aplaude y mire a continuación, si hay errores:
mysql.general_log Error : You can't use locks with log tables. mysql.slow_log Error : You can't use locks with log tables.
Entonces debes hacer lo siguiente:
cd /opt/zimbra/db/data/mysql ls -al *log.frm mv *log.frm /tmp/ /opt/zimbra/libexec/zmdbintegrityreport
Si este último se completa sin errores, detenga mysql y continúe.
/opt/zimbra/bin/mysql.server stop
Ahora necesitamos cambiar las contraseñas a la base ldap. Comenzamos ldap:
ldap start
En la primera versión con el indicador "r", cambiamos la contraseña para el usuario root, y en la segunda línea para el usuario zimbra, detenemos ldap nuevamente:
zmldappasswd -r newrootpass zmldappasswd newpass ldap stop
Si amas el BDSM y el ocultismo, lee el siguiente párrafo detenidamente. Si no, siéntase libre de saltar.
Para los fanáticos de BDSMAhora un poco de estrangulamiento)) Entiendo que ya estás bastante cansado y que este aburrimiento es un poco molesto, pero déjame explicarte algo. Cuando transferimos las bases (ldap y sql) también transferimos sus accesos (usuarios y contraseñas), cuando configuramos un nuevo zimbru, generaba automáticamente contraseñas para las bases y se almacenaban en el archivo /opt/zimbra/conf/localconfig.xml. Y si intentáramos simplemente transferir las bases e inmediatamente comenzar los servicios de Zimbra, nos enviarían nafig y no comenzarían, porque las contraseñas no coincidirían. En principio, puede ir hacia otro lado sin copiar el archivo de configuración, pero luego debe comparar la configuración con el servidor anterior para cambiarlos en el nuevo. Hay un comando especial zmlocalconfig para esto.
Nos fijamos en la configuración, por ejemplo, ldap:
zmlocalconfig -s | grep ldap
Los usamos en el nuevo servidor:
zmlocalconfig -e < >=< >
Lo más importante es cambiar las contraseñas para todos los ldap y mysql.
Con mysql, todo es mucho más complicado, debe iniciar el servicio con el restablecimiento de la tabla de privilegios y luego aplicar la contraseña igual a las configuraciones antiguas de zimbra:
vi /opt/zimbra/bin/mysql.server
encuentra la línea allí
(--ledir=${mysql_directory}/libexec < /dev/null > /dev/null 2>&1 &)
Y cambiarlo a
(--ledir=${mysql_directory}/libexec < /dev/null > /dev/null 2>&1 --skip-grant-tables &)
Compruebe si mysql se está ejecutando, en caso afirmativo lo extinguimos
/opt/zimbra/bin/mysql.server stop
A continuación, ejecute el pómulo en un nuevo
mysql.server start
A continuación, vaya a MySQL sin contraseña (MySQL) y contraseñas Pedir igual Zimbru de edad (!!! necesita ejecutar en el viejo Zimbru !!!!!!!!!!)
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
Escribimos los cambios y salimos
FLUSH PRIVILEGES; exit;
Luego, reinicie el pómulo deteniéndose y comenzando
mysql.server stop mysql.server start
Comprobar la capacidad de servicio
mysql zimbra
si no tiene errores, regocíjate.
deja de mysql
/opt/zimbra/bin/mysql.server stop
Luego, nuevamente nos aseguramos de que los servicios
zimbra, mysql, ldap
no se estén ejecutando:
ps -aux |grep slapd ps -aux |grep sql zmcontrol status
Si algo se está ejecutando de repente, debes matar o detenerte.
Bueno, ha llegado el momento de su primer lanzamiento de un nuevo servidor. Doblamos nuestros dedos con una cruz y no lo soltamos hasta que esté completamente lanzado, si necesita usar una pandereta a mano:
zmcontrol start
Hay 2 opciones para el desarrollo de eventos:
Al inicio,
figdit se rompe y dobla ldap
Verifique nuevamente la contraseña de zimbra y root. O en el lanzamiento, ldap ya se estaba ejecutando y solo el
ganado desatento perdió algo.
Al iniciar
figachit se rompe y se dobla mysql, vea el punto 1
Bueno, la opción cuando el buzón no comienza
Entonces necesita generar un nuevo certificado:
Antes de eso, debe eliminar el antiguo almacén de claves, de lo contrario, FAIL lo espera:
rm -rf /opt/zimbra/mailboxd/etc/keystone cd /opt/zimbra/bin ./zmcertmgr createca -new ./zmcertmgr createcrt -new -days 1825 ./zmcertmgr deploycrt self ./zmcertmgr deployca
Deténgase y ejecute zimbra de una nueva manera:
zmcontrol stop zmcontrol start
Si viste SUKES, salta y disfruta (todos los servicios deben estar en estado Running).
Puede intentar ingresar a la WEB, si no se carga, no se desespere, ESTO ES NORMAL.
¡Estos problemas se eliminan mediante una actualización A LA MISMA VERSIÓN!
Precaución Los servicios de Zimbra deben iniciarse al actualizar, de lo contrario ¡FALLARÁ!
Vamos a la carpeta con el zimbra descargado e ingresamos:
./install.sh --platform-override
Zimbra preguntará un par de veces si queremos una actualización, decimos que sí y continuamos. Por cierto, recogerá la configuración del sistema desde el localconfig.xml que movimos. Piense en ello como un pequeño truco :-)
Después de la instalación, verifique el estado del remitente:
zmcontrol status
Si todo está bien, puede acceder a WEB e iniciar sesión como cualquier usuario del servidor anterior, las contraseñas serán las mismas.
Además, como en el pulgar, descargue la última versión 7.x.x.x, descomprímalo y nuevamente:
./install.sh --platform-override
En esta etapa, estamos listos para calificar nuestro sistema operativo para el siguiente paso.
Pero primero debe verificar nuestra base de datos en busca de corrupción:
/opt/zimbra/libexec/zmdbintegrityreport
Si no hay errores, continúe, si hay errores 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!
entonces necesita actualizar la versión de la base de datos:
/opt/zimbra/libexec/scripts/migrate20100913-Mysql51.pl
En este emocionante momento, toma una pandereta en tu mano derecha y reza ...
Después de la actualización, verificamos las bases de datos nuevamente y las corregimos si es necesario:
/opt/zimbra/libexec/zmdbintegrityreport /opt/zimbra/libexec/zmdbintegrityreport -r
Si nuevamente se produce el error de bloqueo general y lento, vea arriba cómo solucionarlo.
Bueno, lo último que debe hacer antes de actualizar el sistema operativo es:
cargar variables zimbra:
source /opt/zimbra/bin/zmshutil zmsetvars
copia de seguridad de 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 el error regresa, entonces la opción a continuación:
/opt/zimbra/mysql/bin/mysqldump --user=root --password=$mysql_root_password --socket=$mysql_socket --all-databases --single-transaction --flush-logs > {name dump}.sql
ldap de respaldo:
/opt/zimbra/libexec/zmslapcat /opt/zimbra/libexec/zmslapcat -c /opt/zimbra/libexec/zmslapcat -a
A continuación, transferimos nuevamente las carpetas
db, data, index, localconfig.xml
y las copias de seguridad.
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.
.