CDE Startup Troubleshooting

Problem Description

Problems during Startup of CDE. The aim of this document is getting a CDE-login-mask.
Problems of the user-specific CDE Login are discussed in another document ("CDE: Login Problems").

Symptoms

CDE Login-Mask does not appear; CDE startup failed; iterated trials to start CDE are failing

Error Message

CDE Login Server: Failure|N/A|OK
Couldn't open Xpointer device
Cannot establish any listening sockets
The XServer cannot be started on display
Suspending Desktop Login

Configuration Info

Operating System - HP-UX
Version - 10.x, 11.x
Hardware System - HP 9000
Series - S800, S700
Application - CDE, Common Desktop Environment
Subsystem - CDE

Solution

Last message at the console:

Which messages appear at the system-console last regarding the CDE-Startup?
Line: Start CDE login Server

Console message
regarding CDE / Status-output / Solution in part
Start CDE login Server / does not appear / check inittab
Start CDE login Server / N/A / Enable CDE
Start CDE login Server / busy / Update Printers
Start CDE login Server / OK / CDE Startup
Instead of CDE appears
another graphical
Userinterface / wrong interface

Check inittab and start CDE again:

If during startup of the system the line "Start CDE login Server" did not appear, following things must be done first to enable the start of CDE:

  1. Login as user root at the console or use a network-access (via telnet).
  2. Set the variable TERM:
    export TERM=hp
  3. Edit the file /etc/inittab:
    /usr/bin/vi /etc/inittab

Therefore you need to check the following lines and if necessary you need to change them:

init:3:initdefault:
Default-Runlevel is 3; CDE is started in runlevel 3 normally.

#xd:3:respawn:/opt/hpxt/enware/xdm -nodaemon \
-config /opt/hpxt/enware/xdm/xdm-config
If possibly a line for starting xdm exists, comment it out (# at the beginning of the line)

vue :4:respawn:/usr/vue/bin/vuerc # VUE invocation
If perhaps a line for VUE exists, it is possible to suppress the starting of VUE-processes in runlevel 3 by the entry above.

  1. For concluding the settings either reboot the system: /sbin/reboot
    or switch to runlevel 2 and back to runlevel 3 afterwards:
    /sbin/init 2, login as root again, /sbin/init 3
  2. After these actions the Startup-line "Start CDE login Server" should appear and should show one status of the table above.

Enable CDE:

If during bootup of the system the line "Startup CDE login Server" shows the status "N/A" , first of all the start of CDE must be enabled.

  1. Login as user root. This can be done both at the console and with a network-access (via telnet).
  2. Activate the CDE Startup by typing: /usr/dt/bin/dtconfig -e
    The output is:
    done
    desktop auto-start enabled.
  3. It is necessary to start CDE again afterwards.
    This can be done by the following different methods:
  • reboot the system: /sbin/reboot
  • Change the Run-Level: /sbin/init 2 login as user root afterwards and type /sbin/init 3
  • If the first both methods are not feasible, because you can not reboot or change the runlevel at the moment, it is possible to start CDE by hand:
    /sbin/init.d/dtlogin.rc start;exit

Wrong User-Interface:

If you see instead of the CDE-Interface - that you like to get - another interface like VUE or xdm, follow these instructions:

Because both VUE and XDM are started by the file /etc/inittab, the first step is to delete their entries from the /etc/inittab. The second step is to enable the start of CDE:
See Check inittab and Enable CDE:

Update Printers

If the status of the CDE Startup alternates incessantly between "busy and wait", the problem is often related to the Printer-Spooler.

At the startup of CDE for example a CDE-action will be created for every printer you set up to enable a comfortable use of the print-manager. This is done in the function update_printers of the CDE Startup-Script /sbin/init.d/dtlogin.rc. If the Printer-spooler does not work correctly, it is possible that the update_printers function is not fully finished and therefore the CDE-start is prevented.

For the solution of the causative problem you must troubleshoot the printer-spooler.
But it is possible to work with CDE temporarily without the execution of the function update_printers.
Therefore you need to edit the CDE-Startup-Script:

  1. Get the system into Run-Level 2:
    Login as root via network-access and type /sbin/init 2 to get into Run-level 2 .
  2. In Run-Level 2 login as root again and edit the CDE-Startup-Script; You must suppress the function update_printers:

/usr/bin/vi /sbin/init.d/dtlogin.rc

Search following section and comment the line update_printers out like it is shown below.

case "$mode" in
'start')
if [ -f /etc/rc.config ] ; then
. /etc/rc.config
else
echo "ERROR: /etc/rc.config defaults file MISSING"
fi

