我目前正在将我的 zimbra 从 Ubuntu 12.04 移到 Ubuntu 14.04 两边都是 zimbra OSE 8.7.1,我已经完成了所有这些步骤:使用特殊功能备份 zimbra:
- 包括所有隐藏文件
- 保留原始权限
- 使用 mdb_copy 传输 LDAP 数据库的实际大小,而不是保留的 90G 空间
从头开始安装 zimbra 8.7.1 将 /opt/zimbra 文件夹移动到 /opt/zimbra-origin 并使用所有备份文件(包括 mdb 文件)填充 /opt/zimbra/ 文件夹 安装(升级) 使用 -s 选项安装 删除(rm -rf /opt/zimbra/zimbramon/lib/x86_64-linux-gnu-thread-multi) 不兼容的软件(perl 不兼容) 重新生成 ssl 证书 修复权限(/opt/zimbra/libexec/zmfixperms --extended)
现在,当我执行 zmcontrol start 时,会出现输出:
Host couriel.myhost.com
Starting ldap...Done.
Search error: Unable to determine enabled services from ldap.
Enabled services read from cache. Service list may be inaccurate.
Starting ldap...Done.
Starting zmconfigd...Failed.
Starting zmconfigd...failed.
Starting logger...Failed.
Starting logswatch...[] INFO: master is down, falling back to replica...
[] FATAL: failed to initialize LDAP client
com.zimbra.cs.ldap.LdapException: LDAP error: : An error occurred while attempting to connect to server couriel.myhost.com:389: java.io.IOException: An error occurred while attempting to establish a connection to server couriel.myhost.com:389: java.net.ConnectException: Connection refused
ExceptionId:main:1502133838579:4c9955ae08e3afb7
Code:ldap.LDAP_ERROR
at com.zimbra.cs.ldap.LdapException.LDAP_ERROR(LdapException.java:90)
at com.zimbra.cs.ldap.unboundid.UBIDLdapException.mapToLdapException(UBIDLdapException.java:74)
at com.zimbra.cs.ldap.unboundid.UBIDLdapException.mapToLdapException(UBIDLdapException.java:40)
at com.zimbra.cs.ldap.unboundid.LdapConnectionPool.createConnPool(LdapConnectionPool.java:117)
at com.zimbra.cs.ldap.unboundid.LdapConnectionPool.createConnectionPool(LdapConnectionPool.java:63)
at com.zimbra.cs.ldap.unboundid.UBIDLdapContext.init(UBIDLdapContext.java:109)
at com.zimbra.cs.ldap.unboundid.UBIDLdapClient.init(UBIDLdapClient.java:39)
at com.zimbra.cs.ldap.LdapClient.getInstance(LdapClient.java:65)
at com.zimbra.cs.ldap.LdapClient.initialize(LdapClient.java:88)
at com.zimbra.cs.account.ldap.LdapProv.<init>(LdapProv.java:48)
at com.zimbra.cs.account.ldap.LdapProvisioning.<init>(LdapProvisioning.java:271)
at com.zimbra.cs.account.ldap.LdapProvisioning.<init>(LdapProvisioning.java:268)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at java.lang.Class.newInstance(Class.java:442)
at com.zimbra.cs.account.Provisioning.getInstance(Provisioning.java:287)
at com.zimbra.cs.account.Provisioning.getInstance(Provisioning.java:244)
at com.zimbra.cs.account.ProvUtil.initProvisioning(ProvUtil.java:1004)
at com.zimbra.cs.account.ProvUtil.main(ProvUtil.java:3955)
Caused by: LDAPException(resultCode=91 (connect error), errorMessage='An error occurred while attempting to connect to server couriel.myhost.com:389: java.io.IOException: An error occurred while attempting to establish a connection to server couriel.myhost.com:389: java.net.ConnectException: Connection refused')
at com.unboundid.ldap.sdk.LDAPConnection.connect(LDAPConnection.java:741)
at com.unboundid.ldap.sdk.LDAPConnection.connect(LDAPConnection.java:675)
at com.unboundid.ldap.sdk.LDAPConnection.<init>(LDAPConnection.java:507)
at com.unboundid.ldap.sdk.SingleServerSet.getConnection(SingleServerSet.java:229)
at com.unboundid.ldap.sdk.ServerSet.getConnection(ServerSet.java:98)
at com.unboundid.ldap.sdk.LDAPConnectionPool.createConnection(LDAPConnectionPool.java:616)
at com.unboundid.ldap.sdk.LDAPConnectionPool.<init>(LDAPConnectionPool.java:562)
at com.zimbra.cs.ldap.unboundid.LdapConnectionPool.createConnPool(LdapConnectionPool.java:112)
... 17 more
Caused by: java.io.IOException: An error occurred while attempting to establish a connection to server couriel.myhost.com:389: java.net.ConnectException: Connection refused
at com.unboundid.ldap.sdk.LDAPConnectionInternals.<init>(LDAPConnectionInternals.java:142)
at com.unboundid.ldap.sdk.LDAPConnection.connect(LDAPConnection.java:732)
... 24 more
zimbra logger service is not enabled! failed.
Starting mailbox...Failed.
Starting antispam...Done.
Starting opendkim...Done.
Starting mta...Failed.
Error: postfix not installed
Starting stats...Done.
和 zmcontrol 状态输出:
Connect: Unable to determine enabled services from ldap.
Enabled services read from cache. Service list may be inaccurate.
Host couriel.myhost.com
antispam Running
ldap Stopped
logger Stopped
zmlogswatchctl is not running
mailbox Stopped
mysql.server is not running.
zmmailboxdctl is not running.
mta Stopped
Error: postfix not installed
opendkim Running
stats Stopped
zmconfigd Stopped
zmconfigd is not running.
netstat -antp 显示没有任何东西在监听端口 389。有什么想法吗?
答案1
我创建了一个新的自签名证书来验证这是否是导致此问题的根本原因。由于这是一个免费的自签名证书,因此我将其有效期设置为 3 年:
/opt/zimbra/bin/zmcertmgr createca -new
/opt/zimbra/bin/zmcertmgr createcrt -new -days 1095
/opt/zimbra/bin/zmcertmgr deploycrt self
/opt/zimbra/bin/zmcertmgr deployca
答案2
我所在公司的 zimbra 邮件出现问题,尝试进入界面时,系统提示“网络服务出现错误”,因此不允许访问帐户。查看日志后,我们注意到了这些错误。
日志/opt/zimbra/log/mailbox.log
引起原因:com.zimbra.cs.ldap.LdapException:LDAP 错误:-无法获取连接:尝试连接服务器 correo.famadeamerica.com:389: jav$ ExceptionId:qtp1025799482-6344 时发生错误:https://127.0.0.1:7071/service/admin/soap/AuthRequest:1662697804626:9b05cc226919cfaf 代码:ldap.LDAP_ERROR 在 com.zimbra.cs.ldap.LdapException.LDAP_ERROR(LdapException.java:90) 在 com.zimbra.cs.ldap.unboundid.UBIDLdapException.mapToLdapException(UBIDLdapException.java:74) 在 com.zimbra.cs.ldap.unboundid.UBIDLdapContext.mapToLdapException(UBIDLdapContext.java:221) 在 com.zimbra.cs.ldap.unboundid.UBIDLdapContext.getConnection(UBIDLdapContext.java:199) 在 com.zimbra.cs.ldap.unboundid.UBIDLdapContext.(UBIDLdapContext.java:159) 在com.zimbra.cs.ldap.unboundid.UBIDLdapClient.getContextImpl(UBIDLdapClient.java:90)