Tuesday, May 4, 2010

Enabling VNC Under Solaris 10

Enabling VNC Under Solaris 10

Abstract:
Open Systems have traditionally been accessed via Command Line. MIT create a fully object oriented, multi-tiered, open source windowing system called X Windows, which was quickly adopted by nearly all computing industry players. While X Windows is well suited for local area network technology, the need for wide area network technology was addressed through several different attempts, such as X11R6 "Broadway" and proxies leveraging compression. A lighter WAN suitable screen display protocol, referred to as Virtual Network Computing (VNC) is also commonly used for X displays.

Procedure:

Solaris 10 was shipped with a basic VNC service mostly configured. This is the procedure to enable it.
  • Find VNC service
Cainan/root# svcs -a | grep -i vnc
disabled 13:47:12 svc:/application/x11/xvnc-inetd:default 
  • Enable vnc service
Cainan/root# svcadm enable svc:/application/x11/xvnc-inetd:default
  • Note that VNC is broken by default, some changes will be required.
Cainan/root# svcs svc:/application/x11/xvnc-inetd:default
STATE STIME FMRI
maintenance 14:22:41 svc:/application/x11/xvnc-inetd:default
  • Append vnc to the /etc/services
Cainan/root# echo "vnc-server\t5900/tcp\t\t\t# Xvnc" >>/etc/services
  • Check /etc/services
Cainan/root# tail /etc/services
...
snmpd 161/udp snmp # SMA snmp daemon
vnc-server 5900/tcp # Xvnc
  • Note, the gnu display manager is not customized yet, and needs correction
Cainan/root# ls -al /etc/X11/gdm/custom.conf
/etc/X11/gdm/custom.conf: No such file or directory
  • Enable and configure gnu display manager for vnc
Cainan/root# cat >/etc/X11/gdm/custom.conf <<!
[xdmcp]
Enable=true
[security]
DisallowTCP=false
AllowRoot=true
AllowRemoteRoot=true
!
  • Check the customization configuration file
Cainan/root# ls -al /etc/X11/gdm/custom.conf
-rw-r--r-- 1 root root 85 Dec 19 14:43 /etc/X11/gdm/custom.conf
  • Re-enable and validate the vnc service
Cainan/root# svcadm disable svc:/application/x11/xvnc-inetd:default
STATE STIME FMRI
disabled 14:46:29 svc:/application/x11/xvnc-inetd:default
Cainan/root# svcadm enable svc:/application/x11/xvnc-inetd:default
Cainan/root# svcs svc:/application/x11/xvnc-inetd:default
STATE STIME FMRI
online 14:46:43 svc:/application/x11/xvnc-inetd:default
  • Access the vnc server from a vnc client on the network for a test
cainan:0
- - - - - Updated - - - - - 

Apologies for the issues related to the greater-than and less-than signs. They are not handled gracefully in the blogger software.

Fonts have been adjusted, bullets added for better formatting, and some additional wording since this was originally a hastily assembled article.

7 comments:

  1. hey thanks man !!! worked well on Solaris 10 u8 :)

    Next I have to make dtlogin run correctly so I don't jus thave a blank screen ! :/

    ReplyDelete
  2. One more tip if you need to do things as root:

    go to /etc/default/login on your solaris mashine and comment this line out.

    #CONSOLE=/dev/console

    ReplyDelete
  3. Thanks man !

    The tip for root really helped to. Yes I know its insecure, but was very useful to get things set up before I locked it all down again.

    ReplyDelete
  4. any idea why i'm receiving gray screen using VNC client.

    ReplyDelete
    Replies
    1. Sounds like you do not have an X Display Manager running correctly.

      Without the X based Display Manager, a login screeen is not projected onto the root-gray VNC frame buffer.

      Delete
  5. Verify that dtlogin port is set correctly to 171. We had default Solaris installations that set it to 0, which caused the grey screen as well.

    ReplyDelete
  6. Hello ... I wonder if you guys can help. I followed the steps noted above, but I continue to get a grey screen. Two questions: How to verify the X Display Manager is running and how to change the port for the dtlogin? Thank you kindly!

    ReplyDelete