我以某种方式将这个奇迹从一台铁器机器转移到了一个虚拟机器。 坦率地说,情况令人沮丧-带有内核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.
.