Ubuntu 12.04 桌面 CentrifyDC 问题

Ubuntu 12.04 桌面 CentrifyDC 问题

当我尝试与 Active Directory 集成时,Ubuntu 12.04 遇到了问题。

我安装了 CentrifyDC 并加入了 DC。一切正常,直到我重新启动计算机,当我尝试使用用户名和域密码登录时,我无法登录。然后我使用我的默认 ubuntu 用户名登录,如果我尝试命令 adinfo,centrifydc 会处于断开连接模式。3 分钟后,没有任何干预,当我输入 adinfo 命令时,centryfidc 会显示已连接,我可以使用我的域用户登录并通过。

同样的情况是,如果我执行命令:/etc/init.d/centrifydc 重新启动,它就会显示已连接。

有人能告诉我为什么启动时无法连接吗?当我输入 adinfo --diag 时出现错误:找不到 SPN:无法绑定到 DC。

答案1

最后,通过在 /etc/network/if-up.d/ 中创建脚本解决了问题

sudo vim /etc/network/if-up.d/centrify

内容:

    #!/bin/sh

if [ "$IFACE" = lo ]; then
        exit 0 
fi

/etc/init.d/centrifydc restart
initctl emit centrify-connected

在我输入之后:

sudo chown root /etc/network/if-up.d/centrify
sudo chgrp root /etc/network/if-up.d/centrify
sudo chmod 755 /etc/network/if-up.d/centrify

然后我使用正确的权限(chown root、chgrp root、chmod 644)修改了 /etc/init/lightdm.conf,并且只添加了一个启动条件。

sudo chown root /etc/init/lightdm.conf 
sudo chgrp root /etc/init/lightdm.conf 
sudo chmod 644 /etc/init/lightdm.conf 

然后

sudo vim /etc/init/lightdm.conf 

我只添加了一个启动条件。

# LightDM - light Display Manager
#
# The display manager service manages the X servers running on the
# system, providing login and auto-login services
#
# based on gdm upstart script

description "LightDM Display Manager"
author      "Robert Ancell <[email protected]>"

start on ((filesystem
           and runlevel [!06]
           and started dbus
           and (drm-device-added card0 PRIMARY_DEVICE_FOR_DISPLAY=1
                or stopped udev-fallback-graphics)
           **and centrify-connected)**
          or runlevel PREVLEVEL=S)

stop on runlevel [016]

emits login-session-start
emits desktop-session-start
emits desktop-shutdown

script
    if [ -n "$UPSTART_EVENTS" ]
    then
        # Check kernel command-line for inhibitors, unless we are being called
        # manually
        for ARG in $(cat /proc/cmdline); do
            if [ "$ARG" = "text" ]; then
        plymouth quit || : 
                stop
        exit 0
            fi
        done

    [ ! -f /etc/X11/default-display-manager -o "$(cat /etc/X11/default-display-manager 2>/dev/null)" = "/usr/bin/lightdm" -o "$(cat /etc/X11/default-display-manager 2>/dev/null)" = "/usr/sbin/lightdm" ] || { stop; exit 0; }

    if [ "$RUNLEVEL" = S -o "$RUNLEVEL" = 1 ]
    then
        # Single-user mode
        plymouth quit || :
        exit 0
    fi
    fi

    exec lightdm
end script

post-stop script
    if [ "$UPSTART_STOP_EVENTS" = runlevel ]; then
        initctl emit desktop-shutdown
    fi
end script

当你做这个的时候一定要小心!

相关内容