Files
Kevin Putnam 319727628b First commit
Signed-off-by: Kevin Putnam <kevin.putnam@intel.com>
2019-07-29 14:35:12 -07:00

1756 lines
120 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Remote-desktop to a host using VNC &mdash; Documentation for Clear Linux* project</title>
<script type="text/javascript" src="../../_static/js/modernizr.min.js"></script>
<script type="text/javascript" id="documentation_options" data-url_root="../../" src="../../_static/documentation_options.js"></script>
<script type="text/javascript" src="../../_static/jquery.js"></script>
<script type="text/javascript" src="../../_static/underscore.js"></script>
<script type="text/javascript" src="../../_static/doctools.js"></script>
<script async="async" type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.1/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>
<script type="text/javascript" src="../../_static/js/theme.js"></script>
<link rel="stylesheet" href="../../_static/css/theme.css" type="text/css" />
<link rel="stylesheet" href="../../_static/pygments.css" type="text/css" />
<link rel="author" title="About these documents" href="../../about.html" />
<link rel="index" title="Index" href="../../genindex.html" />
<link rel="search" title="Search" href="../../search.html" />
<link rel="next" title="Kernel development" href="../kernel/kernel-development.html" />
<link rel="prev" title="Combine multiple interfaces with network bonding" href="network-bonding.html" />
<link rel="stylesheet" href="../../_static/tcs_theme.css" type="text/css" />
</head>
<body class="wy-body-for-nav">
<div class="wy-grid-for-nav">
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
<div class="wy-side-scroll">
<div class="wy-side-nav-search" style="background: #007ab2" >
<a href="../../index.html" class="icon icon-home"> Clear Linux* Project Docs
<img src="../../_static/clearlinux.png" class="logo" alt="Logo"/>
</a>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../../search.html" method="get">
<input type="text" name="q" placeholder="Search docs" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
</div>
<div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
<div class="rst-versions" data-toggle="rst-versions" role="note" aria-label="versions">
<span class="rst-current-version" data-toggle="rst-current-version">
<span class="fa fa-book"> Clear Linux</span>
v: latest
<span class="fa fa-caret-down"></span>
</span>
<div class="rst-other-versions">
<dl>
<dt>Language Versions</dt>
<dd><a href="/clearlinux/latest/guides/network/vnc.html">English</a></dd>
<dd><a href="/clearlinux/latest/zh_CN/guides/network/vnc.html">Chinese</a></dd>
</dl>
<dl>
<dt>Document Versions</dt>
<dd><a href="/clearlinux/latest/guides/network/vnc.html">latest</a></dd>
<dd><a href="/clearlinux/L19.01/guides/network/vnc.html">L19.01</a></dd>
</dl>
<dl>
<dt>clearlinux.org links</dt>
<dd>
<a href="https://www.clearlinux.org/">Project Home</a>
</dd>
<dd>
<a href="https://github.com/clearlinux/clear-linux-documentation">GitHub</a>
</dd>
</dl>
</div>
</div>
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="../../get-started/get-started.html">Get started</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../../get-started/get-started.html#pre-install">Pre-install</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../get-started/compatibility-check.html">Check processor and EFI firmware compatibility</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/compatibility-check.html#check-compatibility">Check compatibility</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../get-started/bootable-usb/bootable-usb.html">Create a bootable USB drive</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bootable-usb/bootable-usb.html#prerequisites">Prerequisites</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bootable-usb/bootable-usb.html#create-a-bootable-usb-drive-on-linux">Create a bootable USB drive on Linux*</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bootable-usb/bootable-usb.html#create-a-bootable-usb-drive-on-macos">Create a bootable USB drive on macOS*</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bootable-usb/bootable-usb.html#create-a-bootable-usb-drive-on-windows">Create a bootable USB drive on Windows*</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../get-started/get-started.html#install">Install</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../get-started/bare-metal-install-desktop/bare-metal-install-desktop.html">Install Clear Linux* OS from the live desktop</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bare-metal-install-desktop/bare-metal-install-desktop.html#system-requirements">System requirements</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bare-metal-install-desktop/bare-metal-install-desktop.html#preliminary-steps">Preliminary steps</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bare-metal-install-desktop/bare-metal-install-desktop.html#install-from-live-image">Install from live image</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bare-metal-install-desktop/bare-metal-install-desktop.html#minimum-installation-requirements">Minimum installation requirements</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bare-metal-install-desktop/bare-metal-install-desktop.html#cl-desktop-installer">Clear Linux OS Desktop Installer</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bare-metal-install-desktop/bare-metal-install-desktop.html#navigation">Navigation</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bare-metal-install-desktop/bare-metal-install-desktop.html#required-options">Required options</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bare-metal-install-desktop/bare-metal-install-desktop.html#advanced-options">Advanced options</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bare-metal-install-desktop/bare-metal-install-desktop.html#finish-installation">Finish installation</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../get-started/bare-metal-install-server/bare-metal-install-server.html">Install Clear Linux* OS on bare metal with live server</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bare-metal-install-server/bare-metal-install-server.html#system-requirements">System requirements</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bare-metal-install-server/bare-metal-install-server.html#download-the-latest-cl-live-server-image">Download the latest Clear Linux OS live server image</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bare-metal-install-server/bare-metal-install-server.html#install-cl-on-your-target-system">Install Clear Linux OS on your target system</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bare-metal-install-server/bare-metal-install-server.html#launch-the-cl-installer">Launch the Clear Linux OS Installer</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bare-metal-install-server/bare-metal-install-server.html#minimum-installation-requirements">Minimum installation requirements</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bare-metal-install-server/bare-metal-install-server.html#main-menu">Main Menu</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bare-metal-install-server/bare-metal-install-server.html#navigation">Navigation</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bare-metal-install-server/bare-metal-install-server.html#required-options">Required options</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bare-metal-install-server/bare-metal-install-server.html#recommended-options">Recommended options</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bare-metal-install-server/bare-metal-install-server.html#advanced-options">Advanced options</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bare-metal-install-server/bare-metal-install-server.html#finish-installation">Finish installation</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/bare-metal-install-server/bare-metal-install-server.html#troubleshooting">Troubleshooting</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../get-started/install-configfile.html">Install using clr-installer and a configuration file</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/install-configfile.html#prerequisites">Prerequisites</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/install-configfile.html#process">Process</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/install-configfile.html#references">References</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../get-started/get-started.html#install-in-a-virtual-machine">Install in a virtual machine</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../get-started/virtual-machine-install/gce.html">Launch Clear Linux* OS Compute Engine on Google Cloud Platform*</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/gce.html#prerequisites">Prerequisites</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/gce.html#setup-cl-vm-on-gcp">Setup Clear Linux OS VM on GCP</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/gce.html#related-topics">Related topics</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../get-started/virtual-machine-install/hyper-v.html">Use Hyper-V*</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/hyper-v.html#prerequisites">Prerequisites</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/hyper-v.html#enable-hyper-v">Enable Hyper-V</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/hyper-v.html#create-a-virtual-network">Create a virtual network</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/hyper-v.html#create-a-virtual-machine">Create a virtual machine</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../get-started/virtual-machine-install/kvm.html">Run Clear Linux* OS as a KVM guest OS</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/kvm.html#install-qemu-kvm">Install QEMU-KVM</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/kvm.html#download-and-launch-the-virtual-machine">Download and launch the virtual machine</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/kvm.html#ssh-access-into-the-virtual-machine">SSH access into the virtual machine</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/kvm.html#optional-add-the-gnome-display-manager-gdm">Optional: Add the GNOME Display Manager (GDM)</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../get-started/virtual-machine-install/virtualbox-cl-installer.html">Install a Clear Linux* OS VM in VirtualBox*</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/virtualbox-cl-installer.html#prerequisites">Prerequisites</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/virtualbox-cl-installer.html#download-and-extract-the-cl-installer-iso">Download and extract the Clear Linux OS installer ISO</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/virtualbox-cl-installer.html#create-a-new-vb-virtual-machine">Create a new VirtualBox virtual machine</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/virtualbox-cl-installer.html#install-cl-on-the-vb-vm">Install Clear Linux OS on the VirtualBox VM</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/virtualbox-cl-installer.html#troubleshooting">Troubleshooting</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../get-started/virtual-machine-install/vmw-player.html">Install Clear Linux* OS as a VMware* Workstation Player guest OS</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmw-player.html#overview">Overview</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmw-player.html#install-the-vmware-workstation-player-hypervisor">Install the VMware Workstation Player hypervisor</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmw-player.html#download-the-latest-cl-installer">Download the latest Clear Linux OS installer</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmw-player.html#create-and-configure-a-new-vm">Create and configure a new VM</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmw-player.html#install-cl-into-the-new-vm">Install Clear Linux OS into the new VM</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmw-player.html#detach-the-cl-installer-iso-from-the-vm">Detach the Clear Linux OS installer ISO from the VM</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmw-player.html#enable-uefi-boot-support">Enable UEFI boot support</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmw-player.html#related-topics">Related topics</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../get-started/virtual-machine-install/vmw-player-preconf.html">Run pre-configured Clear Linux* OS image as a VMware* Workstation Player guest OS</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmw-player-preconf.html#overview">Overview</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmw-player-preconf.html#install-the-vmware-workstation-player-hypervisor">Install the VMware Workstation Player hypervisor</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmw-player-preconf.html#download-the-latest-cl-vmware-image">Download the latest Clear Linux OS VMware image</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmw-player-preconf.html#image-types">Image types</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmw-player-preconf.html#create-and-configure-a-new-vm">Create and configure a new VM</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmw-player-preconf.html#attach-the-pre-configured-cl-vmware-image">Attach the pre-configured Clear Linux OS VMware image</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmw-player-preconf.html#enable-uefi-boot-support">Enable UEFI boot support</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmw-player-preconf.html#power-on-the-vm">Power on the VM</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmw-player-preconf.html#related-topics">Related topics</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../get-started/virtual-machine-install/vmware-esxi-install-cl.html">Install Clear Linux* OS as a VMware* ESXi guest OS</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmware-esxi-install-cl.html#overview">Overview</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmware-esxi-install-cl.html#download-the-latest-cl-installer-iso">Download the latest Clear Linux OS installer ISO</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmware-esxi-install-cl.html#upload-the-cl-installer-iso-to-the-vmware-server">Upload the Clear Linux OS installer ISO to the VMware server</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmware-esxi-install-cl.html#create-and-configure-a-new-vm">Create and configure a new VM</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmware-esxi-install-cl.html#install-cl-into-the-new-vm">Install Clear Linux OS into the new VM</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmware-esxi-install-cl.html#reconfigure-the-vm-s-settings-to-boot-the-newly-installed-cl">Reconfigure the VMs settings to boot the newly-installed Clear Linux OS</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmware-esxi-install-cl.html#power-on-the-vm-and-boot-cl">Power on the VM and boot Clear Linux OS</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmware-esxi-install-cl.html#related-topics">Related topics</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../get-started/virtual-machine-install/vmware-esxi-preconfigured-cl-image.html">Run preconfigured Clear Linux* OS image as a VMware* ESXi guest OS</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmware-esxi-preconfigured-cl-image.html#overview">Overview</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmware-esxi-preconfigured-cl-image.html#download-the-latest-cl-vmware-image">Download the latest Clear Linux OS VMware image</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmware-esxi-preconfigured-cl-image.html#upload-the-cl-image-to-the-vmware-server">Upload the Clear Linux OS image to the VMware server</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmware-esxi-preconfigured-cl-image.html#convert-the-cl-image-to-an-esxi-supported-format">Convert the Clear Linux OS image to an ESXi-supported format</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmware-esxi-preconfigured-cl-image.html#create-and-configure-a-new-vm">Create and configure a new VM</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmware-esxi-preconfigured-cl-image.html#power-on-the-vm-and-boot-cl">Power on the VM and boot Clear Linux OS</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../get-started/virtual-machine-install/vmware-esxi-preconfigured-cl-image.html#related-topics">Related topics</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../maintenance/increase-virtual-disk-size.html">Increase virtual disk size of an image</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/increase-virtual-disk-size.html#determine-the-partition-order-and-sizes-of-the-prebuilt-image">Determine the partition order and sizes of the prebuilt image</a></li>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/increase-virtual-disk-size.html#id1">Increase virtual disk size</a></li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../../about.html">About</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../../about.html#training">Training</a></li>
</ul>
</li>
<li class="toctree-l1 current"><a class="reference internal" href="../guides.html">Guides</a><ul class="current">
<li class="toctree-l2"><a class="reference internal" href="../guides.html#clear-linux">Clear Linux</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../clear/autoproxy.html">Autoproxy</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../clear/autoproxy.html#description">Description</a></li>
<li class="toctree-l4"><a class="reference internal" href="../clear/autoproxy.html#how-it-works">How it works</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../clear/autospec.html">autospec</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../clear/autospec.html#description">Description</a></li>
<li class="toctree-l4"><a class="reference internal" href="../clear/autospec.html#how-it-works">How it works</a></li>
<li class="toctree-l4"><a class="reference internal" href="../clear/autospec.html#examples">Examples</a></li>
<li class="toctree-l4"><a class="reference internal" href="../clear/autospec.html#test-packaged-software">Test packaged software</a></li>
<li class="toctree-l4"><a class="reference internal" href="../clear/autospec.html#references">References</a></li>
<li class="toctree-l4"><a class="reference internal" href="../clear/autospec.html#related-topics">Related topics</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../clear/compatible-kernels.html">Kernels</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../clear/compatible-kernels.html#bare-metal-only">Bare metal only</a></li>
<li class="toctree-l4"><a class="reference internal" href="../clear/compatible-kernels.html#also-compatible-with-vms">Also compatible with VMs</a></li>
<li class="toctree-l4"><a class="reference internal" href="../clear/compatible-kernels.html#vm-only">VM only</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../clear/debug.html">Debug system</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../clear/debug.html#background">Background</a></li>
<li class="toctree-l4"><a class="reference internal" href="../clear/debug.html#usage">Usage</a></li>
<li class="toctree-l4"><a class="reference internal" href="../clear/debug.html#implementation">Implementation</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../clear/ister.html">ister.py image builder</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../clear/ister.html#description">Description</a></li>
<li class="toctree-l4"><a class="reference internal" href="../clear/ister.html#examples">Examples</a></li>
<li class="toctree-l4"><a class="reference internal" href="../clear/ister.html#related-topics">Related topics</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../clear/mixer.html">mixer</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../clear/mixer.html#description">Description</a></li>
<li class="toctree-l4"><a class="reference internal" href="../clear/mixer.html#how-it-works">How it works</a></li>
<li class="toctree-l4"><a class="reference internal" href="../clear/mixer.html#examples">Examples</a></li>
<li class="toctree-l4"><a class="reference internal" href="../clear/mixer.html#references">References</a></li>
<li class="toctree-l4"><a class="reference internal" href="../clear/mixer.html#related-topics">Related topics</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../clear/security.html">OS Security</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../clear/security.html#security-in-updates">Security in updates</a></li>
<li class="toctree-l4"><a class="reference internal" href="../clear/security.html#security-in-software">Security in software</a></li>
<li class="toctree-l4"><a class="reference internal" href="../clear/security.html#security-in-system-design">Security in system design</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../clear/stateless.html">Stateless</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../clear/stateless.html#file-level-separation">File-level separation</a></li>
<li class="toctree-l4"><a class="reference internal" href="../clear/stateless.html#software-configuration">Software configuration</a></li>
<li class="toctree-l4"><a class="reference internal" href="../clear/stateless.html#system-reset">System reset</a></li>
<li class="toctree-l4"><a class="reference internal" href="../clear/stateless.html#additional-information">Additional information</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../clear/swupd-guide.html">swupd</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../clear/swupd-guide.html#description">Description</a></li>
<li class="toctree-l4"><a class="reference internal" href="../clear/swupd-guide.html#how-it-works">How it works</a></li>
<li class="toctree-l4"><a class="reference internal" href="../clear/swupd-guide.html#examples">Examples</a></li>
<li class="toctree-l4"><a class="reference internal" href="../clear/swupd-guide.html#quick-reference">Quick reference</a></li>
<li class="toctree-l4"><a class="reference internal" href="../clear/swupd-guide.html#related-topics">Related topics</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../telemetrics/telem-guide.html">Telemetrics</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../telemetrics/telem-guide.html#overview">Overview</a></li>
<li class="toctree-l4"><a class="reference internal" href="../telemetrics/telem-guide.html#how-to-use">How to use</a></li>
<li class="toctree-l4"><a class="reference internal" href="../telemetrics/telem-guide.html#examples">Examples</a></li>
<li class="toctree-l4"><a class="reference internal" href="../telemetrics/telem-guide.html#reference">Reference</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../guides.html#maintenance">Maintenance</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../maintenance/architect-lifecycle.html">Architect the life-cycle of Clear Linux* OS</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/architect-lifecycle.html#prerequisites">Prerequisites</a></li>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/architect-lifecycle.html#description">Description</a></li>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/architect-lifecycle.html#content-workflow">Content Workflow</a></li>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/architect-lifecycle.html#release-workflow">Release Workflow</a></li>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/architect-lifecycle.html#implementation">Implementation</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../maintenance/assign-static-ip.html">Assign a static IP address</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/assign-static-ip.html#identify-which-program-is-managing-the-interface">Identify which program is managing the interface</a></li>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/assign-static-ip.html#using-networkmanager">Using NetworkManager</a></li>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/assign-static-ip.html#using-systemd-networkd">Using systemd-networkd</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../maintenance/bulk-provision.html">Bulk provision</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/bulk-provision.html#overview">Overview</a></li>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/bulk-provision.html#prerequisites">Prerequisites</a></li>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/bulk-provision.html#configuration">Configuration</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../maintenance/cpu-performance.html">CPU Power and Performance</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/cpu-performance.html#overview">Overview</a></li>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/cpu-performance.html#cpu-power-saving-mechanisms">CPU power saving mechanisms</a></li>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/cpu-performance.html#linux-cpu-clock-frequency-scaling">Linux CPU clock frequency scaling</a></li>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/cpu-performance.html#thermal-management">Thermal management</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../maintenance/developer-workstation.html">Developer Workstation</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/developer-workstation.html#workstation-setup">Workstation Setup</a></li>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/developer-workstation.html#swupd-search">swupd search</a></li>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/developer-workstation.html#core-concepts">Core Concepts</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../maintenance/download-verify-decompress.html">Download, verify, and decompress a Clear Linux* OS image</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/download-verify-decompress.html#linux-os-steps">Linux OS steps</a></li>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/download-verify-decompress.html#macos-steps">macOS* steps</a></li>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/download-verify-decompress.html#windows-os-steps">Windows* OS steps</a></li>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/download-verify-decompress.html#image-types">Image types</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../maintenance/enable-user-space.html">Create and enable a new user space</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/enable-user-space.html#create-a-new-user">Create a new user</a></li>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/enable-user-space.html#add-the-new-user-to-the-wheel-group">Add the new user to the <em>wheel</em> group</a></li>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/enable-user-space.html#install-and-update-the-os-software-to-its-current-version">Install and update the OS software to its current version</a></li>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/enable-user-space.html#add-a-bundle">Add a bundle</a></li>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/enable-user-space.html#next-steps">Next steps</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../maintenance/fix-broken-install.html">Fix a broken installation</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/fix-broken-install.html#overview">Overview</a></li>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/fix-broken-install.html#prerequisites">Prerequisites</a></li>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/fix-broken-install.html#boot-a-live-desktop-image-to-fix-target-system">Boot a live desktop image to fix target system</a></li>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/fix-broken-install.html#install-from-live-image">Install from live image</a></li>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/fix-broken-install.html#mount-root-partition-verify-and-fix">Mount root partition, verify, and fix</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../maintenance/hostname.html">Modify hostname</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/hostname.html#overview">Overview</a></li>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/hostname.html#set-your-hostname">Set your hostname</a></li>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/hostname.html#view-your-hostname">View your hostname</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../maintenance/increase-virtual-disk-size.html">Increase virtual disk size of an image</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/increase-virtual-disk-size.html#determine-the-partition-order-and-sizes-of-the-prebuilt-image">Determine the partition order and sizes of the prebuilt image</a></li>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/increase-virtual-disk-size.html#id1">Increase virtual disk size</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../maintenance/query-upstream.html">Query package info from upstream repository</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/query-upstream.html#overview">Overview</a></li>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/query-upstream.html#prerequisites">Prerequisites</a></li>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/query-upstream.html#configure-dnf">Configure DNF</a></li>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/query-upstream.html#dnf-command-usage-examples">DNF command usage examples</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../maintenance/resource-limits.html">Resource limits</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/resource-limits.html#system-wide-limits">System-wide limits</a></li>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/resource-limits.html#per-user-limits">Per-user limits</a></li>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/resource-limits.html#service-limits">Service limits</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../maintenance/restart.html">Restart system services after an OS update</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/restart.html#overview">Overview</a></li>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/restart.html#how-it-works">How it works</a></li>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/restart.html#basic-options">Basic options</a></li>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/restart.html#monitor-options">Monitor options</a></li>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/restart.html#example">Example</a></li>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/restart.html#telemetry">Telemetry</a></li>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/restart.html#conclusion">Conclusion</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../maintenance/time.html">Set the time</a></li>
<li class="toctree-l3"><a class="reference internal" href="../maintenance/validate-signatures.html">Validate signatures</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/validate-signatures.html#overview">Overview</a></li>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/validate-signatures.html#image-content-validation">Image content validation</a></li>
<li class="toctree-l4"><a class="reference internal" href="../maintenance/validate-signatures.html#update-content-validation">Update content validation</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../deploy-at-scale.html">Deploy at Scale</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../deploy-at-scale.html#overview">Overview</a></li>
<li class="toctree-l4"><a class="reference internal" href="../deploy-at-scale.html#pick-a-usage-and-update-strategy">Pick a usage and update strategy</a></li>
<li class="toctree-l4"><a class="reference internal" href="../deploy-at-scale.html#pick-an-image-distribution-strategy">Pick an image distribution strategy</a></li>
<li class="toctree-l4"><a class="reference internal" href="../deploy-at-scale.html#considerations-with-stateless-systems">Considerations with stateless systems</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l2 current"><a class="reference internal" href="../guides.html#network">Network</a><ul class="current">
<li class="toctree-l3"><a class="reference internal" href="custom-clear-container.html">Build a custom Clear Linux* OS based Docker container image</a><ul>
<li class="toctree-l4"><a class="reference internal" href="custom-clear-container.html#prerequisites">Prerequisites</a></li>
<li class="toctree-l4"><a class="reference internal" href="custom-clear-container.html#build-the-base-container-image">Build the base container image</a></li>
<li class="toctree-l4"><a class="reference internal" href="custom-clear-container.html#manage-bundles-in-a-container">Manage bundles in a container</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="dpdk.html">Use DPDK to send packets between platforms</a><ul>
<li class="toctree-l4"><a class="reference internal" href="dpdk.html#overview">Overview</a></li>
<li class="toctree-l4"><a class="reference internal" href="dpdk.html#prerequisites">Prerequisites</a></li>
<li class="toctree-l4"><a class="reference internal" href="dpdk.html#install-dpdk-and-build-l3fwd-example-platform-b">Install dpdk and build l3fwd example (Platform B)</a></li>
<li class="toctree-l4"><a class="reference internal" href="dpdk.html#build-pktgen-platform-a">Build pktgen (Platform A)</a></li>
<li class="toctree-l4"><a class="reference internal" href="dpdk.html#bind-nics-to-dpdk-kernel-drivers-platforms-a-and-b">Bind NICs to DPDK kernel drivers (Platforms A and B)</a></li>
<li class="toctree-l4"><a class="reference internal" href="dpdk.html#set-hugepages-platforms-a-and-b">Set hugepages (Platforms A and B)</a></li>
<li class="toctree-l4"><a class="reference internal" href="dpdk.html#set-up-the-physical-environment-platforms-a-and-b">Set up the physical environment (Platforms A and B)</a></li>
<li class="toctree-l4"><a class="reference internal" href="dpdk.html#run-l3fwd-application-platform-b">Run l3fwd application (Platform B)</a></li>
<li class="toctree-l4"><a class="reference internal" href="dpdk.html#run-pktgen-application-platform-a">Run pktgen application (Platform A)</a></li>
<li class="toctree-l4"><a class="reference internal" href="dpdk.html#appendix-a-use-pass-through-for-virtual-machines">Appendix A: Use pass-through for virtual machines</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="ipxe-install.html">Install over the network with iPXE</a><ul>
<li class="toctree-l4"><a class="reference internal" href="ipxe-install.html#overview">Overview</a></li>
<li class="toctree-l4"><a class="reference internal" href="ipxe-install.html#prerequisites">Prerequisites</a></li>
<li class="toctree-l4"><a class="reference internal" href="ipxe-install.html#configuration">Configuration</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="network-bonding.html">Combine multiple interfaces with network bonding</a></li>
<li class="toctree-l3 current"><a class="current reference internal" href="#">Remote-desktop to a host using VNC</a><ul>
<li class="toctree-l4"><a class="reference internal" href="#install-the-vnc-server-and-misc-components-on-your-host">Install the VNC server and misc. components on your host</a></li>
<li class="toctree-l4"><a class="reference internal" href="#configure-a-vnc-server-start-method-on-your-host">Configure a VNC-server-start method on your host</a></li>
<li class="toctree-l4"><a class="reference internal" href="#install-a-vnc-viewer-app-and-an-ssh-client-on-your-client-system">Install a VNC viewer app and an SSH client on your client system</a></li>
<li class="toctree-l4"><a class="reference internal" href="#establish-a-vnc-connection-to-your-host">Establish a VNC connection to your host</a></li>
<li class="toctree-l4"><a class="reference internal" href="#terminate-a-vnc-connection-to-your-host">Terminate a VNC connection to your host</a></li>
<li class="toctree-l4"><a class="reference internal" href="#encrypt-vnc-traffic-through-an-ssh-tunnel">Encrypt VNC traffic through an SSH tunnel</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../guides.html#kernel">Kernel</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../kernel/kernel-development.html">Kernel development</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../kernel/kernel-development.html#overview">Overview</a></li>
<li class="toctree-l4"><a class="reference internal" href="../kernel/kernel-development.html#request-changes-be-included-with-the-cl-kernel">Request changes be included with the Clear Linux OS kernel</a></li>
<li class="toctree-l4"><a class="reference internal" href="../kernel/kernel-development.html#set-up-kernel-development-environment">Set up kernel development environment</a></li>
<li class="toctree-l4"><a class="reference internal" href="../kernel/kernel-development.html#customize-the-linux-kernel-source">Customize the Linux kernel source</a></li>
<li class="toctree-l4"><a class="reference internal" href="../kernel/kernel-development.html#build-and-install-the-kernel">Build and install the kernel</a></li>
<li class="toctree-l4"><a class="reference internal" href="../kernel/kernel-development.html#related-topics">Related topics</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../kernel/kernel-modules.html">Add kernel modules manually</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../kernel/kernel-modules.html#overview">Overview</a></li>
<li class="toctree-l4"><a class="reference internal" href="../kernel/kernel-modules.html#description">Description</a></li>
<li class="toctree-l4"><a class="reference internal" href="../kernel/kernel-modules.html#kernel-module-availability">Kernel module availability</a></li>
<li class="toctree-l4"><a class="reference internal" href="../kernel/kernel-modules.html#build-install-and-load-an-out-of-tree-module">Build, install, and load an out-of-tree module</a></li>
<li class="toctree-l4"><a class="reference internal" href="../kernel/kernel-modules.html#examples">Examples</a></li>
<li class="toctree-l4"><a class="reference internal" href="../kernel/kernel-modules.html#related-topic">Related topic</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../kernel/kernel-modules-dkms.html">Add kernel modules with DKMS</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../kernel/kernel-modules-dkms.html#overview">Overview</a></li>
<li class="toctree-l4"><a class="reference internal" href="../kernel/kernel-modules-dkms.html#description">Description</a></li>
<li class="toctree-l4"><a class="reference internal" href="../kernel/kernel-modules-dkms.html#kernel-module-availability">Kernel module availability</a></li>
<li class="toctree-l4"><a class="reference internal" href="../kernel/kernel-modules-dkms.html#install-dkms">Install DKMS</a></li>
<li class="toctree-l4"><a class="reference internal" href="../kernel/kernel-modules-dkms.html#build-install-and-load-an-out-of-tree-module">Build, install, and load an out-of-tree module</a></li>
<li class="toctree-l4"><a class="reference internal" href="../kernel/kernel-modules-dkms.html#examples">Examples</a></li>
<li class="toctree-l4"><a class="reference internal" href="../kernel/kernel-modules-dkms.html#related-topics">Related topics</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../guides.html#stacks">Stacks</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../stacks/dars.html">Data Analytics Reference Stack</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../stacks/dars.html#the-data-analytics-reference-stack-release">The Data Analytics Reference Stack release</a></li>
<li class="toctree-l4"><a class="reference internal" href="../stacks/dars.html#using-the-docker-images">Using the Docker images</a></li>
<li class="toctree-l4"><a class="reference internal" href="../stacks/dars.html#building-dars-images">Building DARS images</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../stacks/greengrass.html">Enable AWS Greengrass* and OpenVINO™ toolkit</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../stacks/greengrass.html#overview">Overview</a></li>
<li class="toctree-l4"><a class="reference internal" href="../stacks/greengrass.html#supported-platforms">Supported platforms</a></li>
<li class="toctree-l4"><a class="reference internal" href="../stacks/greengrass.html#install-the-os-on-the-edge-device">Install the OS on the edge device</a></li>
<li class="toctree-l4"><a class="reference internal" href="../stacks/greengrass.html#configure-aws-greengrass-group">Configure AWS Greengrass group</a></li>
<li class="toctree-l4"><a class="reference internal" href="../stacks/greengrass.html#create-and-package-lambda-function">Create and package Lambda function</a></li>
<li class="toctree-l4"><a class="reference internal" href="../stacks/greengrass.html#configure-lambda-function">Configure Lambda function</a></li>
<li class="toctree-l4"><a class="reference internal" href="../stacks/greengrass.html#deploy-lambda-function">Deploy Lambda function</a></li>
<li class="toctree-l4"><a class="reference internal" href="../stacks/greengrass.html#references">References</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../stacks/dlrs/dlrs.html">Deep Learning Reference Stack</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../stacks/dlrs/dlrs.html#overview">Overview</a></li>
<li class="toctree-l4"><a class="reference internal" href="../stacks/dlrs/dlrs.html#tensorflow-single-and-multi-node-benchmarks">TensorFlow single and multi-node benchmarks</a></li>
<li class="toctree-l4"><a class="reference internal" href="../stacks/dlrs/dlrs.html#pytorch-single-and-multi-node-benchmarks">PyTorch single and multi-node benchmarks</a></li>
<li class="toctree-l4"><a class="reference internal" href="../stacks/dlrs/dlrs.html#kubeflow-multi-node-benchmarks">Kubeflow multi-node benchmarks</a></li>
<li class="toctree-l4"><a class="reference internal" href="../stacks/dlrs/dlrs.html#use-jupyter-notebook">Use Jupyter Notebook</a></li>
<li class="toctree-l4"><a class="reference internal" href="../stacks/dlrs/dlrs.html#uninstallation">Uninstallation</a></li>
<li class="toctree-l4"><a class="reference internal" href="../stacks/dlrs/dlrs.html#related-topics">Related topics</a></li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../../tutorials/tutorials.html">Tutorials</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../../tutorials/wordpress/wordpress.html">WordPress* on Clear Linux* OS</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/wordpress/web-server-install.html">Set up a LAMP web server on Clear Linux* OS</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../tutorials/wordpress/web-server-install.html#install-apache">Install Apache</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../tutorials/wordpress/web-server-install.html#change-the-default-configuration-and-data-directory">Change the default configuration and data directory</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../tutorials/wordpress/web-server-install.html#install-php">Install PHP</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../tutorials/wordpress/web-server-install.html#install-mariadb">Install MariaDB</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../tutorials/wordpress/web-server-install.html#install-phpmyadmin">Install phpMyAdmin</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../tutorials/wordpress/web-server-install.html#use-phpmyadmin-to-manage-a-database">Use phpMyAdmin to manage a database</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../tutorials/wordpress/web-server-install.html#next-steps">Next steps</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/wordpress/wp-install.html">Set up WordPress* on a LAMP web server</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../tutorials/wordpress/wp-install.html#before-you-begin">Before you begin</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../tutorials/wordpress/wp-install.html#create-a-wordpress-server">Create a WordPress server</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../tutorials/flatpak/flatpak.html">Use Flatpak* to install applications on Clear Linux* OS</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/flatpak/flatpak.html#before-you-begin">Before you begin</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../tutorials/flatpak/flatpak.html#install-flatpak-on-your-host-system">Install Flatpak on your host system</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../tutorials/flatpak/flatpak.html#install-and-run-the-libreoffice-flatpak-image">Install and run the LibreOffice Flatpak image</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../tutorials/flatpak/flatpak.html#launch-libreoffice">Launch LibreOffice</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../tutorials/machine-learning/machine-learning.html">TensorFlow* machine learning on Clear Linux* OS</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/machine-learning/machine-learning.html#prerequisites">Prerequisites</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/machine-learning/machine-learning.html#set-up-a-jupyter-notebook">Set up a Jupyter notebook</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/machine-learning/machine-learning.html#run-the-jupyter-machine-learning-example-code">Run the Jupyter machine learning example code</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/machine-learning/machine-learning.html#related-topics">Related topics</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../tutorials/docker/docker.html">Run Docker* on Clear Linux* OS</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/docker/docker.html#prerequisites">Prerequisites</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/docker/docker.html#install-the-containers-basic-bundle">Install the containers-basic bundle</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/docker/docker.html#integration-with-kata-containers-optional">Integration with Kata Containers* (optional)</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/docker/docker.html#additional-docker-configuration">Additional Docker configuration</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/docker/docker.html#pulling-and-running-an-image-from-docker-hub">Pulling and running an image from Docker Hub</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/docker/docker.html#creating-a-docker-swarm-cluster">Creating a Docker swarm cluster</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/docker/docker.html#related-topics">Related topics</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../tutorials/azure.html">Run Clear Linux* OS using Microsoft Azure CLI 2.0</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/azure.html#install-ms-azure-cli-2-0-on-cl">Install MS Azure CLI 2.0 on Clear Linux OS</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/azure.html#log-into-your-microsoft-azure-account">Log into your Microsoft Azure account</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/azure.html#create-a-ms-azure-resource-group">Create a MS Azure resource group</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/azure.html#create-and-log-into-the-cl-virtual-machine">Create and log into the Clear Linux OS virtual machine</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/azure.html#stop-and-deallocate-the-cl-vm-and-resources">Stop and deallocate the Clear Linux OS VM and resources</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/azure.html#next-steps">Next steps</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../tutorials/hadoop.html">Set up a single node cluster with Hadoop*</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/hadoop.html#prerequisites">Prerequisites</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/hadoop.html#install-apache-hadoop">Install Apache Hadoop</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/hadoop.html#configure-apache-hadoop">Configure Apache Hadoop</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/hadoop.html#configure-your-ssh-key">Configure your SSH key</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/hadoop.html#run-the-hadoop-daemons">Run the Hadoop daemons</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/hadoop.html#run-the-mapreduce-wordcount-example">Run the MapReduce wordcount example</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../tutorials/fmv.html">Use the function multi-version patch generator</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/fmv.html#install-and-configure-a-cl-host-on-bare-metal">Install and configure a Clear Linux OS host on bare metal</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/fmv.html#detect-loop-vectorization-candidates">Detect loop vectorization candidates</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/fmv.html#generate-the-fmv-patch">Generate the FMV patch</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/fmv.html#fft-project-example-using-fftw">FFT project example using FFTW</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../tutorials/aws-web/aws-web.html">Create and launch Clear Linux* OS from Amazon Web Services</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/aws-web/aws-web.html#prerequisites">Prerequisites</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/aws-web/aws-web.html#locate-select-and-launch-the-cl-basic-ami">Locate, select, and launch the Clear Linux OS Basic AMI</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/aws-web/aws-web.html#connect-to-your-clear-linux-os-basic-instance">Connect to your Clear Linux OS Basic instance</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/aws-web/aws-web.html#update-the-cl-instance">Update the Clear Linux OS instance</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/aws-web/aws-web.html#stop-the-cl-instance">Stop the Clear Linux OS instance</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../tutorials/smb/smb.html">Enable simple file sharing with a Windows* machine using Samba*</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/smb/smb.html#prerequisites">Prerequisites</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/smb/smb.html#set-up-file-sharing">Set up file sharing</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/smb/smb.html#map-cl-drive-in-windows">Map Clear Linux OS drive in Windows</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../tutorials/smb/smb-desktop.html">Connect to Windows* shared location from Clear Linux* OS desktop</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/smb/smb-desktop.html#prerequisites">Prerequisites</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/smb/smb-desktop.html#connect-to-windows-shared-location-with-nautilus">Connect to Windows shared location with Nautilus</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../tutorials/spark.html">Set up a standalone cluster system using Apache* Spark*</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/spark.html#prerequisites">Prerequisites</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/spark.html#install-apache-spark">Install Apache Spark</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/spark.html#configure-apache-spark">Configure Apache Spark</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/spark.html#start-the-master-server-and-a-worker-daemon">Start the master server and a worker daemon</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/spark.html#run-the-spark-wordcount-example">Run the Spark wordcount example</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../tutorials/kata.html">Install Kata Containers*</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kata.html#prerequisites">Prerequisites</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kata.html#id1">Install Kata Containers</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kata.html#run-kata-containers">Run Kata Containers</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kata.html#more-information-about-docker">More information about Docker</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../tutorials/kata.html#troubleshooting">Troubleshooting</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../tutorials/kata_migration.html">Migrate Clear Containers to Kata Containers*</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kata_migration.html#stop-clear-containers-instances">Stop Clear Containers instances</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kata_migration.html#manually-migrate-customized-configuration-files">Manually migrate customized configuration files</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kata_migration.html#enable-kata-containers-as-default">Enable Kata Containers as default</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kata_migration.html#run-kata-containers">Run Kata Containers</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../tutorials/kubernetes/kubernetes.html">Run Kubernetes*</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kubernetes/kubernetes.html#prerequisites">Prerequisites</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kubernetes/kubernetes.html#install-kubernetes-and-cri-runtimes">Install Kubernetes and CRI runtimes</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kubernetes/kubernetes.html#configure-kubernetes">Configure Kubernetes</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kubernetes/kubernetes.html#configure-and-run-kubernetes">Configure and run Kubernetes</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../tutorials/kubernetes/kubernetes.html#configure-and-run-cri-o-kata-runtime">Configure and run CRI-O + kata-runtime</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kubernetes/kubernetes.html#install-pod-network-add-on">Install pod network add-on</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kubernetes/kubernetes.html#use-your-cluster">Use your cluster</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kubernetes/kubernetes.html#related-topics">Related topics</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kubernetes/kubernetes.html#cloud-native-setup-automation-optional">Cloud native setup automation (optional)</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kubernetes/kubernetes.html#package-configuration-customization-optional">Package configuration customization (optional)</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kubernetes/kubernetes.html#proxy-configuration-optional">Proxy configuration (optional)</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kubernetes/kubernetes.html#next-steps">Next steps</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kubernetes/kubernetes.html#troubleshooting">Troubleshooting</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../tutorials/kubernetes/kubernetes-bp.html">Kubernetes Best Practices on Clear Linux OS</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kubernetes/kubernetes-bp.html#use-swupd-to-update-clusters">Use swupd to update clusters</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kubernetes/kubernetes-bp.html#prerequisites">Prerequisites</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kubernetes/kubernetes-bp.html#update-the-control-plane">Update the control plane</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/kubernetes/kubernetes-bp.html#update-worker-nodes">Update worker nodes</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../tutorials/yubikey-u2f.html">Enable YubiKey U2F Support</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/yubikey-u2f.html#prerequisites">Prerequisites</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/yubikey-u2f.html#enable-linux-udev-rules-for-yubikey">Enable Linux udev rules for YubiKey</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/yubikey-u2f.html#enable-u2f-in-mozilla-firefox">Enable U2F in Mozilla Firefox</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/yubikey-u2f.html#related-topics">Related topics</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../tutorials/nvidia.html">Install NVIDIA* Drivers</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/nvidia.html#prerequisites">Prerequisites</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/nvidia.html#install-dkms">Install DKMS</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/nvidia.html#download-and-install-the-nvidia-drivers">Download and install the NVIDIA drivers</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../tutorials/nvidia.html#download-the-nvidia-drivers-for-linux">Download the NVIDIA drivers for Linux</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../tutorials/nvidia.html#disable-the-nouveau-driver">Disable the nouveau driver</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../tutorials/nvidia.html#configure-alternative-software-paths">Configure alternative software paths</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../tutorials/nvidia.html#install-the-nvidia-drivers">Install the NVIDIA drivers</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/nvidia.html#updating-the-nvidia-drivers">Updating the NVIDIA drivers</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/nvidia.html#uninstalling-the-nvidia-drivers">Uninstalling the NVIDIA drivers</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/nvidia.html#debugging-installation-of-nvidia-drivers">Debugging installation of NVIDIA drivers</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/nvidia.html#additional-resources">Additional resources</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../tutorials/redis.html">Run Redis on Clear Linux* OS</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/redis.html#prerequisites">Prerequisites</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/redis.html#install-the-redis-bundle">Install the redis bundle</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/redis.html#start-the-redis-server">Start the redis-server</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/redis.html#example-1-use-the-redis-cli-and-try-commands">Example 1: Use the redis-cli and try commands</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/redis.html#example-2-run-the-cl-redis-docker-image">Example 2: Run the Clear Linux OS redis docker image</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/redis.html#next-steps">Next Steps</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../tutorials/tutorial-proxy.html">Setting up proxy</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/tutorial-proxy.html#prerequisites">Prerequisites</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/tutorial-proxy.html#shells-and-programs-in-a-desktop-session">Shells and programs in a desktop session</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../tutorials/tutorial-proxy.html#terminal">Terminal</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/tutorial-proxy.html#wget">wget</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/tutorial-proxy.html#system-service-docker">System service (Docker)</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../tutorials/tutorial-proxy.html#git-over-ssh">git over ssh</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../../reference/reference.html">Reference</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../../reference/compatible-hardware.html">Compatible Hardware</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../reference/bundle-commands.html">Useful bundle commands</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../reference/bundle-commands.html#additional-information">Additional information</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../reference/bundles/bundles.html">Available bundles</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../reference/bundles/bundles.html#bundle-list">Bundle list</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../reference/bundles/openssh-server.html">openssh-server</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../reference/bundles/openssh-server.html#prerequisites">Prerequisites</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../reference/bundles/openssh-server.html#change-default-port">Change default port</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../reference/bundles/openssh-server.html#enable-sftp">Enable SFTP</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../reference/bundles/openssh-server.html#enable-root-login">Enable root login</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../reference/bundles/openssh-server.html#enable-x11-forwarding">Enable X11-forwarding</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../reference/collaboration/collaboration.html">Documentation guidelines</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../reference/collaboration/collaboration.html#contribution-guidelines">Contribution guidelines</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../reference/collaboration/writing-guide.html">Writing guide: Describes the style we use to keep our documents clear and concise.</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../reference/collaboration/structure-formatting.html">Structure and formatting guide: Explains how we organize and format content, using reStructuredText and Sphinx.</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../reference/collaboration/collaboration.html#how-to-contribute">How to contribute</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../reference/collaboration/collaboration.html#contribute-via-github">Contribute via GitHub</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../reference/collaboration/collaboration.html#references">References</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../reference/system-requirements.html">Recommended minimum system requirements</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../reference/system-requirements.html#installer-requirements">Installer requirements</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../reference/system-requirements.html#id1">System requirements</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../reference/system-requirements.html#recommended-configurations">Recommended configurations</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../reference/image-types.html">Clear Linux* OS image types</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../reference/reference.html#clear-linux-concepts">Clear Linux concepts</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../concepts/autospec-about.html">Autospec</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../concepts/autospec-about.html#how-autospec-works">How autospec works</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../concepts/autospec-about.html#control-files">Control files</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../concepts/autospec-about.html#related-topics">Related topics</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../concepts/bundles-about.html">Bundles</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../concepts/bundles-about.html#next-steps">Next steps</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../concepts/mixer-about.html">Mixer</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../concepts/mixer-about.html#create-a-mix">Create a mix</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../concepts/mixer-about.html#related-topics">Related topics</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../concepts/swupd-about.html">swupd: software updater</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../concepts/swupd-about.html#versioning">Versioning</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../concepts/swupd-about.html#updating">Updating</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../concepts/swupd-about.html#bundles">Bundles</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../../concepts/telemetry-about.html">Telemetrics</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../../concepts/telemetry-about.html#architecture">Architecture</a></li>
<li class="toctree-l4"><a class="reference internal" href="../../concepts/telemetry-about.html#next-steps">Next steps</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../clear/stateless.html">Stateless</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../clear/stateless.html#file-level-separation">File-level separation</a></li>
<li class="toctree-l4"><a class="reference internal" href="../clear/stateless.html#software-configuration">Software configuration</a></li>
<li class="toctree-l4"><a class="reference internal" href="../clear/stateless.html#system-reset">System reset</a></li>
<li class="toctree-l4"><a class="reference internal" href="../clear/stateless.html#additional-information">Additional information</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="../clear/security.html">OS Security</a><ul>
<li class="toctree-l4"><a class="reference internal" href="../clear/security.html#security-in-updates">Security in updates</a></li>
<li class="toctree-l4"><a class="reference internal" href="../clear/security.html#security-in-software">Security in software</a></li>
<li class="toctree-l4"><a class="reference internal" href="../clear/security.html#security-in-system-design">Security in system design</a></li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../../FAQ/faq.html">FAQ</a><ul>
<li class="toctree-l2"><a class="reference internal" href="../../FAQ/faq.html#general">General</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../FAQ/faq.html#why-did-you-make-another-distro">Why did you make another distro?</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../FAQ/faq.html#can-other-distros-copy-cl-improvements">Can other distros copy Clear Linux OS improvements?</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../FAQ/faq.html#how-often-do-you-update">How often do you update?</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../FAQ/faq.html#is-telemetry-required">Is telemetry required?</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../FAQ/faq.html#what-is-the-default-firewall">What is the default firewall?</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../FAQ/faq.html#where-are-the-files-that-i-usually-see-under-etc-like-fstab">Where are the files that I usually see under /etc like fstab?</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../FAQ/faq.html#software-packages">Software packages</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../FAQ/faq.html#how-is-software-installed-and-updated">How is software installed and updated?</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../FAQ/faq.html#does-cl-use-rpms-like-other-distros">Does Clear Linux OS use RPMs like other distros?</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../FAQ/faq.html#can-i-install-a-software-package-from-another-os-on-cl">Can I install a software package from another OS on Clear Linux OS?</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../FAQ/faq.html#software-availability">Software availability</a><ul>
<li class="toctree-l3"><a class="reference internal" href="../../FAQ/faq.html#what-software-is-available-on-cl">What software is available on Clear Linux OS?</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../FAQ/faq.html#is-google-chrome-available">Is Google* Chrome* available?</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../FAQ/faq.html#is-ffmpeg-available">Is FFmpeg available?</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../FAQ/faq.html#is-zfs-available">Is ZFS* available?</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../FAQ/faq.html#can-you-add-a-driver-that-i-need">Can you add a driver that I need?</a></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
</nav>
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
<nav class="wy-nav-top" aria-label="top navigation">
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
<a href="../../index.html">Clear Linux* Project Docs</a>
</nav>
<div class="wy-nav-content">
<header id="header">
<div class="padding-md--left-right">
<div class="header__site_info">
<div class="header__site_info_name">
<a href ="https://clearlinux.org"> Clear Linux* Project</a>
</div>
</div>
<nav class="header__menu">
<ul class="header__menu_list">
<li class="header__menu_list_item green ">
<a tabindex='1' href="https://clearlinux.org/about">About</a>
</li>
<li class="header__menu_list_item purple ">
<a tabindex='1' href="https://clearlinux.org/developer">Developer</a>
</li>
<li class="header__menu_list_item blue ">
<a tabindex='1' href="https://clearlinux.org/software">Software</a>
</li>
</ul>
</nav>
</div>
</header>
<div class="rst-content">
<div role="navigation" aria-label="breadcrumbs navigation">
<ul class="wy-breadcrumbs">
<li><a href="../../index.html">Docs</a> &raquo;</li>
<li><a href="../guides.html">Guides</a> &raquo;</li>
<li>Remote-desktop to a host using VNC</li>
<li class="wy-breadcrumbs-aside">
<a href="https://github.com/clearlinux/clear-linux-documentation/blob/rtd-theme/source/guides/network/vnc.rst" class="fa fa-github"> Edit on GitHub</a>
</li>
</ul>
<hr/>
</div>
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody">
<div class="section" id="remote-desktop-to-a-host-using-vnc">
<span id="vnc"></span><h1>Remote-desktop to a host using VNC</h1>
<p>This guide describes how to use <abbr title="Virtual Network Computing">VNC</abbr> to
connect to a remote Clear Linux* OS host.</p>
<p>VNC is a client-server GUI-based tool that allows you to connect via
remote-desktop to your Clear Linux OS host.</p>
<div class="contents local topic" id="contents">
<ul class="simple">
<li><a class="reference internal" href="#install-the-vnc-server-and-misc-components-on-your-host" id="id11">Install the VNC server and misc. components on your host</a></li>
<li><a class="reference internal" href="#configure-a-vnc-server-start-method-on-your-host" id="id12">Configure a VNC-server-start method on your host</a></li>
<li><a class="reference internal" href="#install-a-vnc-viewer-app-and-an-ssh-client-on-your-client-system" id="id13">Install a VNC viewer app and an SSH client on your client system</a></li>
<li><a class="reference internal" href="#establish-a-vnc-connection-to-your-host" id="id14">Establish a VNC connection to your host</a></li>
<li><a class="reference internal" href="#terminate-a-vnc-connection-to-your-host" id="id15">Terminate a VNC connection to your host</a></li>
<li><a class="reference internal" href="#encrypt-vnc-traffic-through-an-ssh-tunnel" id="id16">Encrypt VNC traffic through an SSH tunnel</a></li>
</ul>
</div>
<div class="section" id="install-the-vnc-server-and-misc-components-on-your-host">
<h2><a class="toc-backref" href="#id11">Install the VNC server and misc. components on your host</a></h2>
<p>To configure VNC to work on your Clear Linux OS host, install these bundles:</p>
<ul class="simple">
<li><strong class="command">desktop-autostart</strong>: Installs <abbr title="Gnome Desktop Manager">GDM</abbr>, sets
it to start automatically on boot, and installs TigerVNC Viewer.</li>
<li><strong class="command">vnc-server</strong>: Installs the TigerVNC server.</li>
</ul>
<p>Follow these steps:</p>
<ol class="arabic">
<li><p class="first">Log into your Clear Linux OS host and get root privileges.</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>sudo -s
</pre></div>
</div>
</li>
<li><p class="first">Install the Clear Linux OS bundles.</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>swupd bundle-add desktop-autostart vnc-server
</pre></div>
</div>
</li>
<li><p class="first">Reboot your Clear Linux OS host.</p>
</li>
</ol>
</div>
<div class="section" id="configure-a-vnc-server-start-method-on-your-host">
<h2><a class="toc-backref" href="#id12">Configure a VNC-server-start method on your host</a></h2>
<p>There are three methods you can use to configure and start the VNC server on
your Clear Linux OS host:</p>
<table border="1" class="colwidths-given docutils" id="id1">
<caption><span class="caption-text">Table 1: VNC-server-start Configuration Methods</span></caption>
<colgroup>
<col width="14%" />
<col width="29%" />
<col width="29%" />
<col width="29%" />
</colgroup>
<thead valign="bottom">
<tr class="row-odd"><th class="head">Attribute</th>
<th class="head">Method 1: Manually start a VNC session</th>
<th class="head">Method 2: Automatically start a VNC session via a systemd service script</th>
<th class="head">Method 3: Create multi-user logins with authentication through GDM</th>
</tr>
</thead>
<tbody valign="top">
<tr class="row-even"><td>Description</td>
<td>This is the traditional method where you SSH into the Clear Linux OS host, manually
start a VNC session to get a display ID, and connect to it by
supplying the display ID.</td>
<td>The system administrator sets up a systemd service script for you with
a pre-assigned display ID. You make a VNC connection and supply
your pre-assigned display ID.</td>
<td>The system adminstrator configures GDM to accept connection requests.
When you make a VNC connection to the Clear Linux OS host, you see
the GDM login screen and authenticate as if you are local.</td>
</tr>
<tr class="row-odd"><td>Who configures VNC settings?</td>
<td>You</td>
<td>System adminstrator</td>
<td>System adminstrator</td>
</tr>
<tr class="row-even"><td>Who starts VNC session?</td>
<td>You</td>
<td>Set to start automatically on boot by system administrator</td>
<td>Set to start automatically on boot by system administrator</td>
</tr>
<tr class="row-odd"><td>Who ends VNC sesssion?</td>
<td>You</td>
<td>You</td>
<td>System administrator can disable VNC service altogether</td>
</tr>
<tr class="row-even"><td>Requires VNC password to authenticate?</td>
<td>Yes</td>
<td>Yes</td>
<td>No. Use Clear Linux OS account username and password through GDM</td>
</tr>
</tbody>
</table>
<p>Although all three methods can coexist on the same Clear Linux OS host, we recommend
you pick a method that suits your needs.</p>
<p>For simplicity, the rest of this guide refers to these methods as
Method 1, Method 2, and Method 3.</p>
<div class="section" id="method-1-manually-start-a-vnc-session">
<h3>Method 1: Manually start a VNC session</h3>
<p>You (and each user) must perform these steps to initialize your VNC settings.</p>
<ol class="arabic">
<li><p class="first">Log in.</p>
</li>
<li><p class="first">Open a terminal emulator.</p>
</li>
<li><p class="first">Start VNC with the <strong class="command">vncserver</strong> command. Since this is your
first time starting VNC, it adds default configuration files and asks you
to set a VNC password.</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>vncserver
</pre></div>
</div>
<p>Example output:</p>
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="go">You will require a password to access your desktops.</span>
<span class="go">Password:</span>
<span class="go">Verify:</span>
<span class="go">Would you like to enter a view-only password (y/n)? n</span>
<span class="go">xauth: file /home/vnc-user-a/.Xauthority does not exist</span>
<span class="go">New &#39;clr-linux:2 (vnc-user-a)&#39; desktop is clr-linux:2</span>
<span class="go">Creating default startup script /home/vnc-user-a/.vnc/xstartup</span>
<span class="go">Creating default config /home/vnc-user-a/.vnc/config</span>
<span class="go">Starting applications specified in /home/vnc-user-a/.vnc/xstartup</span>
<span class="go">Log file is /home/vnc-user-a/.vnc/clr-linux:2.log</span>
</pre></div>
</div>
<p>Upon completion, you can find the default configuration files and the
password file hidden in the <code class="file docutils literal notranslate"><span class="pre">.vnc</span></code> directory in your home directory.</p>
<p>A VNC session starts and shows a unique display ID, which is the
number following the hostname and the colon “:”. In the above example, the
display ID is 2. In a later step, you will supply the display ID to
your VNC viewer app for connection.</p>
</li>
<li><p class="first">Kill the active VNC session for the time being with the
<strong class="command">vncserver -kill :[display ID]</strong> command. Substitute [display ID]
with your active VNC session display ID. For example:</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>vncserver -kill :2
</pre></div>
</div>
<div class="admonition note">
<p class="first admonition-title">Note</p>
<p class="last">If you do not recall the active session display ID, use the
<strong class="command">vncserver -list</strong> command to find it.</p>
</div>
</li>
<li><p class="first">Optional configurations:</p>
<ul class="simple">
<li>To customize settings such as screen size, security type, etc.,
modify the <code class="file docutils literal notranslate"><span class="pre">$HOME/.vnc/config</span></code> file.</li>
<li>To customize the applications to run at startup, modify the
<code class="file docutils literal notranslate"><span class="pre">$HOME/.vnc/xstartup</span></code> file.</li>
</ul>
</li>
</ol>
</div>
<div class="section" id="method-2-automatically-start-a-vnc-session-via-a-systemd-service-script">
<h3>Method 2: Automatically start a VNC session via a systemd service script</h3>
<p>To configure VNC for this method, you must have root privileges. You will
set up a systemd service file for all intended VNC users with their own
preassigned unique display ID.</p>
<ol class="arabic">
<li><p class="first">Log in and get root privileges.</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>sudo -s
</pre></div>
</div>
</li>
<li><p class="first">Make sure the user accounts already exist. Use the following command to
list all users.</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>cut -d: -f1 /etc/passwd
</pre></div>
</div>
</li>
<li><p class="first">Create the path <code class="file docutils literal notranslate"><span class="pre">/etc/systemd/system</span></code>.</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>mkdir -p /etc/systemd/system
</pre></div>
</div>
</li>
<li><p class="first">Create a systemd service script file <code class="file docutils literal notranslate"><span class="pre">vncserver&#64;:[X].service</span></code>,
where [X] is the display ID, for each user in <code class="file docutils literal notranslate"><span class="pre">/etc/systemd/system</span></code>
Each user must be assigned a unique display ID. Be sure the correct
username is entered in the <span class="guilabel">User</span> field. The example below shows user
vnc-user-b who is assigned the display ID 5.</p>
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="gp">#</span> cat &gt; /etc/systemd/system/vncserver@:5.service &lt;&lt; EOF
<span class="go">[Unit]</span>
<span class="go">Description=VNC Remote Desktop Service for &quot;vnc-user-b&quot; with display ID &quot;5&quot;</span>
<span class="go">After=syslog.target network.target</span>
<span class="go">[Service]</span>
<span class="go">Type=simple</span>
<span class="go">User=vnc-user-b</span>
<span class="go">PAMName=login</span>
<span class="go">PIDFile=/home/%u/.vnc/%H%i.pid</span>
<span class="go">ExecStartPre=/bin/sh -c &#39;/usr/bin/vncserver -kill %i &gt; /dev/null 2&gt;&amp;1 || :&#39;</span>
<span class="go">ExecStart=/usr/bin/vncserver %i -geometry 2000x1200 -alwaysshared -fg</span>
<span class="go">ExecStop=/usr/bin/vncserver -kill %i</span>
<span class="go">[Install]</span>
<span class="go">WantedBy=multi-user.target</span>
<span class="go">EOF</span>
</pre></div>
</div>
</li>
<li><p class="first">Have each user log into their account and set a VNC password with
the <strong class="command">vncpasswd</strong> command before proceeding to the next step.</p>
</li>
<li><p class="first">Start the VNC service script and set it to start automatically on
boot for each user. Replace the [X] with the display ID.</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>systemctl daemon-reload
systemctl start vncserver@:<span class="o">[</span>X<span class="o">]</span>.service
systemctl <span class="nb">enable</span> vncserver@:<span class="o">[</span>X<span class="o">]</span>.service
</pre></div>
</div>
</li>
<li><p class="first">After starting the services, verify they are running.</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>systemctl <span class="p">|</span> grep vnc
</pre></div>
</div>
<p>The example below shows 2 VNC sessions that were successfully started for
users vnc-user-b with display ID 5 and vnc-user-c with display ID 6.</p>
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="gp">#</span> systemctl <span class="p">|</span> grep vnc
<span class="go">vncserver@:5.services loaded active running VNC Remote Desktop Service for &quot;vnc-user-b&quot; with display ID &quot;5&quot;</span>
<span class="go">vncserver@:6.services loaded active running VNC Remote Desktop Service for &quot;vnc-user-c&quot; with display ID &quot;6&quot;</span>
<span class="go">system-vncserver.slice loaded active active system-vncserver.slice</span>
</pre></div>
</div>
</li>
</ol>
</div>
<div class="section" id="method-3-multi-user-logins-with-authentication-through-gdm">
<h3>Method 3: Multi-user logins with authentication through GDM</h3>
<p>For this method, VNC is configured as a systemd service that listens on port
5900 and GDM is configured to accept access requests from VNC. When you
make a VNC connection to your Clear Linux OS host, you are presented with the GDM login
screen and you authenticate as if you are local. You must have root privileges
to perform this configuration.</p>
<ol class="arabic">
<li><p class="first">Log in and get root privileges.</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>sudo -s
</pre></div>
</div>
</li>
<li><p class="first">Create the path <code class="file docutils literal notranslate"><span class="pre">/etc/systemd/system</span></code>.</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>mkdir -p /etc/systemd/system
</pre></div>
</div>
</li>
<li><p class="first">Create a systemd socket file <code class="file docutils literal notranslate"><span class="pre">xvnc.socket</span></code> and add the following:</p>
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="gp">#</span> cat &gt; /etc/systemd/system/xvnc.socket &lt;&lt; EOF
<span class="go">[Unit]</span>
<span class="go">Description=XVNC Server on port 5900</span>
<span class="go">[Socket]</span>
<span class="go">ListenStream=5900</span>
<span class="go">Accept=yes</span>
<span class="go">[Install]</span>
<span class="go">WantedBy=sockets.target</span>
<span class="go">EOF</span>
</pre></div>
</div>
</li>
<li><p class="first">Create a systemd service file <code class="file docutils literal notranslate"><span class="pre">xvnc&#64;.service</span></code> and add the following:</p>
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="gp">#</span> cat &gt; /etc/systemd/system/xvnc@.service &lt;&lt; EOF
<span class="go">[Unit]</span>
<span class="go">Description=Daemon for each XVNC connection</span>
<span class="go">[Service]</span>
<span class="go">ExecStart=-/usr/bin/Xvnc -inetd -query localhost -geometry 2000x1200 -once -SecurityTypes=None</span>
<span class="go">User=nobody</span>
<span class="go">StandardInput=socket</span>
<span class="go">StandardError=syslog</span>
<span class="go">EOF</span>
</pre></div>
</div>
</li>
<li><p class="first">Create the path <code class="file docutils literal notranslate"><span class="pre">/etc/gdm</span></code>.</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>mkdir -p /etc/gdm
</pre></div>
</div>
</li>
<li><p class="first">Create a GDM <code class="file docutils literal notranslate"><span class="pre">custom.conf</span></code> file and add the following:</p>
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="gp">#</span> cat &gt; /etc/gdm/custom.conf &lt;&lt; EOF
<span class="go">[xdmcp]</span>
<span class="go">Enable=true</span>
<span class="go">Port=177</span>
<span class="go">EOF</span>
</pre></div>
</div>
</li>
<li><p class="first">Start the VNC socket script and set it to start automatically on boot.</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>systemctl daemon-reload
systemctl start xvnc.socket
systemctl <span class="nb">enable</span> xvnc.socket
</pre></div>
</div>
</li>
<li><p class="first">After starting the socket, verify it is running.</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>systemctl <span class="p">|</span> grep vnc
</pre></div>
</div>
<p>The example below shows the xvnc.socket is running.</p>
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="gp">#</span> systemctl <span class="p">|</span> grep vnc
<span class="go">xvnc.socket loaded active listening XVNC Server on port 5900</span>
<span class="go">system-xvnc.slice loaded active active system-xvnc.slice</span>
</pre></div>
</div>
</li>
</ol>
<p>See the vncserver Man page for additional information.</p>
</div>
</div>
<div class="section" id="install-a-vnc-viewer-app-and-an-ssh-client-on-your-client-system">
<h2><a class="toc-backref" href="#id13">Install a VNC viewer app and an SSH client on your client system</a></h2>
<p>You need a VNC viewer app on your client system to connect to your Clear Linux OS host.
An SSH client is only needed if you chose to use Method 1 or you plan to
encrypt your VNC traffic, which is discussed later in this guide.</p>
<p>Perform the steps below to add these apps to your client system.</p>
<div class="section" id="install-a-vnc-viewer-app">
<h3>Install a VNC viewer app</h3>
<p>On Clear Linux OS:</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>swupd bundle-add desktop-autostart
</pre></div>
</div>
<p>On Ubuntu*, Mint*:</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>apt-get install xtightvncviewer
</pre></div>
</div>
<p>On Fedora*:</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>dnf install tigervnc
</pre></div>
</div>
<p>On Windows*:</p>
<ul class="simple">
<li>Install <a class="reference external" href="https://www.realvnc.com/en/connect/download/viewer/windows/">RealVNC for Windows</a></li>
</ul>
<p>On macOS*:</p>
<ul class="simple">
<li>Install <a class="reference external" href="https://www.realvnc.com/en/connect/download/viewer/macos/">RealVNC for macOS</a></li>
</ul>
</div>
<div class="section" id="install-an-ssh-client">
<h3>Install an SSH client</h3>
<ul class="simple">
<li>On most Linux distros (Clear Linux OS, Ubuntu, Mint, Fedora, etc.) and macOS,
SSH is built-in so you dont need to install it.</li>
<li>On Windows, you can install <a class="reference external" href="https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html">Putty</a>.</li>
</ul>
</div>
</div>
<div class="section" id="establish-a-vnc-connection-to-your-host">
<h2><a class="toc-backref" href="#id14">Establish a VNC connection to your host</a></h2>
<p>Depending on the VNC-server-configuration method chosen, use the appropriate VNC
connection:</p>
<ul class="simple">
<li>If you chose Method 1, you must take a few extra steps by using SSH to connect
to your Clear Linux OS host and then manually launching VNC.</li>
<li>If you chose Method 2, get your preassigned VNC display ID from your system
administrator first and then proceed to the <a class="reference internal" href="#connect-to-vnc-session"><span class="std std-ref">Connect to your VNC session</span></a>
section below.</li>
<li>If you chose Method 3, proceed to the <a class="reference internal" href="#connect-to-vnc-session"><span class="std std-ref">Connect to your VNC session</span></a> below.</li>
</ul>
<div class="section" id="ssh-into-your-host-and-launch-vnc">
<h3>SSH into your host and launch VNC</h3>
<ol class="arabic">
<li><p class="first">SSH into your Clear Linux OS host</p>
<ol class="arabic">
<li><p class="first">On Linux distros and macOS:</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>ssh <span class="o">[</span>username<span class="o">]</span>@<span class="o">[</span>clear-linux-host-ip-address<span class="o">]</span>
</pre></div>
</div>
</li>
<li><p class="first">On Windows:</p>
<ol class="arabic">
<li><p class="first">Launch Putty.</p>
</li>
<li><p class="first">Under the <span class="guilabel">Category</span> section, select <span class="guilabel">Session</span>.
See Figure 1.</p>
</li>
<li><p class="first">Enter the IP address of your Clear Linux OS host in the
<span class="guilabel">Host Name (or IP address)</span> field.</p>
</li>
<li><p class="first">Set the <span class="guilabel">Connection type</span> option to <span class="guilabel">SSH</span>.</p>
</li>
<li><p class="first">Click the <span class="guilabel">Open</span> button.</p>
<div class="figure" id="id2">
<a class="reference internal image-reference" href="../../_images/vnc-1.png"><img alt="Putty - configure SSH session settings" src="../../_images/vnc-1.png" style="width: 813.6px; height: 763.2px;" /></a>
<p class="caption"><span class="caption-text">Figure 1: Putty - configure SSH session settings</span></p>
</div>
</li>
</ol>
</li>
</ol>
</li>
<li><p class="first">Log in with your Clear Linux OS username and password. Do not use your VNC password.</p>
</li>
<li><p class="first">Start a VNC session.</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>vncserver
</pre></div>
</div>
<p>Example output:</p>
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="go">New &#39;clr-linux:3 (vnc-user-c)&#39; desktop is clr-linux:3</span>
<span class="go">Starting applications specified in /home/vnc-user-c/.vnc/xstartup</span>
<span class="go">Log file is /home/vnc-user-c/.vnc/clr-linux:3.log</span>
</pre></div>
</div>
</li>
<li><p class="first">Take note of the generated display ID because you will input it into
the VNC viewer app to establish the connection. The above example shows
the display ID is 3.</p>
<div class="admonition note">
<p class="first admonition-title">Note</p>
<p>VNC automatically picks a unique display ID unless you specify one.
To specify a display ID, enter a unique number that is not already
in use after the colon. For example:</p>
<div class="last highlight-bash notranslate"><div class="highlight"><pre><span></span>vncserver :8
</pre></div>
</div>
</div>
</li>
<li><p class="first">You can now end the SSH connection by logging out. This does
not terminate your active VNC session.</p>
</li>
</ol>
</div>
<div class="section" id="connect-to-your-vnc-session">
<span id="connect-to-vnc-session"></span><h3>Connect to your VNC session</h3>
<p>For Method 1 and Method 2, you must connect to a specific active session
or display ID using one of two options:</p>
<ul class="simple">
<li>Use a fully-qualified VNC port number, which consists of the default VNC
server port (5900) plus the display ID</li>
<li>Use the display ID</li>
</ul>
<p>For example, if the display ID is 3, it can be specified as 5903 or just
as 3. For Method 3, VNC does not expect a display ID. Use 5900. For simplicity,
the instructions below use the fully-qualified VNC port number.</p>
<p><strong>On Linux distros:</strong></p>
<ol class="arabic">
<li><p class="first">Open a terminal emulator and enter:</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>vncviewer <span class="o">[</span>clear-linux-host-ip-address<span class="o">]</span>:<span class="o">[</span>fully-qualified VNC port number<span class="o">]</span>
</pre></div>
</div>
</li>
<li><p class="first">Enter your credentials.</p>
<ul>
<li><p class="first">For Method 1 and Method 2, enter your VNC password. No username is
required.</p>
</li>
<li><p class="first">For Method 3, enter your Clear Linux OS account username and password through
GDM.</p>
<div class="admonition note">
<p class="first admonition-title">Note</p>
<p class="last">With Method 3, you cannot remotely log into your Clear Linux OS host through
VNC if you are logged in locally and vice versa.</p>
</div>
</li>
</ul>
</li>
</ol>
<p><strong>On Windows and macOS using RealVNC app:</strong></p>
<ol class="arabic">
<li><p class="first">Start the RealVNC viewer app. See Figure 2.</p>
</li>
<li><p class="first">Enter the IP address of the Clear Linux OS host and the fully-qualified
VNC port number.</p>
<p>The following screenshot shows connecting to Clear Linux OS host
192.168.25.54 with a fully-qualified VNC port number 5902.</p>
<div class="figure" id="id3">
<a class="reference internal image-reference" href="../../_images/vnc-2.png"><img alt="RealVNC Viewer" src="../../_images/vnc-2.png" style="width: 717.3000000000001px; height: 437.40000000000003px;" /></a>
<p class="caption"><span class="caption-text">Figure 2: RealVNC Viewer</span></p>
</div>
</li>
<li><p class="first">Press the <kbd class="kbd docutils literal notranslate">Enter</kbd> key.</p>
</li>
<li><p class="first">Enter your credentials.</p>
<ul>
<li><p class="first">For Method 1 and Method 2, enter your VNC password. No username is
required.</p>
</li>
<li><p class="first">For Method 3, enter your Clear Linux OS account username and password through
GDM.</p>
<div class="admonition note">
<p class="first admonition-title">Note</p>
<p class="last">With Method 3, you cannot remotely log into your Clear Linux OS host through
VNC if you are logged in locally and vice versa.</p>
</div>
</li>
</ul>
</li>
</ol>
<div class="section" id="optional-configure-realvnc-image-quality">
<h4>Optional: Configure RealVNC Image Quality</h4>
<p>To increase the RealVNC viewer image quality, manually change the <span class="guilabel">ColorLevel</span>
value. Follow these steps:</p>
<ol class="arabic">
<li><p class="first">Right-click a connection node and select <span class="guilabel">Properties…</span>.
See Figure 3.</p>
<div class="figure" id="id4">
<a class="reference internal image-reference" href="../../_images/vnc-3.png"><img alt="RealVNC Viewer - change connection node properties" src="../../_images/vnc-3.png" style="width: 522.0px; height: 425.7px;" /></a>
<p class="caption"><span class="caption-text">Figure 3: RealVNC Viewer - change connection node properties</span></p>
</div>
</li>
<li><p class="first">Select the <span class="guilabel">Expert</span> tab. See Figure 4.</p>
</li>
<li><p class="first">Select the <span class="guilabel">ColorLevel</span> setting and change it to your
preferred setting.</p>
<div class="figure" id="id5">
<a class="reference internal image-reference" href="../../_images/vnc-4.png"><img alt="RealVNC Viewer - change ColorLevel" src="../../_images/vnc-4.png" style="width: 630.0px; height: 855.0px;" /></a>
<p class="caption"><span class="caption-text">Figure 4: RealVNC Viewer - change <span class="guilabel">ColorLevel</span></span></p>
</div>
</li>
</ol>
</div>
</div>
</div>
<div class="section" id="terminate-a-vnc-connection-to-your-host">
<h2><a class="toc-backref" href="#id15">Terminate a VNC connection to your host</a></h2>
<p>For Method 1 and Method 2, once started, a VNC session remains active
on your Clear Linux OS host even if you close your VNC viewer app. If you want to
truly terminate an active VNC session, follow these steps:</p>
<ol class="arabic">
<li><p class="first">SSH into your Clear Linux OS host.</p>
</li>
<li><p class="first">Open a terminal emulator.</p>
</li>
<li><p class="first">Find the active VNC session display ID with the command
<strong class="command">vncserver -list</strong>.</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>vncserver -list
</pre></div>
</div>
</li>
<li><p class="first">Terminate it with the <strong class="command">vncserver -kill</strong> command followed by a
colon and the display ID.</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>vncserver -kill :<span class="o">[</span>display ID<span class="o">]</span>
</pre></div>
</div>
</li>
<li><p class="first">For Method 3, only the system administrator can stop and disable the
VNC service by using these commands:</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>systemctl stop xvnc.socket
systemctl disable xnvc.socket
</pre></div>
</div>
</li>
</ol>
</div>
<div class="section" id="encrypt-vnc-traffic-through-an-ssh-tunnel">
<h2><a class="toc-backref" href="#id16">Encrypt VNC traffic through an SSH tunnel</a></h2>
<p>By default, VNC traffic is not encrypted. Figure 6 shows an example warning
from RealVNC Viewer.</p>
<div class="figure" id="id6">
<a class="reference internal image-reference" href="../../_images/vnc-6.png"><img alt="RealVNC Viewer - Connection not encrypted warning" src="../../_images/vnc-6.png" style="width: 563.4px; height: 375.3px;" /></a>
<p class="caption"><span class="caption-text">Figure 6: RealVNC Viewer - Connection not encrypted warning</span></p>
</div>
<p>To add security, VNC traffic can be routed through an SSH tunnel. This is
accomplished by following these steps:</p>
<ol class="arabic simple">
<li>Configure the VNC server to only accept connection from localhost by
adding the <strong class="command">-localhost</strong> option.</li>
<li>Set up an SSH tunnel between your client system and your Clear Linux OS host.
Your client system will forward traffic from the localhost (the client)
destined for a specified fully-qualified VNC port number (on the client)
to your Clear Linux OS host with the same port number.</li>
<li>The VNC viewer app on your client system will now connect to localhost,
instead of the IP address of your Clear Linux OS host.</li>
</ol>
<div class="section" id="configure-vnc-to-only-accept-connection-from-localhost">
<h3>Configure VNC to only accept connection from localhost</h3>
<p>For Method 1:</p>
<ol class="arabic">
<li><p class="first">Edit the <code class="file docutils literal notranslate"><span class="pre">config</span></code> file located in <code class="file docutils literal notranslate"><span class="pre">$HOME/.vnc</span></code> and uncomment
the <cite># localhost</cite> line. It should look like this:</p>
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="gp">#</span><span class="c1"># Supported server options to pass to vncserver upon invocation can be listed</span>
<span class="gp">#</span><span class="c1"># in this file. See the following manpages for more: vncserver(1)</span>
<span class="go">Xvnc(1).</span>
<span class="gp">#</span><span class="c1"># Several common ones are shown below. Uncomment and modify to your liking.</span>
<span class="gp">#</span><span class="c1">#</span>
<span class="gp">#</span> <span class="nv">securitytypes</span><span class="o">=</span>vncauth,tlsvnc
<span class="gp">#</span> <span class="nv">desktop</span><span class="o">=</span>sandbox
<span class="gp">#</span> <span class="nv">geometry</span><span class="o">=</span>2000x1200
<span class="go">localhost</span>
<span class="gp">#</span> alwaysshared
</pre></div>
</div>
</li>
<li><p class="first">If an active session exists, kill it, and then restart it.</p>
</li>
</ol>
<p>For Method 2:</p>
<ol class="arabic">
<li><p class="first">Edit the systemd service script <code class="file docutils literal notranslate"><span class="pre">vncserver&#64;:[X].service</span></code> located in
<code class="file docutils literal notranslate"><span class="pre">/etc/systemd/system</span></code> and add <strong class="command">-localhost</strong> to the <cite>ExecStart</cite>
line. The example below uses vncserver&#64;:5.service:</p>
<div class="highlight-console notranslate"><div class="highlight"><pre><span></span><span class="go">[Unit]</span>
<span class="go">Description=VNC Remote Desktop Service for &quot;vnc-user-b&quot; with display ID &quot;5&quot;</span>
<span class="go">After=syslog.target network.target</span>
<span class="go">[Service]</span>
<span class="go">Type=simple</span>
<span class="go">User=vnc-user-b</span>
<span class="go">PAMName=login</span>
<span class="go">PIDFile=/home/%u/.vnc/%H%i.pid</span>
<span class="go">ExecStartPre=/bin/sh -c &#39;/usr/bin/vncserver -kill %i &gt; /dev/null 2&gt;&amp;1 || :&#39;</span>
<span class="go">ExecStart=/usr/bin/vncserver %i -geometry 2000x1200 -localhost -alwaysshared -fg</span>
<span class="go">ExecStop=/usr/bin/vncserver -kill %i</span>
<span class="go">[Install]</span>
<span class="go">WantedBy=multi-user.target</span>
</pre></div>
</div>
</li>
<li><p class="first">Restart the service script:</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>systemctl daemon-load
systemctl restart vncserver@:5.service
</pre></div>
</div>
</li>
</ol>
<p>For Method 3:</p>
<ol class="arabic">
<li><p class="first">No change is needed to the <code class="file docutils literal notranslate"><span class="pre">xvnc&#64;service</span></code> script.</p>
<p>After you have restarted your VNC session, you can verify that it only
accepts connections from localhost by using the <strong class="command">netstat</strong>
command like this:</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>netstat -plant
</pre></div>
</div>
<div class="admonition note">
<p class="first admonition-title">Note</p>
<p class="last">Add the Clear Linux OS <strong class="command">network-basic</strong> bundle to get the <strong class="command">netstat</strong>
command.</p>
</div>
</li>
</ol>
<p>Figure 7 shows two VNC sessions (5901 and 5905) accepting connections from
any host as specified by the <cite>0.0.0.0</cite>s. This is before the
<strong class="command">-localhost</strong> option was used.</p>
<div class="figure" id="id7">
<a class="reference internal image-reference" href="../../_images/vnc-7.png"><img alt="VNC session accepting connection from any host" src="../../_images/vnc-7.png" style="width: 878.0px; height: 170.0px;" /></a>
<p class="caption"><span class="caption-text">Figure 7: VNC sessions (5901 and 5905) accepting connections from any host</span></p>
</div>
<p>Figure 8 shows two VNC sessions (5901 and 5905) only accepting connections from
localhost as specified by <cite>127.0.0.1</cite>s. This is after the
<strong class="command">-localhost</strong> option was used.</p>
<div class="figure" id="id8">
<a class="reference internal image-reference" href="../../_images/vnc-8.png"><img alt="VNC session only accepting connection from localhost" src="../../_images/vnc-8.png" style="width: 877.0px; height: 170.0px;" /></a>
<p class="caption"><span class="caption-text">Figure 8: VNC sessions (5901 and 5905) only accepting connections from localhost</span></p>
</div>
</div>
<div class="section" id="set-up-an-ssh-tunnel-from-your-client-system-to-your-cl-host">
<h3>Set up an SSH tunnel from your client system to your Clear Linux OS host</h3>
<p><strong>On Linux distros and macOS:</strong></p>
<ol class="arabic">
<li><p class="first">Open terminal emulator and enter:</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>ssh -L <span class="o">[</span>client port number<span class="o">]</span>:localhost:<span class="o">[</span>fully-qualified VNC port number<span class="o">]</span> <span class="se">\</span>
-N -f -l <span class="o">[</span>username<span class="o">]</span> <span class="o">[</span>clear-linux-host-ip-address<span class="o">]</span>
</pre></div>
</div>
</li>
<li><p class="first">Enter your Clear Linux OS account password (not your VNC password).</p>
<div class="admonition note">
<p class="first admonition-title">Note</p>
<ul class="last simple">
<li><cite>-L</cite> specifies that [client port number] on the localhost (on the
client side) is forwarded to [fully-qualified VNC port number]
(on the server side).</li>
<li>Replace <cite>[client port number]</cite> with an available client port number
(for example: 1234). For simplicity, you can make the
<cite>[client port number]</cite> the same as the <cite>[fully-qualified VNC port number]</cite>.</li>
<li>Replace <cite>[fully-qualified VNC port number]</cite> with 5900 (default VNC
port) plus the display ID. For example, if the display ID is 2,
the fully-qualified VNC port number is is 5902.</li>
<li><cite>-N</cite> tells SSH to only forward ports and not execute a remote
command.</li>
<li><cite>-f</cite> tells SSH to go into the background before command execution.</li>
<li><cite>-l</cite> specifies the username to log in as.</li>
</ul>
</div>
</li>
</ol>
<p><strong>On Windows:</strong></p>
<ol class="arabic">
<li><p class="first">Launch Putty.</p>
</li>
<li><p class="first">Specify the Clear Linux OS VNC host to connect to.</p>
<ol class="arabic simple">
<li>Under the <span class="guilabel">Category</span> section, select <span class="guilabel">Session</span>.
See Figure 1.</li>
<li>Enter the IP address of your Clear Linux OS host in the
<span class="guilabel">Host Name (or IP address)</span> field.</li>
<li>Set the <span class="guilabel">Connection type</span> option to <span class="guilabel">SSH</span>.</li>
</ol>
</li>
<li><p class="first">Configure the SSH tunnel. See Figure 9 for an example.</p>
<ol class="arabic">
<li><p class="first">Under the <span class="guilabel">Category</span> section, go to
<span class="guilabel">Connection</span> &gt; <span class="guilabel">SSH</span> &gt; <span class="guilabel">Tunnels</span>.</p>
</li>
<li><p class="first">In the <span class="guilabel">Source port</span> field, enter an available client
port number (for example: 1234). For simplicity, you can make the
<cite>Source port</cite> the same as the fully-qualified VNC port number.</p>
</li>
<li><p class="first">In the <span class="guilabel">Destination</span> field, enter
<cite>localhost:</cite> plus the fully-qualified VNC port number.</p>
</li>
<li><p class="first">Click the <span class="guilabel">Add</span> button.</p>
<div class="figure" id="id9">
<a class="reference internal image-reference" href="../../_images/vnc-9.png"><img alt="Putty - configure SSH tunnel" src="../../_images/vnc-9.png" style="width: 677.0px; height: 676.0px;" /></a>
<p class="caption"><span class="caption-text">Figure 9: Putty - configure SSH tunnel</span></p>
</div>
</li>
</ol>
</li>
<li><p class="first">Click the <span class="guilabel">Open</span> button.</p>
</li>
<li><p class="first">Enter your Clear Linux OS account password (not your VNC password).</p>
</li>
</ol>
</div>
<div class="section" id="connect-to-a-vnc-session-through-an-ssh-tunnel">
<h3>Connect to a VNC session through an SSH tunnel</h3>
<p>After you have set up an SSH tunnel, follow these instructions to connect to
your VNC session.</p>
<p><strong>On Linux distros:</strong></p>
<ol class="arabic">
<li><p class="first">Open terminal emulator and enter:</p>
<div class="highlight-bash notranslate"><div class="highlight"><pre><span></span>vncviewer localhost:<span class="o">[</span>client port number<span class="o">]</span>
</pre></div>
</div>
</li>
</ol>
<p><strong>On Windows and macOS using `RealVNC`:</strong></p>
<ol class="arabic">
<li><p class="first">Start the RealVNC viewer app.</p>
</li>
<li><p class="first">Enter <cite>localhost</cite> and the fully-qualified VNC port number. See Figure 10
for an example.</p>
<div class="figure" id="id10">
<a class="reference internal image-reference" href="../../_images/vnc-10.png"><img alt="RealVNC viewer app connecting to localhost:1234" src="../../_images/vnc-10.png" style="width: 797.0px; height: 486.0px;" /></a>
<p class="caption"><span class="caption-text">Figure 10: RealVNC viewer app connecting to <cite>localhost:1234</cite></span></p>
<div class="legend">
<div class="admonition note">
<p class="first admonition-title">Note</p>
<p class="last">RealVNC will still warn that the connection is not encrypted even
though its traffic is going through the SSH tunnel. You can ignore
this warning.</p>
</div>
</div>
</div>
</li>
</ol>
</div>
</div>
</div>
</div>
</div>
<footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="../kernel/kernel-development.html" class="btn btn-neutral float-right" title="Kernel development" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right"></span></a>
<a href="network-bonding.html" class="btn btn-neutral float-left" title="Combine multiple interfaces with network bonding" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left"></span> Previous</a>
</div>
<hr/>
<div role="contentinfo">
<p>
&copy; Copyright 2019, many
<span class="lastupdated">
Last updated on Jul 29, 2019.
</span>
</p>
</div>
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
</footer>
</div>
</div>
</section>
</div>
<script type="text/javascript">
jQuery(function () {
SphinxRtdTheme.Navigation.enable(true);
});
</script>
<script type="text/javascript" src="../../_static/tcs_theme.js"></script>
</body>
</html>