Mailinglist Archive: opensuse (1714 mails)

< Previous Next >
Re: [opensuse] Xvnc documentation?
  • From: Marc Chamberlin <marc@xxxxxxxxxxxxxxxxxx>
  • Date: Thu, 01 Jul 2010 16:00:03 -0700
  • Message-id: <4C2D1DF3.4080507@xxxxxxxxxxxxxxxxxx>
On 7/1/2010 1:16 PM, David C. Rankin wrote:
On 07/01/2010 01:00 PM, Marc Chamberlin wrote:
Can someone tell me where I can find documentation (man pages??) on the
xorg-x11-Xvnc servers that are supplied by default within the xinet daemons?
Google searches and YaST is turning up nada so I wonder if I am searching for
the wrong thing....



I'm not sure there is a lot to be found. I'm sure you know this, but sinetd is fairly simple and straight forward. You start/stop xinetd just like any other daemon and xinetd reads the individual service config files in /etc/xinetd.d/. Look in the file for the service you are interested in like say 'tftp', etc.. This will tell you what services are by default available to be run under xinetd. Here is what I have according to chkconfig --list:

xinetd based services:
chargen: off
chargen-udp: off
cups-lpd: off
cvs: off
daytime: off
daytime-udp: off
discard: off
discard-udp: off
echo: off
echo-udp: off
netstat: off
nrpe: off
nsca: off
rsync: off
sane-port: off
servers: off
services: off
svnserve: off
swat: off
systat: off
tftp: on
time: off
time-udp: off
vnc: off

To enable or disable the xinetd services, just modify the config file for the service you need (vnc?) For example let's look at tftp:

-rw-r--r-- 1 root root 2317 2009-12-19 08:58 vnc.rpmsave
14:57 alchemy:/etc/xinetd.d> cat tftp
# default: off
# description: tftp service is provided primarily for booting or when a \
# router need an upgrade. Most sites run this only on machines acting as
# "boot servers".
service tftp
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -s /tftpboot
disable = yes

To enable the service, just 'undisable' the service by changing 'disable = yes' to 'disable = no' or turn the service on with 'chkconfig tftp on' and then restart xinet.d with 'rcxinetd restart'. (as root of course). You can confirm it is running with 'chkconfig --list' and then look under the xinetd listing. That's about it. You can turn the service off by making disable = yes or with 'chkconfig tftp off' and restarting xinetd.

You can always use yast to do this as well, but it is just as easy from the command line. Good luck.

Thanks David, yep I am headed down the path you pointed out.... I was actually looking for documentation on Xvnc which is the Xorg server that comes pre-configured for the xinetd services for the SuSE distros. There are 3 preconfigured vnc servers which are "SUPPOSED" to give one a KDM login window, but for all the 11.x versions of SuSE I have never been able to get them to work. (Google shows me that I am not alone) So I was poking into them and could not find any documentation on Xvnc, other than doing a "Xvnc --help" to get the abbreviated parameter descriptions.

In the meantime, I have been using x11vnc instead. (KRDC and Krfb don't work for me either, sigh... This whole VNC world is kinda a mess on SuSE, IMHO!) But today I finally got fed up and tired of using ssh (or explaining how to use ssh to others) to start a remote x11vnc server all the time. So I decided come hell or high water I am going to get a daemon running on all my systems, so I and others around here can use VNC easier.

So I have now configured a new xinetd service to work with x11vnc instead of Xvnc. Others might be interested in doing what I have done also, so I will include the necessary info below. This won't give a new login/desktop like the Xvnc services are configured to do, instead this will connect the client VNC to the active desktop on the remote system, but for me that is actually more ideal anywise... This approach also requires one to set up a vnc password file for protection, since the VNC service will be running all the time and we will want to keep the nasty critters out... (Would be really really nice if x11vnc could work with PAM and use that authentication service instead, just a thought....)

So for the details....

To set up a x11vnc service, be sure to have the x11vnc modules from the SuSE repository installed on your system. Be sure port 5900 (or whatever port you choose) is open in your SuSEFirewall2. In /etc/xinitd.d create a file called x11vncservice and put the following in it -

service x11vncservice
socket_type = stream
protocol = tcp
wait = no
user = root
server = /usr/bin/x11vnc
server_args = -inetd -rfbauth /etc/vncpasswd -o /var/log/x11vnc.log -find -env FD_XDM=1
port = 5900

Next create the vncpasswd file -

cd /etc
x11vnc -storepasswd 'yourfavoritepassword' vncpasswd

and restart the xinitd services -

rcxinetd restart

VOILA! A vnc service that actually works on port 5900! SuSE 11.2 x86_64


< Previous Next >