VNC: Difference between revisions

From CLONWiki
Jump to navigation Jump to search
Boiarino (talk | contribs)
Boiarino (talk | contribs)
Line 3: Line 3:
To start ''vncserver'' do following:
To start ''vncserver'' do following:


======= LINUX RHEL4 ===============
'''LINUX RHEL4''': as 'root' do following:
 
/sbin/chkconfig --level 3 vncserver on
/sbin/chkconfig --level 4 vncserver on
/sbin/chkconfig --level 5 vncserver on
/sbin/chkconfig --list | grep vncserver
      vncserver      0:off  1:off  2:off  3:on    4:on    5:on    6:off
 
 
 


To start the vncserver simply invoke the following commands:
To start the vncserver simply invoke the following commands:

Revision as of 16:24, 25 November 2007

VNC stands for Virtual Network Computing package and is included into both Solaris and Linux installations.

To start vncserver do following:

LINUX RHEL4: as 'root' do following:

/sbin/chkconfig --level 3 vncserver on 
/sbin/chkconfig --level 4 vncserver on
/sbin/chkconfig --level 5 vncserver on 
/sbin/chkconfig --list | grep vncserver
     vncserver       0:off   1:off   2:off   3:on    4:on    5:on    6:off



To start the vncserver simply invoke the following commands:

[root@roswell etc]# service vncserver start
Starting VNC server:                                       [  OK  ]
[root@roswell etc]# 
[root@roswell etc]# vncpasswd
Password:  
Verify: 
[root@roswell etc]#
[root@roswell etc]# vncserver
New 'roswell:1 (root)' desktop is roswell:1
Starting applications specified in /root/.vnc/xstartup
Log file is /root/.vnc/roswell:1.log
[root@roswell etc]# 


So what did we do there? First, we started the vncserver service. It may or may not have already been running on your system. Next we set a password to access the VNC desktop. When you set the password, you will not see any characters on the screen, and you must enter the password twice. You will only need to do this the very first time you run vncserver. The password will be saved in the Linux filesystem, and you can change it at any time by invoking the vncpasswd command again. Last, to activate the VNC desktop, we simply invoked the vncserver command. Notice the output; the desktop is named "roswell:1" which can also be replaced via the machines IP address.

= SOLARIS 10 ==========

Download, install and use x11vnc as following (as 'root'):

 cd /usr/local/src/x11vnc-0.9.1
 ./configure --without-ssl
 gmake
 gmake install

NOTE: following line was changed in file 'x11vnc/sslhelper.h' BEFORE running 'gmake':

 /*sergey: undefined symbol, define it here until figure it out ...*/
 /*extern char *certret_str;*/
 static char *certret_str;

Now create password (we assume that x1vnc server will be running as 'clasrun'; it is important that all clon workstations usually logged in as clasrun):

 x11vnc -storepasswd

It will create password which will be used by vncviewer. Now start server(s) (one per screen), for example if two monitors connected to the workstation run two servers:

 x11vnc -rfbauth /home/clasrun/.vnc/passwd -display :0.0 -forever -shared
 x11vnc -rfbauth /home/clasrun/.vnc/passwd -display :0.1 -forever -shared

Option '-shared' allows more then one client to connect, and '-forever' will prevent server from dying when last client disconnected. Now you can connect from another machine, for example to connect to two 'clon06' screens type follwoing on your machine:

 vncviewer clon06:0
 vncviewer clon06:1

If running 'vncviewer' from Solaris but from non-solaris terminal it maybe useful to specify flag '-bgr233' to get better colors.



TRIED, DID NOT WORK:

Tell dtlogin to run Xvnc rather than the normal X server:

 # mkdir /etc/dt/config
 # cat >/etc/dt/config/Xservers <<EOF
 :0   Local local_uid@none root /opt/csw/bin/Xvnc :0 -geometry 1024x768 -depth 24
 EOF
 #

Restart dtlogin:

 # /etc/init.d/dtlogin stop
 # /etc/init.d/dtlogin start
 #

