IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    Zimbra:更新收件人地址栏的提示

    夜行人发表于 2016-07-26 11:43:57
    love 0

    我们遭遇的问题

    我们用的是Zimbra系统,大家在发邮件的时候,收件人地址自动完成,有3个地方来做

    1. GAL:全称是Global Address List,就是全局地址列表,这个优先级更高一些
    2. mailbox ranking table,这个存在于各个账号中,当你在填入收件人的时候,选择了其中一个地址,那么这个地址就会缓存在这个table中
    3. 个人邮箱中的「联系人」

    当某个账号修改了姓名,在发邮件的时候,在地址栏输入地址,显示的姓名还是旧的,这时需要处理上面所 列的3个地方

    解决办法

    更新下GAL

    将LDAP的信息同步到GAL,其中zimbra需要根据具体的设置来修改,默认就是zimbra或者InternalGAL

    zmgsautil forceSync -a galsync@example.com -n zimbra
    zmgsautil fullSync -a galsync@example.com -n zimbra

    更新GAL这一步实际不是必须,因为系统会每天同步一次的,假设你是修改后一天之后才发现还是就的,那么这里就不需要这一步,具体可以去后台看看,或者命令行也可以,不过我没有去查命令怎么看

    配置 -> 域名 -> 齿轮图标 -> 设置GAL

    Clear mailbox ranking table

    这是要逐个清理的,也就是你有100个账号,那么你就要遍历100个账号去处理

    for i in `cat  /tmp/all_account.txt`
    do
        echo $i;zmsoap -z -m $i RankingActionRequest/action @op=reset
    done
    
    # 上面每处理一个账号都会返回如下信息
    <RankingActionResponse xmlns="urn:zimbraMail"/>

    其中all_accout.txt的格式是

    user1
    user2

    联系人

    如果执行了这个操作,显示的还是旧的,那估计是该账号的「联系人」里保存的是旧的了,此时只能让该用户自行修改「联系人」中保存的信息了

    其他知识

    • GAL的信息是来自galsync@example.com这个邮箱账号,登录进去可以看到,不建议直接修改这里
    • 检查GAL,就是看我输入user,那么GAL会返回什么给我
    zmmailbox -z -m user@example.com autoComplete -v user


沪ICP备19023445号-2号
友情链接