Product Documentation

Configure Linux Streaming

Mar 08, 2017

To install the Linux Streaming component, you must be logged in while an administrator. If installing, consider that the following commands must be issued in a root shell, or by using sudo privileges.

Consider the following:

  • Linux streaming only supports winbind as the tool for joining a Windows domain.
  • When you enable RAM cache for the Linux device, set the cache size to 8 MB (the minimum value). Linux uses as much RAM as necessary, including all available memory, for the write cache. The amount specified in the console is the amount reserved up front. Citrix recommends that you reserve as little as possible, which effectively allows Linux to manage memory usage.
  • The target device name in the Provisioning Services imager UI typically defaults to im_localhost which must be changed when you create more than one vDisk. Using the same target device name may cause the Provisioning Services imager command to fail.
  • Installation (and subsequent updates) must be done in super user mode. There are two ways to do this:
    • Enter user mode in a terminal using the su command. You must do this once for a terminal session.
    • Enter sudo before the command. For example, sudo yum install tbd-tools; do this for every command.
  • The Linux client's system clock must be synchronized by using the active directory controller.
  • UEFI is not supported.
  • VMM is not supported.
  • The write cache drive must have the label PVS_Cache for it to be used as a write cache. The entire partition is used. 
  • English localizations are displayed on non-English installations.
  • The following Linux distributions are now supported:
    • SLES 12.2
    • CentOS/RHEL 7
  • SE Linux is not supported.
  • Targets running on XenServer must run in HVM mode.
  • After booting a Linux target device, a warning message might display indicating a SE Linux Alert Browser. 

Installation options

For RedHat/CentOS distributions:

Command Kopieren

yum --nogpgcheck localinstall pvs_RED_HAT_<package version>.rpm

Installation is done using a GUI or through the command line. To use the GUI, you must install PyQT4 using your preferred method for installing third party Python modules.


See the Python Wiki for more information on PyQT4 bindings.

Creating self-signed certificate for streaming Provisioning Services Linux target devices

If you are using the Linux Streaming feature, consider that the link from a Linux target device to the Provisioning Services Soap server uses an SSL connection which requires that you configure an X.509 Certificate on the Soap server. The CA certificate must also be present on the Provisioning Services server and the Linux target device.

Use the information in this section to access the configuration wizard for selecting the appropriate certificate used for the connection.


The CA and X.509 certificate can be created on Windows using the makecert command.


A self-signed certificate must be created if streaming Provisioning Services Linux target devices. The link among the Provisioning Services Soap server uses an SSL connection which requires that you configure an X.509 certificate on the Soap server.

The certificate's CA must also be present on the Provisioning Services server and the Linux target device.

To create a self-signed certificate for Linux VDA streaming:

1.  Download and install the Windows SDK for your PVS Server operating system.

2.  Open a command prompt and navigate to the bin folder of the SDK.  By default: C:\Program Files (x86)\Windows Kits\<SDK Version>\bin\x64>.

3.  Run the following commands:

Command Kopieren

makecert -n "CN=PVSRootCA" -r -sv PVSRootCA.pvk PVSRootCA.cer

makecert -sk PVSSoap -iv PVSRootCA.pvk -n "CN=FQDN of the PVS Server" -ic PVSRootCA.cer -sr localMachine -ss my -sky exchange -pe

4.  Install the PVS console and PVS server.

5.  Run configuration wizard.  On the Soap SSL Configuration screen, optionally choose the certificate created:

localized image


When the Soap SSL Configuration page first loads the certificate is highlighted (in gray) which gives the appearance that it is selected. Ensure that the certificate is selected. It should turn blue to indicate that it has been selected. 

6.  Finish the configuration wizard to create the Provisioning Services farm.

Using the GUI to create a Linux golden image

To invoke the GUI to install this feature:

  1. Log in while an administrator.
  2. Execute the following:
Command Kopieren



When the pvs-imager command fails due to a hostname issue, verify that your network configuration is correct. The system's hostname should not be set to localhost.

After executing the command, the UI page displays:

localized image

Using the command line interface to install the Linux streaming feature

To invoke the command line to install this feature:

  1. Log in while an administrator.
  2. Execute the following command:
Command Kopieren

pvs-imager -C

The command-line installation includes two options:

  • -C allows you to create a vDisk
  • -U allows you to update an existing vDisk

The image below illustrates non-GUI related installation options for the Linux Streaming feature:

command Kopieren

Usage: ./pvs-imager [-hCU] [-a|--address=<IPaddr>] [-u|--username=<username>] [-p|--password=<password>] [-P|--port=<port>] [-d|--domain=<domain] [-S|--store=<store>] [-v|--vdisk=<vdisk name>] [-s|--size=<vdisk size] [-D|--device=<sourceDevice>] [-c|--collection=<collection>] [-n|--name=<name>]


  Non-GUI Modes:

    -C            -    Create a new vDisk


    -U            -    Update an existing vDisk


  General Options:

    -a <server IP>  -    Address or hostname of PVS server

    -u <username>   -    Username for API login

    -p <password>   -    Password for API login

    -d <domain>     -    AD domain for API login

    -P <port>       -    Base port for API login (default: 54321)

    -S <store>      -    Store containing vDisk

    -c <collection> -    Collection to store imaging device in

    -n <name>       -    Device name for imaging device

    -v <name>       -    vDisk name

    -s <size>       -    vDisk size (Create Mode only, default: sourceDevice size)

    -D <sourceDev>  -    devnode to clone

    -V              -    increment debug verbosity (up to 5 times)

    -g <grubMode>   -    Supported Grub settings ( 'debug' )


Supported file systems for imaging are ext4, xfs, or btrfs.


Log files related to Provisioning Services can be found in /run/pvs/pvsvdd.log.

About disk caching

If you are not using the XenDesktop Setup Wizard, to use hard disk caching or hard disk overflow caching, the target device must have a disk by using a formatted partition by using the label ‘PVS_Cache.’ This object can be created with the mkfs –L ‘PVS_Cache’ command on the target device. Any case-sensitive file system can be used for the cache, but XFS is recommended.


An administrator can create any cache disk selection logic for their environment by writing a bash script that runs at launch time. The script would look for a cache device candidate by whatever mechanism is best suited to the environment, running mkfs on it, and rebooting.