if [ "CDE" != "${DESKTOP:-}" ]
then
exit 2
fi

# update_printers <--- This is the modification!

if [ -x /usr/dt/bin/dtrc ] ; then
trap "" 1
/usr/dt/bin/dtrc &
elif [ -x /usr/dt/bin/dtlogin ] ; then
/usr/dt/bin/dtlogin -daemon
fi
;;

  1. Afterwards get back to Run-Level 3 to start CDE: /sbin/init 3

CDE Startup

Basis: During startup of the system the CDE-Startup-Script reports: "Start CDE login Server: OK", but nevertheless the start is not successful.

It is necessary to have a look at two situation: The system has a local Graphic-card or the system has NO local graphic-card.
Normally Workstations of the Series 700 have a local graphic-card, but most of the Servers of series 800 are used without local graphic-card.

  1. No local Graphic-card (typical for S800)
  • Without graphic-card - no XServer can run locally.
    You must configure CDE in the file Xservers in that way. Locally no Xserver should be started, but for example XTerminals should be able to get a CDE-session via network-access.
    The file Xservers can be found in /etc/dt/config/Xservers or in /usr/dt/config/Xservers if it does not exist in /etc/dt/config/Xservers. If you need to change the file Xservers please copy it first from /usr/dt/config/ to /etc/dt/config/ and edit it only there!:
    Without local graphic-card deactivate the Xserver start by commenting out the line in the following way:
    $ tail /etc/dt/config/Xservers
    ...
    # * Local local@console /usr/bin/X11/X :0

Otherwise you will get needless error message at the console.

  • Needed CDE-Processes:
    There is one process that is absolutely necessary for starting every kind of CDE-session. This dtlogin process (called parent dtlogin) is the parent of all CDE-Sessions. If this parent dtlogin is running, all prerequisites are fulfilled to start a remote CDE-Session. For every further CDE-Session an additional (child) dtlogin will be started.
    Process-table of a S800 without running CDE-Session:
    $ ps -ef|grep dt
    root 1243 1223 0 Sep 22 ? 0:00 /usr/dt/bin/dtlogin
    root 1223 1 0 Sep 22 ? 0:00 /usr/dt/bin/dtrc /usr/dt/bin/dtrc

/usr/dt/bin/dtrc (PID 1223) is parent of the dtlogin (1243)

If the parent dtlogin runs, but for examples an Xterminal does not get a CDE Session, the network-connection between the involved systems and the Xterminal-setup should be checked (see document XTerminal Troubleshooting).

  1. With local graphic-card (typical for S700)
  • /etc/dt/config/Xservers respectively /usr/dt/config/Xservers (if /etc/dt/config/Xservers does not exist), has to have the following entry to start a local XServer for CDE:

$ tail /etc/dt/config/Xservers
...
* Local local@console /usr/bin/X11/X :0

  • Even if this is correct, but you still do not get a CDE-login-mask, the next step is to check if the XServer can be started by hand:
  • Get the system into run-level 2: /sbin/init 2
  • Login as User root and start the Xserver by typing: /usr/bin/X11/X
    If this is successful, you see a grey screen with a mouse-pointer.
    You can stop the Xserver by pressing the key-combination Ctrl-Shift-Break or remote by killing the Xserver-process.
    Afterwards logout and login as a "normal" user and try to start the XServer.
  • If you get error-messages while starting the Xserver manually, try to solve the reported problems if possible. If you are not able to interpret the messages, write them down and search for a possible solution on the IT Resource Center ( or contact your HP-Support.

Examples of possible error-messages:
1. couldn't open xpointer device:
The Xserver was not able to find the the mouse-pointer. Switch off the system and change the mouse-pointer (hardware). If this does not solve the problem, create the needed device files new. A file with the instruction how to do it can be found on IT Resource Center ( or call your local Support Center.

2. Cannot establish any listening sockets:
Check the permissions of /var/spool/sockets, afterwards remove the sockets and reboot
$ rm /var/spool/sockets/X11/*.