The X Display Manager (XDM) is an optional part of the X Window System that is used for login session management. This is useful for several types of situations, including minimal “X Terminals”, desktops, and large network display servers. Since the X Window System is network and protocol independent, there are a wide variety of possible configurations for running X clients and servers on different machines connected by a network. XDM provides a graphical interface for choosing which display server to connect to, and entering authorization information such as a login and password combination.
Think of XDM as providing the same functionality to the user as the getty(8) utility (see 節 25.3.2, “Configuration” for details). That is, it performs system logins to the display being connected to and then runs a session manager on behalf of the user (usually an X window manager). XDM then waits for this program to exit, signaling that the user is done and should be logged out of the display. At this point, XDM can display the login and display chooser screens for the next user to login.
The XDM daemon program is
located in /usr/local/bin/xdm
. This program
can be run at any time as root
and it will
start managing the X display on the local machine. If
XDM is to be run every
time the machine boots up, a convenient way to do this is by
adding an entry to /etc/ttys
. For more
information about the format and usage of this file, see 節 25.3.2.1, “Adding an Entry to /etc/ttys
”. There is a line in the default
/etc/ttys
file for running the
XDM daemon on a virtual terminal:
ttyv8 "/usr/local/bin/xdm -nodaemon" xterm off secure
By default this entry is disabled; in order to enable it
change field 5 from off
to
on
and restart init(8) using the
directions in 節 25.3.2.2, “Force init
to Reread
/etc/ttys
”. The first field, the
name of the terminal this program will manage, is
ttyv8
. This means that
XDM will start running on the 9th
virtual terminal.
The XDM configuration directory
is located in /usr/local/lib/X11/xdm
. In
this directory there are several files used to change the
behavior and appearance of
XDM. Typically these files will
be found:
File | Description |
---|---|
Xaccess | Client authorization ruleset. |
Xresources | Default X resource values. |
Xservers | List of remote and local displays to manage. |
Xsession | Default session script for logins. |
Xsetup_ * | Script to launch applications before the login interface. |
xdm-config | Global configuration for all displays running on this machine. |
xdm-errors | Errors generated by the server program. |
xdm-pid | The process ID of the currently running XDM. |
Also in this directory are a few scripts and programs used to set up the desktop when XDM is running. The purpose of each of these files will be briefly described. The exact syntax and usage of all of these files is described in xdm(1).
The default configuration is a simple rectangular login window with the hostname of the machine displayed at the top in a large font and “Login:” and “Password:” prompts below. This is a good starting point for changing the look and feel of XDM screens.
The protocol for connecting to
XDM-controlled displays is called
the X Display Manager Connection Protocol (XDMCP). This file
is a ruleset for controlling XDMCP connections from remote
machines. It is ignored unless the xdm-config
is changed to listen for remote connections. By default, it does
not allow any clients to connect.
This is an application-defaults file for the display chooser and login screens. In it, the appearance of the login program can be modified. The format is identical to the app-defaults file described in the X11 documentation.
This is the default session script for
XDM to run after a user has logged
in. Normally each user will have a customized session script
in ~/.xsession
that overrides this
script.
These will be run automatically before displaying the
chooser or login interfaces. There is a script for each
display being used, named Xsetup_
followed
by the local display number (for instance
Xsetup_0
). Typically these scripts will
run one or two programs in the background such as
xconsole
.
This contains settings in the form of app-defaults that are applicable to every display that this installation manages.
In order for other clients to connect to the display
server, you must edit the access control rules, and enable the connection
listener. By default these are set to conservative values.
To make XDM listen for connections,
first comment out a line in the xdm-config
file:
! SECURITY: do not listen for XDMCP or Chooser requests ! Comment out this line if you want to manage X terminals with xdm DisplayManager.requestPort: 0
and then restart XDM. Remember that
comments in app-defaults files begin with a “!”
character, not the usual “#”. More strict
access controls may be desired —— look at the example
entries in Xaccess
, and refer to the
xdm(1) manual page for further infomation.
Several replacements for the default XDM program exist. One of them, kdm (bundled with KDE) is described later in this chapter. The kdm display manager offers many visual improvements and cosmetic frills, as well as the functionality to allow users to choose their window manager of choice at login time.
本文及其他文件,可由此下載: ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/。
若有 FreeBSD 方面疑問,請先閱讀
FreeBSD 相關文件,如不能解決的話,再洽詢
<questions@FreeBSD.org>。
關於本文件的問題,請洽詢
<doc@FreeBSD.org>。