我最近将笔记本电脑从 12.04 LTS 升级到 14.04 LTS,没有出现任何问题。我尝试做的第一件事是将 Evo 重新连接到我们公司的 Exchange 服务器。我安装了 evo-mapi 和 evo-ews 包,并尝试使用 ews 和 mapi 连接到 Exchange 服务器。在这两种情况下,我都收到错误,即 evo 无法解析主机名。在 EWS 的情况下,我收到错误,即无法找到运行 EWS 服务的服务器:
[ raptor ] /var/crash > EWS_DEBUG=2 evolution
(evolution:5257): camel-WARNING **: Failed to initialize NSS SQL database in sql:/etc/pki/nssdb: NSS error -8187
sh: 1: /usr/lib/nspluginwrapper/i386/linux/npviewer: not found
sh: 1: /usr/lib/nspluginwrapper/i386/linux/npviewer: not found
*** NSPlugin Wrapper *** ERROR: failed to execute NSPlugin viewer
< HTTP/1.1 2 Cannot resolve hostname (myserver.mydomain.com)
< Soup-Debug-Timestamp: 1408604840
< Soup-Debug: ESoapMessage 0 (0x7fe051025db0)
(更改了上面的服务器名称...)
对于 MAPI,当我尝试进行身份验证(无论是基本身份验证还是 Kerberos 身份验证 - 没有区别)时,我收到(非常奇怪的)错误:“解析‘http’时出错:名称或服务未知”。
我尝试使用 nslookup/dig 来解析我在配置中指定的主机名。这非常有效 - 所以基本上解析器似乎可以正常工作。
我的 /etc/hosts 文件如下所示:
127.0.0.1 localhost
127.0.1.1 raptor raptor.lenze.com
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
主持人/etc/nsswitch.conf
的话:
hosts: files dns
我从此行删除了一些(我认为)与 M$ 相关的内容。
知道如何解决这个问题吗?我肯定我做错了什么...至少 MAPI 在 12.04 中可以工作(或多或少)。
答案1
我对这个问题进行了更深入的研究,最终让 MAPI 再次正常工作。
正如我上面所写的,evo 尝试连接到名为“http”的主机 - 至少,它抱怨说无法解析主机名。我使用 tcpdump 捕获了一些包,确实:evo(或 MAPI 插件)请求主机“http”。所以最后我决定添加一个条目到/etc/hosts
:
uuu.vvv.www.xxx http http.domain.com
我将此条目指向运行 EWS 和自动配置服务的服务器 - 我不是 Exchange 专家,我不确定此服务器在 Exchange 环境中的用途。它似乎类似于负载平衡器。
无论如何:添加此服务器有帮助。我能够进行身份验证,并且在 Evolution 中创建了 MAPI 帐户。
创建帐户后,我/etc/hosts
再次更改并将主机“http”指向普通的 Linux 服务器。MAPI 帐户仍可使用此条目。因此,evo 似乎只需要能够解析主机。如果删除该条目,evo 会抛出错误,即无法解析主机“http”。