c15992
.TH vncserver 1 "" "TigerVNC" "Virtual Network Computing"
c15992
.SH NAME
c15992
vncserver \- start or stop a VNC server
c15992
.SH SYNOPSIS
c15992
.B vncserver
c15992
.RI [: display# ]
c15992
.RB [ \-name
c15992
.IR desktop-name ]
c15992
.RB [ \-geometry
c15992
.IR width x height ]
c15992
.RB [ \-depth
c15992
.IR depth ]
c15992
.RB [ \-pixelformat
c15992
.IR format ]
c15992
.RB [ \-fp
c15992
.IR font-path ]
c15992
.RB [ \-fg ]
c15992
.RB [ \-autokill ]
c15992
.RB [ \-noxstartup ]
c15992
.RB [ \-xstartup
c15992
.IR script ]
c15992
.RI [ Xvnc-options... ]
c15992
.br
c15992
.BI "vncserver \-kill :" display#
c15992
.br
c15992
.BI "vncserver \-list"
c15992
.SH DESCRIPTION
c15992
.B vncserver
c15992
is used to start a VNC (Virtual Network Computing) desktop.
c15992
.B vncserver
c15992
is a Perl script which simplifies the process of starting an Xvnc server.  It
c15992
runs Xvnc with appropriate options and starts a window manager on the VNC
c15992
desktop.
c15992
c15992
.B vncserver
c15992
can be run with no options at all. In this case it will choose the first
c15992
available display number (usually :1), start Xvnc with that display number,
c15992
and start the default window manager in the Xvnc session.  You can also
c15992
specify the display number, in which case vncserver will attempt to start
c15992
Xvnc with that display number and exit if the display number is not
c15992
available.  For example:
c15992
c15992
.RS
c15992
vncserver :13
c15992
.RE
c15992
c15992
Editing the file $HOME/.vnc/xstartup allows you to change the applications run
c15992
at startup (but note that this will not affect an existing VNC session.)
c15992
c15992
.SH OPTIONS
c15992
You can get a list of options by passing \fB\-h\fP as an option to vncserver.
c15992
In addition to the options listed below, any unrecognised options will be
c15992
passed to Xvnc - see the Xvnc man page, or "Xvnc \-help", for details.
c15992
c15992
.TP
c15992
.B \-name \fIdesktop-name\fP
c15992
Each VNC desktop has a name which may be displayed by the viewer. The desktop
c15992
name defaults to "\fIhost\fP:\fIdisplay#\fP (\fIusername\fP)", but you can
c15992
change it with this option.  The desktop name option is passed to the xstartup
c15992
script via the $VNCDESKTOP environment variable, which allows you to run a
c15992
different set of applications depending on the name of the desktop.
c15992
.
c15992
.TP
c15992
.B \-geometry \fIwidth\fPx\fIheight\fP
c15992
Specify the size of the VNC desktop to be created. Default is 1024x768.
c15992
.
c15992
.TP
c15992
.B \-depth \fIdepth\fP
c15992
Specify the pixel depth (in bits) of the VNC desktop to be created. Default is
c15992
24.  Other possible values are 8, 15 and 16 - anything else is likely to cause
c15992
strange behaviour by applications.
c15992
.
c15992
.TP
c15992
.B \-pixelformat \fIformat\fP
c15992
Specify pixel format for Xvnc to use (BGRnnn or RGBnnn).  The default for
c15992
depth 8 is BGR233 (meaning the most significant two bits represent blue, the
c15992
next three green, and the least significant three represent red), the default
c15992
for depth 16 is RGB565, and the default for depth 24 is RGB888.
c15992
.
c15992
.TP
c15992
.B \-cc 3
c15992
As an alternative to the default TrueColor visual, this allows you to run an
c15992
Xvnc server with a PseudoColor visual (i.e. one which uses a color map or
c15992
palette), which can be useful for running some old X applications which only
c15992
work on such a display.  Values other than 3 (PseudoColor) and 4 (TrueColor)
c15992
for the \-cc option may result in strange behaviour, and PseudoColor desktops
c15992
must have an 8-bit depth.
c15992
.
c15992
.TP
c15992
.B \-kill :\fIdisplay#\fP
c15992
This kills a VNC desktop previously started with vncserver.  It does this by
c15992
killing the Xvnc process, whose process ID is stored in the file
c15992
"$HOME/.vnc/\fIhost\fP:\fIdisplay#\fP.pid".  The
c15992
.B \-kill
c15992
option ignores anything preceding the first colon (":") in the display
c15992
argument.  Thus, you can invoke "vncserver \-kill $DISPLAY", for example at the
c15992
end of your xstartup file after a particular application exits.
c15992
.
c15992
.TP
c15992
.B \-fp \fIfont-path\fP
c15992
If the vncserver script detects that the X Font Server (XFS) is running, it
c15992
will attempt to start Xvnc and configure Xvnc to use XFS for font handling.
c15992
Otherwise, if XFS is not running, the vncserver script will attempt to start
c15992
Xvnc and allow Xvnc to use its own preferred method of font handling (which may
c15992
be a hard-coded font path or, on more recent systems, a font catalog.)  In
c15992
any case, if Xvnc fails to start, the vncserver script will then attempt to
c15992
determine an appropriate X font path for this system and start Xvnc using
c15992
that font path.
c15992
c15992
The
c15992
.B \-fp
c15992
argument allows you to override the above fallback logic and specify a font
c15992
path for Xvnc to use.
c15992
.
c15992
.TP
c15992
.B \-fg
c15992
Runs Xvnc as a foreground process.  This has two effects: (1) The VNC server
c15992
can be aborted with CTRL-C, and (2) the VNC server will exit as soon as the
c15992
user logs out of the window manager in the VNC session.  This may be necessary
c15992
when launching TigerVNC from within certain grid computing environments.
c15992
.
c15992
.TP
c15992
.B \-autokill
c15992
Automatically kill Xvnc whenever the xstartup script exits.  In most cases,
c15992
this has the effect of terminating Xvnc when the user logs out of the window
c15992
manager.
c15992
.
c15992
.TP
c15992
.B \-noxstartup
c15992
Do not run the %HOME/.vnc/xstartup script after launching Xvnc.  This
c15992
option allows you to manually start a window manager in your TigerVNC session.
c15992
.
c15992
.TP
c15992
.B \-xstartup \fIscript\fP
c15992
Run a custom startup script, instead of %HOME/.vnc/xstartup, after launching
c15992
Xvnc. This is useful to run full-screen applications.
c15992
.
c15992
.TP
c15992
.B \-list
c15992
Lists all VNC desktops started by vncserver.
c15992
c15992
.SH FILES
c15992
Several VNC-related files are found in the directory $HOME/.vnc:
c15992
.TP
c15992
$HOME/.vnc/xstartup
c15992
A shell script specifying X applications to be run when a VNC desktop is
c15992
started.  If this file does not exist, then vncserver will create a default
c15992
xstartup script which attempts to launch your chosen window manager.
c15992
.TP
c15992
/etc/tigervnc/vncserver-config-defaults
c15992
The optional system-wide equivalent of $HOME/.vnc/config. If this file exists
c15992
and defines options to be passed to Xvnc, they will be used as defaults for
c15992
users. The user's $HOME/.vnc/config overrides settings configured in this file.
c15992
The overall configuration file load order is: this file, $HOME/.vnc/config,
c15992
and then /etc/tigervnc/vncserver-config-mandatory. None are required to exist.
c15992
.TP
c15992
/etc/tigervnc/vncserver-config-mandatory
c15992
The optional system-wide equivalent of $HOME/.vnc/config. If this file exists
c15992
and defines options to be passed to Xvnc, they will override any of the same
c15992
options defined in a user's $HOME/.vnc/config. This file offers a mechanism
c15992
to establish some basic form of system-wide policy. WARNING! There is
c15992
nothing stopping users from constructing their own vncserver-like script
c15992
that calls Xvnc directly to bypass any options defined in
c15992
/etc/tigervnc/vncserver-config-mandatory.  Likewise, any CLI arguments passed
c15992
to vncserver will override ANY config file setting of the same name. The
c15992
overall configuration file load order is:
c15992
/etc/tigervnc/vncserver-config-defaults, $HOME/.vnc/config, and then this file.
c15992
None are required to exist.
c15992
.TP
c15992
$HOME/.vnc/config
c15992
An optional server config file wherein options to be passed to Xvnc are listed
c15992
to avoid hard-coding them to the physical invocation. List options in this file
c15992
one per line. For those requiring an argument, simply separate the option from
c15992
the argument with an equal sign, for example: "geometry=2000x1200" or
c15992
"securitytypes=vncauth,tlsvnc". Options without an argument are simply listed
c15992
as a single word, for example: "localhost" or "alwaysshared".
c15992
.TP
c15992
$HOME/.vnc/passwd
c15992
The VNC password file.
c15992
.TP
c15992
$HOME/.vnc/\fIhost\fP:\fIdisplay#\fP.log
c15992
The log file for Xvnc and applications started in xstartup.
c15992
.TP
c15992
$HOME/.vnc/\fIhost\fP:\fIdisplay#\fP.pid
c15992
Identifies the Xvnc process ID, used by the
c15992
.B \-kill
c15992
option.
c15992
c15992
.SH SEE ALSO
c15992
.BR vncviewer (1),
c15992
.BR vncpasswd (1),
c15992
.BR vncconfig (1),
c15992
.BR Xvnc (1)
c15992
.br
c15992
https://www.tigervnc.org
c15992
c15992
.SH AUTHOR
c15992
Tristan Richardson, RealVNC Ltd., D. R. Commander and others.
c15992
c15992
VNC was originally developed by the RealVNC team while at Olivetti
c15992
Research Ltd / AT&T Laboratories Cambridge.  TightVNC additions were
c15992
implemented by Constantin Kaplinsky. Many other people have since
c15992
participated in development, testing and support. This manual is part
c15992
of the TigerVNC software suite.