After a couple of seconds, it’s worth checking that Xvnc is actually running:

 # ps -ef | grep Xvnc
   root 102525 102484   0 15:48:15 ?           0:00 /opt/csw/bin/Xvnc :0 -auth /var/dt/A:0-7Zavqg
 # 
==========

[Apr 2, 2007] Solaris 10, gcc and VNC server by jalzabrewer

May 28, 2005 (forum.java.sun.com) VNC is on the SUN Supplimental SFW disk for Soalris 10 system SFWvnc vnc - Virtual Network Computing. Here is my implementaion using dtlogin xdm login feature of broadcast, if any one comes up with a way to use sse, let me know!

1. pkgadd -d . SFWvnc

2. Add to /etc/services

nc1024 stream tcp nowait root /usr/local/bin/Xvnc-1024 Xvnc-1024

3. Add to /etc/inetd.conf

vnc1024 stream tcp nowait root /usr/local/bin/Xvnc-1024 Xvnc-1024

4. Create /usr/local/bin/Xvnc-1024 script , perm 755.

  1. !/bin/sh

/opt/sfw/bin/Xvnc -inetd -broadcast -once -geometry 1024x768 -depth 8


5. Stop dtlogin

/etc/init.d/dtlogin stop

6. [Restart indentd] kill -HUP inetd-pid

7. Start dtlogin

/etc/init.d/dtlogin start

8. /usr/sbin/shutdown -y -g0 -i6 to test startup.

9. svcs should show:

bash-3.00# svcs |grep vnc

online 16:06:49 svc:/network/vnc1024/tcp:default

Have fun!


[Apr 2, 2007] VNC on Solaris 10 Installing and configuring VNC from the software companion CD

Solaris 10 can be downloaded from sun’s web site. Also available from the download pages is an image of a “Software Companion CD”.

This CD contains extra freeware products which can be added post-installation. One of these is the excellent Virtual Network Computing (VNC) package.

VNC allows remote desktop access to computers over a network. It can be used between Microsoft and Unix/Linux operating systems.

Insert the Solaris Companion CD and allow the volume management daemon to mount it. There are three packages which are required. In this example they are converted into package datastreams on the hard disk:

  1. cd /cdrom/cdrom0/sparc/Packages
  1. pkgtrans . /opt/SFWgcmn.pkg SFWgcmn
  1. pkgtrans . /opt/SFWgcc34l.pkg SFWgcc341
  1. pkgtrans . /opt/SFWvnc.pkg SFWvnc

[Mar 24, 2007] freshmeat.net Project details for Enhanced TightVNC Viewer

Enhanced TightVNC Viewer 1.0.14 released

The Enhanced TightVNC Viewer package is part of the x11vnc VNC server project. It provides a native VNC viewer that takes advantage of new features in x11vnc, e.g. cursor alpha blending and automatic SSL tunnelling. Some features apply to any VNC server, e.g. automatic SSH tunnelling. Another goal is to provide a package that conveniently bundles everything needed for the user to have the enhanced viewer running quickly. This includes pre-built binaries of the viewer and utility programs for Windows and many Unix variants, and a GUI to configure and launch the viewer. The short name for this project is "ssvnc", for SSL/SSH VNC viewer. Release focus: Minor bugfixes

Changes: Using port numbers lower than VNC's default port (5900) now works on Windows (for example, myhost.com:443).

Author: Karl Runge [contact developer]

[Feb 20, 2007] VNC on Solaris 10

A good explanation of details

Insert the Solaris Companion CD and allow the volume management daemon to mount it. There are three packages which are required. In this example they are converted into package datastreams on the hard disk:

  1. cd /cdrom/cdrom0/sparc/Packages
  2. pkgtrans . /opt/SFWgcmn.pkg SFWgcmn
  3. pkgtrans . /opt/SFWgcc34l.pkg SFWgcc341
  4. pkgtrans . /opt/SFWvnc.pkg SFWvnc

