7.4. 显示管理器启动的 X 服务器数量

这是之前方法的修改版本。 将其添加到您的 init 脚本中(我猜您可能没有添加!)

---------------------------------------------------------------------------------------
#
#the same like XF86Config but for gdm.conf & Xservers
#
for i in xdm/Xservers gdm/gdm.conf; do
    if [ -L "/etc/X11/$i" ]; then
        DumbCon=`sed -n 's/.*dumbcon=\([0-9]*\).*/\1/p' /proc/cmdline`
        [ -n "$DumbCon" ] || DumbCon=0
        [ -r "/etc/X11/$i.$DumbCon" ] && ln -sf "/etc/X11/$i.$DumbCon" "/etc/X11/$i"
    fi
done
echo "Setting up display managers for `expr $DumbCon + 1` Xservers"
---------------------------------------------------------------------------------------
      

这将调整正确的/etc/X11/xdm/Xservers/etc/X11/gdm/gdm.config根据启动行参数 dumbcon=n(记住 n+1= X 用户/会话数)。

您必须按照以下假设创建配置文件

"i" 仅代表/etc/X11/xdm/Xserver/etc/X11/gdm/gdm.conf.

...等等。

因此

如果您在没有 dumbcon=n 或使用 dumbcon=0 (例如标准内核) 的情况下启动,您的显示管理器将使用相应的 XF86Config 文件启动单个 X 服务器。

如果您使用 dumbcon=1 启动,显示管理器将自动启动 2 个 X 服务器。

如果您使用 dumbcon=2 启动,则在启动完成后,您将在 3 个显示器上获得 3 个登录提示符。

请记住,每个 X 服务器都应该有自己的配置文件,并且应该在显示管理器配置文件中正确指定。 在使用激活的显示管理器和添加到 init 脚本的此内容重新启动之前,请查看配置文件。

如果您只有一个 XFree 配置文件(请参阅 第 4.6 节“对于没有 DRI 的显卡”),也可以使用此方法。 在这种情况下,您将必须指定正确的布局,而不是正确的 XFree 配置文件。