Streaming Linux target devices
This article provides information about streaming Linux target devices. Using the Linux streaming feature with Citrix Provisioning, you can provision Linux virtual desktops in the Citrix Virtual Apps and Desktops environment. For more information about the Linux streaming feature, seeCreate Linux VDAs using Citrix Provisioning.
You can use UEFI boot with Citrix Provisioning version 2106 and later.
Important:
We recommend that you use the most recent installation package of Citrix Provisioning. Use the package based on your Linux distribution. Citrix Provisioning Server 2109 or later is required to use Linux streaming agent 2109 and later.
Consider the following when provisioning Linux target devices:
- When you use Citrix Provisioning to stream Linux target devices, create a separate boot partition on the single shared-disk image so that the provisioned devices can boot as expected.
- Sometimes, the client drive cannot be mapped to a provisioned Linux VM session. To resolve this issue, halt the CDM service using
service ctxcdm stop
, before installing the Citrix Provisioning target device, then run thepvs-imager
command to convert it. - Linux streaming only supports Winbind as the tool for joining a Windows domain. Winbind provided by Samba 4.5 and newer is supported, including older releases.
- 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 Citrix Provisioning imager UI typically defaults to
im\_localhost
. This value must be changed when you create more than one vDisk. Using the same target device name causes the imager command to fail. - Installation (and subsequent updates) must be done in super user mode. There are two ways to install as a super user:
- Enter user mode in a terminal using the
su
command. - Enter
sudo
before the command. For example,sudo yum install tdb-tools
; entersudo
for every command.
- Enter user mode in a terminal using the
- The Linux client’s system clock must be synchronized by using the active directory controller.
- 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.
- SE Linux is not supported.
- Targets running on Citrix Hypervisor must run in HVM mode.
- After booting a Linux target device, a warning message might display indicating a SE Linux Alert Browser.
The following Linux distributions are supported:
- Ubuntu 22.04
- Ubuntu 20.04
- Ubuntu 18.04
- RHEL 9.2
- RHEL 9.0
- RHEL 8.8
- RHEL 8.6
- RHEL 7.9
- Rocky Linux 9.2
- Rocky Linux 9.0
- Rocky Linux 8.8
- Rocky Linux 8.6
- SUSE 15.4
- Two streamed Ubuntu 18.04 or Ubuntu 20.04 VMs hosted on ESXi get the same IP address through DHCP. To resolve this issue, configure the VM to use the MAC address as a unique ID to retrieve an IP address through DHCP.
- On Ubuntu 18.04, when installing the installation package an error may appear:
dracut-install: Failed to find module ‘crc32c’
. This is a known issue of Ubuntu 18.04. To resolve it, commentadd_drivers+=”crc32c”
in/etc/dracut.conf.d/10-debian.conf
and reinstall the package. - Create a vDisk using UEFI boot from a master VM using UEFI boot.
Installation
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.
Note:
You can download the packages fromDownloads. After you download, you can see the Linux streaming packages in
/Device/linux directory of Provisioning.iso
.
Install the Linux streaming package
For Ubuntu 22.04 distributions:
sudo dpkg -i pvs__ubuntu22.04_amd64.deb sudo apt-get -yf install
For Ubuntu 18.04 distributions:
apt-get - y安装dracut dracut-network apt-get -y install pvs__ubuntu18.04_amd64.deb
For Ubuntu 20.04 distributions:
sudo dpkg -i pvs__ubuntu20.04_amd64.deb sudo apt-get -yf install
For RHEL 9.2, RHEL 9.0, Rocky Linux 9.2, and Rocky Linux 9.0 distributions:
yum --nogpgcheck localinstall pvs__rhel9.0_x86_64.rpm
For RHEL 8.8, RHEL 8.6, Rocky Linux 8.8, and Rocky Linux 8.6 distributions:
yum --nogpgcheck localinstall pvs__rhel8.6_x86_64.rpm
For RHEL 7.9 distributions:
yum --nogpgcheck localinstall pvs__rhel7.9_x86_64.rpm
For SUSE 15.4 distributions:
zypper install pvs__suse15.2_x86_64.rpm
Using the GUI to create a Linux golden image
调用GUI安装此功能:
- Log in while an administrator.
Run the following:
pvs-imager
Tip:
When the
pvs-imager
command fails due to a host name issue, verify that your network configuration is correct. Do not set the system’s host name tolocalhost
. On RHEL 8.4, log in with the X11 display server instead of Wayland to use the GUI.PyQt5
,python3-pyqt5
, orpython3-pyqtgraph
is required to use the GUI.
After running the command, the UI page displays:
Using the command line interface to install the Linux streaming feature
To invoke the command line to install this feature:
- Log in while an administrator.
Run the following command:
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 following information illustrates non-GUI related installation options for the Linux Streaming feature:
Usage: ./pvs-imager [-hCU] [-a|--address=] [-u|--username=] [-p|--password=] [-P|--port=] [-d|--domain=] [-v|--vdisk=] [-s|--size=] [-c|--collection=] [-n|--name=] Non-GUI Modes: -C - Create a new vDisk ---OR---- -U - Update an existing vDisk General Options: -a - Address or hostname of PVS server -u - Username for API login -p - Password for API login -d - AD domain for API login -P - Base port for API login (default: 54321) -S - Store containing vDisk -c - Collection to store imaging device in -n - Device name for imaging device -v - vDisk name -s - vDisk size (Create Mode only, default: sourceDevice size) -D - devnode to clone -V - increment debug verbosity (up to 5 times) -g - Supported Grub settings ('debug')
Supported file systems for imaging areext4
,xfs
, orbtrfs
.
Tip:
Debugging logs for
pvs-imager
, created using-VVVVV
switch, are created in the folder that executed thepvs-imager
tool. The name of the log file ispvs-imager.log
.
About disk caching
For hard disk caching or hard disk overflow caching without the Citrix Virtual Apps and Desktops Setup Wizard, format the target device disk using a formatted partition. Include the labelPVS_Cache
. This object can be created with themkfs –L PVS_Cache
command on the target device. Any case-sensitive file system can be used for the cache, but XFS is recommended.
Tip:
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.
When configuring disk caching:
- Citrix recommends using the Citrix Virtual Apps and Desktops Setup Wizard to create the Linux target device.
- Manually creating the label requires adherence to case sensitivity to avoid configuration conflicts.
- Alternately, consider using the manual method for creating the write cache.
Manually creating the write cache for a target device
By default, the Citrix Virtual Apps and Desktops Setup Wizard ignores drives that are attached to the current template. The wizard creates a write cache based on parameters you provide. Sometimes, the write cache drive encounters problems during automatic creation using the wizard, or, when the target device continuously falls back to server side cache as a result of a problem with the created drive. To resolve these issues, manually create the object using themkfs –L PVS_Cache
command on the target device.
The Citrix Virtual Apps and Desktops Setup Wizard recognizes manually created write cache changes for the target device by default when you use theUseTemplatecache
parameter. On the provisioning server running the Citrix Virtual Apps and Desktops Setup Wizard, or where the remote provisioning console points, change the registry setting:
- Create the following registry key on the provisioning console machine to disable the template cache:
HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\ProvisioningServices
Name: UseTemplateCache
Type: DWORD
Value: 0
- Run the Citrix Virtual Apps and Desktops Setup Wizard. On theVirtual machinespage change the local write cache disk size to 0 GB (default is 6 GB).