我以某种方式将这个奇迹从一台铁器机器转移到了一个虚拟机器。 坦率地说,情况令人沮丧-带有内核2版本和Zimbra 6.0.4的旧Debian已计划在CentOS 7和ZImbra 8.8上进行重定位。
我必须立即说,要完成此事件,您必须完全爱BDSM,而不是轻便,但要坚守核心。 否则,您将一事无成,一切都会陷入困境。
因此,让我们按顺序进行处理。
最初,我们需要部署与旧服务器相同的Zimbra版本,在我的情况下,它是用于CentOS 5的Zimbra 6.0.4,不幸的是,它是当时该软件的最高级的OS版本。
从这里下载zimbra。
wget https://files2.zimbra.com/downloads/6.0.4_GA/zcs-6.0.4_GA_2038.RHEL5_64.20091214192925.tgz 
并解压缩:
 tar -xvf https://files2.zimbra.com/downloads/6.0.4_GA/zcs-6.0.4_GA_2038.RHEL5_64.20091214192925.tgz 
在安装它之前,请配置CentOS。 在版本5中,禁用Selinux,Postfix / Sendmail(二者之一)并为yum设置萝卜。
 vi /etc/sysconfig/selinux 
在那里我们设置值:
 SELINUX=disabled 
我们停止并关闭服务,以便在安装和更新期间它们不会干扰我们:
 service iptables stop chkconfig iptables off service sendmail stop chkconfig sendmail off service postfix stop chkconfig postfix off 
我们为百胜准备了萝卜。 在此文件中,您需要#注释掉以mirror开头的行:
 vi /etc/yum.repos.d/CentOS-Base.repo 
然后编辑
 'baseurl=' 
而不是5.11,我们设置了版本。
 baseurl=http://vault.centos.org/5.11/os/$basearch/ 
接下来,更新CentOS
 yum update 
更新操作系统后,它仅需进行一项设置,因为 zimbra非常嫉妒DNS,这是非常重要的设置,没有它,安装过程将无法正常进行。
 vi /etc/hosts 
在其中,我们注册您的IP和完整的服务器名称-IP FQNS NS。
一切都按此顺序进行,否则再次出错。 就我而言,该服务器称为srvmail(或更确切地说,其mx记录)。
 192.168.0.2 srvmail.domail.local srvmail 
接下来,您可以继续安装,进入预先解压了zimbra的目录并执行:
 ./install.sh --platform-override 
旗
 "--platform-override" 
告诉安装程序无论如何安装(强制重写平台)。
另一个有用的标志是
"-s"该标志告诉安装程序我们只想安装可执行软件包而不配置。
接下来,安装程序将开始安装,如果一切都正确完成,则不会有错误。 在安装结束时,我们检查zimbra服务的状态:
 zmcontrol status 
如果所有服务都处于“ 
Running状态,则一切正常,然后继续。
停止我们的zimbru:
 zmcontrol stop 
安装完zimbra之后,我们需要将数据库以及配置文件从旧的zimbra服务器传输到新的服务器。
我们需要文件夹
 db data index 
位于
 /opt/zimbra 
以及文件
 /opt/zimbra/conf/localconfig.xml 
可以删除或备份新服务器上的文件夹数据。
由于传输过程中的文件夹和文件可能会更改主机(权限),因此我们需要修复此问题:
 chown -R zimbra.zimbra /opt/zimbra /opt/zimbra/libexec/zmfixperms 
另外,在测试运行之前,有必要检查sql数据库是否存在错误,您可以使用标准实用程序执行此操作
 mysqlcheck 
或使用内置的Zimbro实用程序
 zmdbintegrityreport 
运行mysql并运行脚本:
 /opt/zimbra/bin/mysql.server start /opt/zimbra/libexec/zmdbintegrityreport /opt/zimbra/libexec/zmdbintegrityreport -r 
第一行检查错误,第二行检查并立即尝试修复。
如果没有发生错误,请拍拍手,如果有错误,请看下面:
 mysql.general_log Error : You can't use locks with log tables. mysql.slow_log Error : You can't use locks with log tables. 
然后,您需要执行以下操作:
 cd /opt/zimbra/db/data/mysql ls -al *log.frm mv *log.frm /tmp/ /opt/zimbra/libexec/zmdbintegrityreport 
如果后者顺利完成,则停止mysql并继续。
 /opt/zimbra/bin/mysql.server stop 
现在,我们需要将密码更改为ldap。 我们开始ldap:
 ldap start 
在第一个带有“ r”标志的版本中,我们更改root用户的密码,在第二行中为zimbra用户更改密码,我们再次停止ldap:
 zmldappasswd -r newrootpass zmldappasswd newpass ldap stop 
