You can create an automated full-clone desktop pool from Linux virtual machines. After you create the automated full-clone desktop pool, you can use the Linux virtual machines as remote desktops in a Horizon deployment.

The following procedure provides guidelines for configuring the mandatory settings for a Linux-based automated full-clone desktop pool. For more information about creating automated full-clone desktop pools, see Setting Up Virtual Desktops in Horizon.


  • Verify that you have prepared a virtual machine for cloning. See Preparing a Linux Virtual Machine for Desktop Deployment.
  • Verify that Horizon Agent is installed on the Linux guest operating systems. See Install Horizon Agent on a Linux Virtual Machine.
  • If you use the Winbind solution to join the Linux virtual machine to Active Directory, you must finish configuring the Winbind solution in the virtual machine template.
  • If you use the Winbind solution, you must run the domain join command on the virtual machine. Include the command in a shell script and specify the script path to the Horizon Agent option RunOnceScript in /etc/vmware/viewagent-custom.conf. For more information, see Setting Options in Configuration Files on a Linux Desktop.
  • Verify that vCenter Server is added to Horizon Connection Server.


  1. Create a guest customization specification.

    See "Create a Customization Specification for Linux" in the vSphere Virtual Machine Administration document, available from the VMware vSphere Documentation. When you create the specification, make sure that you specify the following settings correctly.

    Setting Value
    Target Virtual Machine OS Linux
    Computer Name Use the virtual machine name.
    Domain Specify the domain of the Horizon environment.
    Network Settings Use standard network settings.
    Primary DNS Specify a valid address.
    Note: For more information on Guest OS Customization Support Matrix, see
  2. In Horizon Console, add an automated desktop pool.
    Select Inventory > Desktops > Add.
  3. Select Automated Desktop Pool and click Next.
  4. Select Full Virtual Machines, select the vCenter Server instance, and click Next.
  5. Follow the prompts in the wizard to create the pool.
    1. On the Desktop Pool Settings page, set the following options.
      Option Description
      Default display protocol VMware Blast
      Allow users to choose protocol No
      3D Renderer Manage using vSphere Client for 2D desktop and NVIDIA GRID vGPU for 3D desktop
      Session Types You can enable the VM Hosted Applications feature by selecting the supported session type for the desktop pool:
      • Desktop. Select this option to use the pool as a regular desktop pool. All the virtual machines in the pool can only be used to host desktops.
      • Application. Select this option to use all the virtual machines in the pool to host applications.
      • Desktop and Application. When this option is selected, the virtual machine in the pool can either host a regular desktop session or host an application session. The first connection to the particular virtual machine will determine the session type of the virtual machine.

      For more information about the VM Hosted Applications feature, see the technical marketing white paper "Best Practices for Published Applications and Desktops in VMware Horizon and VMware Horizon Apps" available at

    2. When prompted, set the Virtual Machine Naming options.
      Option Description
      Specify names manually Enter names manually.
      Naming Pattern For example, specify LinuxVM-{n}.

      You must also specify the following desktop pool sizing options:

      • Maximum number of machines
      • Number of spare, powered-on machines
    3. When prompted, select the vCenter Server settings in sequence.
      You cannot skip a vCenter Server setting:
      1. Template
      2. VM folder location
      3. Host or cluster
      4. Resource pool
      5. Datastores
  6. After creating the desktop pool, entitle users to the machines in the desktop pool. In Horizon Console, select the desktop pool, select Entitlements > Add entitlement, and add users or groups.
  7. Wait until all the Linux virtual machines in the desktop pool become available.