Project

General

Profile

Bug #1734

problems getting gdm running in non-global zone for vncserver

Added by Richard PALO about 8 years ago. Updated almost 6 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
Desktop (JDS)
Target version:
-
Start date:
2011-11-05
Due date:
2014-02-14
% Done:

100%

Estimated time:
1.00 h
Difficulty:
Medium
Tags:
jds

Description

getting X forwarding seems to work fine in a non-global zone, but is there a recipe that works to get gdm (or equivalent) working ... in a simple manner enabling vncviewer to a desktop in the non-global zone?

it seems firstly that dbus has a problem (/lib/svc/method/svc-dbus) explicitly disallowing startup in a non global zone
(https://www.illumos.org/issues/1249)

if smf_is_nonglobalzone; then
       /usr/sbin/svcadm disable -t svc:/system/dbus
        echo "dbus-daemon cannot be run in non-global zones" 
       sleep 5 &
       exit $SMF_EXIT_OK
fi

getting over this, then if the other dependencies of gdm are started, fine (gdm still doesn't work)
BTW don't reboot without setting autoboot=false for the zone or the GLOBAL zone will hang bugging out.

Any hints, please...


Files

Capture-Fenêtre_sans_nom.png (179 KB) Capture-Fenêtre_sans_nom.png Richard PALO, 2011-11-06 06:52 AM

History

#1

Updated by Richard PALO about 8 years ago

seems HAL is what blocks gdm from starting up.

richard@devzone:~# svcs -xv
svc:/application/graphical-login/gdm:default (GNOME Display Manager)
 State: offline since  5 novembre 2011 20:09:58 CET
Reason: Dependency svc:/system/hal is absent.
   See: http://sun.com/msg/SMF-8000-E2
   See: man -M /usr/share/man -s 1m gdm
Impact: This service is not running.

HAL is what blocks in a reboot if enabled after copying the manifest and method files from the global zone.

I was able to get ConsoleKit to start up by setting hidden=true in /etc/ConsoleKit/seats.d/00-primary.seat and creating the following:

richard@devzone:/etc/ConsoleKit/seats.d# cat 04-headless.seat 
[Seat Entry]
Version=1.0
Name=HeadlessSeat
ID=HeadlessSeat
Description=start a framebuffer display, the display number is :32
Hidden=false
Devices=
Sessions=Headless;
richard@devzone:/etc/ConsoleKit/seats.d# ck-list-sessions -a
SessionHeadlessSeatHeadless:
    unix-user = '0'
    realname = 'Super-User'
    seat = 'HeadlessSeat'
    session-type = 'LoginWindow'
    display-type = 'Headless'
    open = 'FALSE'
    active = 'FALSE'
    x11-display = ''
    x11-display-device = ''
    display-device = ''
    remote-host-name = ''
    is-local = 'TRUE'
    on-since = '2011-11-05T19:08:35.616890Z'
    login-session-id = ''
    idle-since-hint = ''

unfortunately, vncviewer still show a black screen, apparently because gdm isn't started up...
any ideas would help.

#2

Updated by Richard PALO about 8 years ago

I am able to get one step further by making optional hal in the service description dependency for gdm.

richard@devzone:~# svcs -l gdm
fmri         svc:/application/graphical-login/gdm:default
name         GNOME Display Manager
enabled      true
state        online
next_state   none
state_time    6 novembre 2011 06:54:08 CET
logfile      /var/svc/log/application-graphical-login-gdm:default.log
restarter    svc:/system/svc/restarter:default
contract_id  194 
dependency   optional_all/none svc:/application/opengl/ogl-select (online)
dependency   require_all/none svc:/system/filesystem/local (online)
dependency   require_all/error svc:/milestone/multi-user:default (online)
dependency   require_all/none svc:/milestone/sysconfig (online)
dependency   require_all/none svc:/application/font/fc-cache (online)
dependency   require_all/none svc:/system/utmp (online)
dependency   optional_all/none svc:/system/hal (absent)
dependency   require_all/none svc:/system/dbus (online)
dependency   require_all/none svc:/system/consolekit (online)

Now I get a login (minus background colours and icons) and can log into an xterm... gdm gives a watch cursor and doesn't seem to advance.

taking a look into .xsession

/etc/gdm/Xsession: Beginning session setup...
/usr/bin/stat: cannot stat `/dev/audio': No such file or directory
/etc/gdm/Xsession: Setup done, will execute: /usr/bin/ssh-agent -- gnome-session
_IceTransmkdir: Owner of /tmp/.ICE-unix should be set to root
/usr/bin/dispswitch exiting: too few (less than 2) or too many (more than 2) crtcs: 1
/usr/lib/lp/bin/desktop-print-management-applet[31]: exec: /usr/lib/ospm/ospm-applet: not found

#3

Updated by Richard PALO about 8 years ago

Hah, frustrated with gdm, I thought I'd try XFCE to see:

$ pfexec pkg install -v *xfce*
           Packages to install:        32
     Estimated space available:  27.48 GB
Estimated space to be consumed: 225.92 MB
       Create boot environment:        No
Create backup boot environment:        No
            Services to change:         4
          Rebuild boot archive:        No

Changed packages:
openindiana.org
  developer/ui-designer/glade
    None -> 0.5.11,5.11-0.151.1:20110912T022643Z
  gnome/preferences/control-center
    None -> 0.5.11,5.11-0.151.1:20110912T023246Z
  gnome/window-manager/metacity
    None -> 0.5.11,5.11-0.151.1:20110912T023327Z
  library/gnome/base-libs
    None -> 0.5.11,5.11-0.151.1:20110912T023707Z
  library/libgtop
    None -> 0.5.11,5.11-0.151.1:20110912T023824Z
  library/libunique
    None -> 0.5.11,5.11-0.151.1:20110912T023832Z
  library/python-2/python-gnome-libs-26
    None -> 0.5.11,5.11-0.151.1:20110912T024045Z
  runtime/python-24
    None -> 2.4.6,5.11-0.151.1:20110912T024731Z
  service/gnome/desktop-cache
    None -> 0.2.2,5.11-0.151.1:20110912T024855Z
  service/postrun
    None -> 0.5.11,5.11-0.151.1:20110912T024122Z
  terminal/gnome-terminal
    None -> 0.5.11,5.11-0.151.1:20110912T025156Z
sfe
  developer/xfce/xfce-dev-tools
    None -> 4.8.0,5.11-0.151.1:20111014T183722Z
  library/desktop/garcon
    None -> 0.1.8,5.11-0.151.1:20111014T184012Z
  library/desktop/libxfcegui
    None -> 4.8.1,5.11-0.151.1:20111014T184014Z
  library/desktop/libxfceutil
    None -> 4.8.2,5.11-0.151.1:20111014T184014Z
  library/perl-5/uri
    None -> 5.10.0.1.58,5.11-0.151.1:20111014T184112Z
  library/xfce/libexo
    None -> 0.6.2,5.11-0.151.1:20111014T184120Z
  library/xfce/libxfceui
    None -> 4.8.0,5.11-0.151.1:20111014T184121Z
  terminal/xfce-terminal
    None -> 0.4.8,5.11-0.151.1:20111014T184749Z
  xfce/config/xfce-config
    None -> 4.8.0,5.11-0.151.1:20111014T184800Z
  xfce/config/xfce-settings
    None -> 4.8.3,5.11-0.151.1:20111014T184800Z
  xfce/file-manager/thunar
    None -> 1.3.0,5.11-0.151.1:20111014T184801Z
  xfce/tumbler
    None -> 0.1.22,5.11-0.151.1:20111014T184803Z
  xfce/window-manager/xfwm
    None -> 4.8.2,5.11-0.151.1:20111014T184804Z
  xfce/xfce-appfinder
    None -> 4.8.0,5.11-0.151.1:20111014T184806Z
  xfce/xfce-calendar
    None -> 4.8.2,5.11-0.151.1:20111014T184806Z
  xfce/xfce-desktop
    None -> 4.8.3,5.11-0.151.1:20111014T184808Z
  xfce/xfce-mixer
    None -> 4.8.0,5.11-0.151.1:20111014T184809Z
  xfce/xfce-panel
    None -> 4.8.6,5.11-0.151.1:20111014T184810Z
  xfce/xfce-power-manager
    None -> 1.0.10,5.11-0.151.1:20111014T184811Z
  xfce/xfce-session
    None -> 4.8.2,5.11-0.151.1:20111014T184812Z
  xfce/xfce-utils
    None -> 4.8.3,5.11-0.151.1:20111014T184813Z
Services:
  restart_fmri:
    svc:/application/desktop-cache/desktop-mime-cache:default
    svc:/application/desktop-cache/gconf-cache:default
    svc:/application/desktop-cache/icon-cache:default
    svc:/system/manifest-import:default
DOWNLOAD                                  PKGS       FILES    XFER (MB)
Completed                                32/32   8085/8085    38.5/38.5

PHASE                                        ACTIONS
Install Phase                            11903/11903 

PHASE                                          ITEMS
Package State Update Phase                     32/32 
Image State Update Phase                         2/2 

notice all the gnome libraries.

well, the next try for vncviewer, I get the background colours and icons again (yeah!) and gnome login works (double yeah!)

so it looks like a dependency problem...

I do get a couple of messages on the first login:

Le tableau de bord a rencontré un problème lors du chargement de « OAFIID:GNOME_MixerApplet ».

which is normal since I didn't make anyaudio device available to the zone
and
Le tableau de bord a rencontré un problème lors du chargement de « OAFIID:GNOME_Panel_TrashApplet ».

In any event, outside of pkg dependencies, hal and dbus are the real culprits.

#4

Updated by Richard PALO about 8 years ago

well, in a clean zone install I tried the pkg install/uninstall slim_install method and it seemed to work with the dbus, gdm/hal dependency, and consolekit mods. vncviewer loads up correctly the first time after a "typical" preparation.

.xsessions does have a number of warnings/errors, but not sure if they are critical for the moment:

 cat .xsession-errors 
/etc/gdm/Xsession: Beginning session setup...
/usr/bin/stat: cannot stat `/dev/audio': No such file or directory
Cleaned 1 files 0 still live
/usr/openwin/bin/xrdb: colon missing on line 1, ignoring line
/usr/openwin/bin/xrdb: colon missing on line 10, ignoring line
/etc/gdm/Xsession: Setup done, will execute: /usr/bin/ssh-agent -- gnome-session
_IceTransmkdir: Owner of /tmp/.ICE-unix should be set to root
GNOME_KEYRING_CONTROL=/var/tmp/keyring-sfXACj
GNOME_KEYRING_PID=11100

** (gnome-settings-daemon:11098): WARNING **: Call to screen_info_new is too frequent, skipping...

** (gnome-settings-daemon:11098): WARNING **: Call to screen_info_new is too frequent, skipping...

(gnome-settings-daemon:11098): GVFS-RemoteVolumeMonitor-WARNING **: remote volume monitor with dbus name org.gtk.Private.HalVolumeMonitor is not supported
GNOME_KEYRING_CONTROL=/var/tmp/keyring-sfXACj
SSH_AUTH_SOCK=/var/tmp/keyring-sfXACj/ssh
GNOME_KEYRING_CONTROL=/var/tmp/keyring-sfXACj
SSH_AUTH_SOCK=/var/tmp/keyring-sfXACj/ssh
Avertissement du gestionnaire de fenêtres : La lecture du fichier de session enregistré /home/dev/.config/metacity/sessions/10afd34dc64fa4d42c13205774157601200000110500020.ms a échoué : L'ouverture du fichier « /home/dev/.config/metacity/sessions/10afd34dc64fa4d42c13205774157601200000110500020.ms » a échoué : No such file or directory

(gnome-panel:11109): GVFS-RemoteVolumeMonitor-WARNING **: remote volume monitor with dbus name org.gtk.Private.HalVolumeMonitor is not supported
/usr/bin/dispswitch exiting: too few (less than 2) or too many (more than 2) crtcs: 1

** (gnome-power-manager:11111): WARNING **: DBUS error: Could not get owner of name 'org.freedesktop.Hal': no such name
** (gnome-power-manager:11111): DEBUG: proxy is NULL, maybe the daemon responsible for org.freedesktop.Hal is not running?

** (gnome-power-manager:11111): WARNING **: Either HAL or DBUS are not working!

** (gnome-power-manager:11111): WARNING **: DBUS error: Could not get owner of name 'org.freedesktop.Hal': no such name
** (gnome-power-manager:11111): DEBUG: proxy is NULL, maybe the daemon responsible for org.freedesktop.Hal is not running?

** (gnome-power-manager:11111): WARNING **: DBUS error: Could not get owner of name 'org.freedesktop.Hal': no such name
** (gnome-power-manager:11111): DEBUG: proxy is NULL, maybe the daemon responsible for org.freedesktop.Hal is not running?

** (gnome-power-manager:11111): WARNING **: proxy failed

** (gnome-power-manager:11111): WARNING **: proxy NULL!!

** (gnome-power-manager:11111): WARNING **: proxy NULL!!
** (gnome-power-manager:11111): DEBUG: already disconnected from org.freedesktop.Hal
** (gnome-power-manager:11111): DEBUG: already disconnected from org.freedesktop.Hal
Initializing nautilus-open-terminal extension

(nautilus:11110): GVFS-RemoteVolumeMonitor-WARNING **: remote volume monitor with dbus name org.gtk.Private.HalVolumeMonitor is not supported
system-config-printer-applet: failed to start NewPrinterNotification service

(gedit:11293): GVFS-RemoteVolumeMonitor-WARNING **: remote volume monitor with dbus name org.gtk.Private.HalVolumeMonitor is not supported

(gnome-system-monitor:11297): GVFS-RemoteVolumeMonitor-WARNING **: remote volume monitor with dbus name org.gtk.Private.HalVolumeMonitor is not supported

also, a big cleanup in uninstalling locales with package manager, not sure if it's safe to uninstall drivers...

Perhaps this should turn into a wish list for a zone configure module to do the necessary thing. it would be nice to simplify the locale selection as opposed to loading the world as well.

#5

Updated by Ken Mays over 6 years ago

  • Assignee changed from Guido Berhörster to OI JDS
#6

Updated by Ken Mays almost 6 years ago

  • Due date set to 2014-02-14
  • Assignee changed from OI JDS to Milan Jurik
  • % Done changed from 0 to 100
  • Estimated time set to 1.00 h
  • Tags changed from needs-triage to jds

Resolved. Retested per user comments for: http://hg.opensolaris.cz/oi-jds/file/91630ebbcfcc

#7

Updated by Ken Mays almost 6 years ago

  • Status changed from Feedback to Closed

Also available in: Atom PDF