如果您喜欢BDSM和神秘主义,请仔细阅读下一段。 如果没有,请随时跳过。
对于性虐待的粉丝现在有点节流))我知道您已经很累了,这种沉闷有点令人讨厌,但是让我向您解释一下。 当我们传输基础(ldap和sql)时,我们也传输了它们的访问权限(用户和密码),当我们设置新的zimbru时,它会自动为基础生成密码,并将它们存储在文件/opt/zimbra/conf/localconfig.xml中。 而且,如果我们只是尝试转移基础并立即启动Zimbra服务,则它们会向我们发送nafig而不是启动,因为密码不匹配。 原则上,您可以采用另一种方法而不复制设置文件,但是您必须将设置与旧服务器进行比较,以在新服务器上进行更改。 为此有一个特殊的zmlocalconfig命令。
我们来看一下ldap的设置:
 zmlocalconfig -s | grep ldap 
我们在新服务器上使用它们:
 zmlocalconfig -e < >=< > 
最重要的是更改所有ldap和mysql的密码。
使用mysql,一切都变得更加复杂,您需要使用特权表重置启动服务,然后应用与旧的zimbra配置相同的密码:
 vi /opt/zimbra/bin/mysql.server 
在那找到线
 (--ledir=${mysql_directory}/libexec < /dev/null > /dev/null 2>&1 &) 
并将其更改为
 (--ledir=${mysql_directory}/libexec < /dev/null > /dev/null 2>&1 --skip-grant-tables &) 
检查mysql是否正在运行,如果是,我们将其熄灭
 /opt/zimbra/bin/mysql.server stop 
接下来,在一个新的
 mysql.server start 
接下来,在没有密码的情况下转到mysql(mysql),并设置与旧的zimbra相等的密码(!!!您需要在旧的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 
我们写下更改并退出
 FLUSH PRIVILEGES; exit; 
接下来,通过停止并重新启动restart骨
 mysql.server stop  mysql.server start 
检查可维修性
 mysql zimbra 
如果没有错误,那就很高兴。
停止mysql
 /opt/zimbra/bin/mysql.server stop 
 接下来,我们再次确保
zimbra, mysql, ldap服务未运行:
 ps -aux |grep slapd ps -aux |grep sql zmcontrol status 
如果有突然发生的事情,您需要杀死或停止。
好了,您首次启动新服务器的时刻到了。 如果您需要使用手鼓,我们会用十字架弯曲手指,直到完全弹起之前不要松手:
 zmcontrol start 
有两种开发事件的选项:
在启动时, 
figdit断裂并弯曲ldap
再次检查zimbra和root密码。 或在启动时ldap已经运行,而您只是
不专心的牛错过了一些东西。
启动
figachit中断和mysql弯曲时,请参见要点1
好了,邮寄时该选项无法启动
因此,您需要生成一个新证书:
在此之前,您需要删除旧的密钥库,否则FAIL等待您:
 rm -rf /opt/zimbra/mailboxd/etc/keystone cd /opt/zimbra/bin ./zmcertmgr createca -new ./zmcertmgr createcrt -new -days 1825 ./zmcertmgr deploycrt self ./zmcertmgr deployca 
停止并以新方式运行zimbra:
 zmcontrol stop zmcontrol start 
如果您看到SUKES,那就跳起来享受一下(所有服务都应处于“运行”状态)。
您可以尝试崩溃进入WEB,如果未加载,请不要失望,这是正常现象。
通过升级到相同版本消除了这些麻烦! 
警告升级时必须启动Zimbra服务,否则将失败!
我们转到包含下载的zimbra的文件夹,然后输入:
 ./install.sh --platform-override 
Zimbra将询问几次我们是否要更新,我们说是,然后继续。 顺便说一下,它将从我们移动的localconfig.xml中获取系统的设置。 认为这是一个小技巧:-)
安装后,检查邮件程序的状态:
 zmcontrol status 
如果一切正常,那么您可以进入WEB并以旧服务器上的任何用户身份登录,密码将相同。
此外,根据经验,下载最新的7.x.x.x版本,再将其解压缩:
 ./install.sh --platform-override 
在此阶段,我们准备将操作系统分级到下一步。
但是首先,您需要检查我们的数据库是否损坏:
 /opt/zimbra/libexec/zmdbintegrityreport 
如果没有错误,请继续操作,如果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! 
那么您需要更新数据库版本:
 /opt/zimbra/libexec/scripts/migrate20100913-Mysql51.pl 
在这个激动人心的时刻,右手铃鼓祈祷...
更新后,我们再次检查数据库,并在必要时进行修复:
 /opt/zimbra/libexec/zmdbintegrityreport /opt/zimbra/libexec/zmdbintegrityreport -r 
如果再次出现一般锁定和慢速锁定错误,则请参见上文中的解决方法。
好吧,升级操作系统之前要做的最后一件事是:
加载zimbra变量:
 source /opt/zimbra/bin/zmshutil zmsetvars 
备份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 
如果错误返回,则下面的选项:
 /opt/zimbra/mysql/bin/mysqldump --user=root --password=$mysql_root_password --socket=$mysql_socket --all-databases --single-transaction --flush-logs > {name dump}.sql 
备用ldap:
 /opt/zimbra/libexec/zmslapcat /opt/zimbra/libexec/zmslapcat -c /opt/zimbra/libexec/zmslapcat -a 
接下来,我们再次传输文件夹
db, data, index, localconfig.xml以及备份
 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.
.