Xvnc(1)
β¨ Xvnc(1) β the VNC server that's giving main character energy π¦
π NAME
Okay so Xvnc is "an X server providing VNC connectivity" πΈ. Basically it's an X server that gives you a VNC connection. Iconic, right? π
π SYNOPSIS
Xvnc [:display] [-geometry widthxheight] [-depth depth] [-pixelformat
rgbNNN|bgrNNN] [-udpinputport port] [-rfbport port] [-rfbwait
time] [-nocursor] [-rfbauth passwd-file] [-httpd dir] [-httpport
port] [-deferupdate time] [-economictranslate] [-lazytight]
[-desktop name] [-alwaysshared] [-nevershared] [-dontdisconnect]
[-viewonly] [-localhost] [-interface ipaddr] [-inetd]
[-compatiblekbd] [X-options...]
π DESCRIPTION
Okay so bestie, Xvnc is a VNC (Virtual Network Computing) server π₯οΈβ¨. It acts like an X server with a virtual display, and the display can be seen by a VNC viewer app, which might be running on a totally different machine. Go check out vncviewer(1) for that π. Xvnc is built inside the source code tree of XFree86 and shares a bunch of options with it π§.
Normally you don't need to start Xvnc by hand π
ββοΈ. Just use the vncserver(1) wrapper script instead! It sets reasonable defaults for the Xvnc session, and it checks a bunch of error conditions too, so it's literally doing the hard work for you π.
β οΈ Please read the BUGS section if you plan to use VNC on an untrusted network. Seriously, don't skip it π.
π¦ OPTIONS
Xvnc supports loads of standard X server options plus a number of VNC-specific ones π
. To see which standard X server options are supported, check the output of Xvnc -help and read the Xserver(1) manual page for the details π.
The VNC-specific options are as follows πΈ:
-geometry widthxheightβ Sets the desktop width and height π.-depth depthβ Sets the colour depth of the visual, in bits per pixel. It has to be somewhere between 8 and 32 π¨.-pixelformat rgbNNN|bgrNNNβ Sets the colour format for pixel representation. The viewer can convert to any other pixel format, but it's faster if the server's depth and pixel format match the equivalent values on the viewer's display π.-udpinputport portβ The UDP port for keyboard and pointer data β¨οΈ.-rfbport portβ The TCP port for the RFB protocol π. RFB is the protocol used for communication between the VNC server and its clients.-rfbwait timeβ The maximum time, in milliseconds, to wait for an RFB client (a VNC viewer) β³.-nocursorβ Don't put up a pointer cursor on the desktop π.-rfbauth passwd-fileβ Uses authentication on the RFB protocol, reading from the specified file π. The passwd-file can be created with thevncpasswd(1)utility.-httpd dirβ Serves files over HTTP from the specified directory π. Normally the Java viewer classes live in a directory like this.-httpport portβ The TCP port Xvnc listens on for incoming HTTP connections. This lets you reach the desktop from any Java-capable browser π.-deferupdate timeβ Time in milliseconds to defer screen updates (default40) β±οΈ. Deferring helps squish lots of tiny desktop changes into a few bigger updates, which saves network bandwidth πΈ.-economictranslateβ Uses a less memory-hungry pixel format translation π§ .-lazytightβ Disables the "gradient" filter in Tight encoding (TightVNC-specific) π¨. The gradient filter often helps improve data compression ratios, but it can slow the server down. Also, this filter is never used when a client enables JPEG compression in Tight encoding, so don't stress about it π«Ά.-desktop nameβ Sets the VNC desktop name ("x11"by default) π·οΈ.-alwayssharedβ Always treats new clients as shared, and never disconnects an existing client when a new one connects π€.-neversharedβ Never treats new clients as shared, so several simultaneous client connections aren't allowed π«.-dontdisconnectβ Doesn't disconnect existing clients when a new non-shared connection comes in. Instead, the new connection gets refused π ββοΈ.-viewonlyβ Ignores keyboard and pointer events from clients. Everyone can see the desktop, but nobody can control it π.-localhostβ Only allows loopback connections from localhost. This one pairs really well with SSH tunneling π.-interface ipaddrβ Listens for client connections only on the network interface with the givenipaddrπ‘.-inetdβ Xvnc gets launched by inetd. This option makes Xvnc redirect network input and output to stdin and stdout π.-compatiblekbdβ Sets the META and ALT keys to the same X modifier flag, like the original version of Xvnc by AT&T labs (TightVNC-specific) β¨οΈβ¨.
π¨ BUGS
Okay, this section is serious, so listen up π₯Ί. There are many security problems in the current Xvnc implementation. It's recommended to restrict network access to Xvnc servers from untrusted network addresses. The best way to secure an Xvnc server is probably to allow only loopback connections from the server machine (the -localhost option) and to use SSH tunneling for remote access. For details on SSH tunneling, check out <URL:http://www.cl.cam.ac.uk/Research/DTG/attarchive/vnc/sshvnc.html> π.
π«Ά SEE ALSO
vncserver(1), vncviewer(1), vncpasswd(1), vncconnect(1), sshd(1) π
π AUTHORS
The original VNC was developed at AT&T Laboratories Cambridge π¬π§. TightVNC additions were implemented by Constantin Kaplinsky, and many other people helped with development, testing and support π.
Man page authors:
- Marcus Brinkmann <Marcus.Brinkmann@ruhr-uni-bochum.de>
- Tim Waugh <twaugh@redhat.com>
- Constantin Kaplinsky <const@tightvnc.com>
Bestie, that's the whole tea βοΈ. Xvnc, TightVNC, August 2006, Xvnc(1) β you're officially a VNC expert now ππβ¨
π¦ where this page comes from
- debian bookworm: tightvncserver 1:1.3.10-7 Β· GPL-2.0-or-later
- debian trixie: tightvncserver 1:1.3.10-9 Β· GPL-2.0-or-later
- ubuntu jammy: tightvncserver 1:1.3.10-5 Β· GPL-2.0-or-later
- ubuntu noble: tightvncserver 1:1.3.10-8 Β· GPL-2.0-or-later
- ubuntu questing: tightvncserver 1:1.3.10-10
- ubuntu resolute: tightvncserver 1:1.3.10-10build1 Β· GPL-2.0-or-later
- ubuntu stonking: tightvncserver 1:1.3.10-11 Β· GPL-2.0-or-later
- Copyright (C) 1998 Marcus.Brinkmann@ruhr-uni-bochum.de
- Copyright (C) 2000, 2001 Red Hat, Inc
- Copyright (C) 2001, 2002 Constantin Kaplinsky
- π girlified by claude-haiku-5-5 on : a language model's rewrite of the original, under its terms