Add the three packages in the following order:

  1. cd /opt
  2. pkgadd -d SFWgcmn.pkg
  3. pkgadd -d SFWgcc34l.pkg
  4. pkgadd -d SFWvnc.pkg

Xwindows is configured with text files under /usr/dt but these shouldn’t be modified, make copied of them under /etc/dt and modify the copies.

  1. mkdir -p /etc/dt/config
  2. cp /usr/dt/config/Xservers /etc/dt/config/
  3. cp /usr/dt/config/Xconfig /etc/dt/config/
  4. cp /usr/dt/config/Xsetup /etc/dt/config/

Edit the /etc/dt/config/Xservers to configure the extra connections to Xwindows. The :0 server is the default one which you log in to locally. In this example one extra connection is being configured:

  1. vi /etc/dt/config/Xservers
  :0   Local local_uid@console root /usr/X11/bin/Xserver :0 -nobanner
  :1   Local local_uid@console root /opt/sfw/bin/Xvnc :1 -httpd /opt/sfw/vnc/classes -depth 16 -geometry 1024x768 -r fbwait 120000 -rfbauth /opt/sfw/vnc/.vnc/passwd -rfbport 5901 -httpport 5801 -fp tcp/localhost:7100 -alwaysshared

There are only two lines in my example file, it has just word wrapped on this web page. Here are some of the important options:

-depth 16

This is the colour depth. An 8bit colour depth uses less network bandwidth but looks a bit blocky.

-geometry 1024x768

Choose whichever resolution you want. Yes, that is an “x” between the two numbers not an “*”.

-rfbport 5901

The port number for the client to connect to. Each different server must use a different port number. For example :1 uses 5901 and :2 could use 5902

-httpport 5801

You can point a web browser at the Unix host with this port number and get a java based connection to the Unix host. For example:

http://10.0.0.1:5801

Configure a password, this is prompted for before the user sees a login screen.

  1. HOME=/opt/sfw/vnc
  2. export HOME
  3. mkdir $HOME/.vnc
  4. /opt/sfw/bin/vncpasswd

Password: password Verify: password

To enable vnc to start when dtlogin does, uncomment the Dtlogin*grabServer line in /etc/dt/config/Xconfig or do this sed command which will do the same thing:

  1. sed '/Dtlogin\*grabServer/s/^#//' /etc/dt/config/Xconfig >/tmp/Xconfig
  2. mv /tmp/Xconfig /etc/dt/config/Xconfig

This would work but the fonts will not be right. Add the font server to the /etc/inetd.conf and convert it into a new SMF managed network service:

  1. echo "fs stream tcp wait nobody /usr/openwin/lib/fs.auto fs" >>/etc/inetd.conf
  2. inetconv

That should be it! I rebooted here but I think you should be able to get away with hupping the inetd and stopping and restarting dtlogin:

  1. pkill –HUP inetd
  2. /etc/init.d/dtlogin stop
  3. /etc/init.d/dtlogin start

Any time you change the /etc/dt/config/Xservers file, you will need to stop and restart dtlogin. In previous versions you could just /usr/dt/bin/dtlogin –reset but it doesn’t seem to work in Solaris 10.

Java Desktop

There is a bug which will prevent text being entered in terminal windows in the Java Desktop. This can be solved by modifying the file shown below:

  1. cd /etc/gconf/gconf.xml.defaults/apps/gnome_settings_daemon/keybindings/
  2. mv %gconf.xml %gconf.xml.orig
  3. vi %gconf.xml

<gconf>

       <entry name="volume_up" mtime="1110896708" type="string">
       <stringvalue></stringvalue>
       </entry>
       <entry name="volume_mute" mtime="1110896705" type="string">
       <stringvalue></stringvalue>
       </entry>
       <entry name="volume_down" mtime="1110896702" type="string">
       <stringvalue></stringvalue>
       </entry>
       <entry name="help" mtime="1110896698" type="string">
       <stringvalue></stringvalue>
       </entry>

</gconf>

The next time you log in to a Java Desktop, it will work.