6.2
Table Of Contents
- Setting Up Horizon 6 for Linux Desktops
- Contents
- Setting Up Horizon 6 for Linux Desktops
- Installing and Configuring Horizon 6 for Linux Desktops
- Features of a Horizon 6 for Linux Desktop
- Overview of Configuration Steps for Horizon 6 for Linux Desktops
- System Requirements for Horizon 6 for Linux
- Create a Virtual Machine and Install Linux
- Prepare a Linux Guest Operating System for Remote Desktop Deployment
- Install View Agent on a Linux Virtual Machine
- Create a Desktop Pool That Contains Linux Virtual Machines
- Upgrade View Agent on a Linux Virtual Machine
- Configuring Linux Machines for 3D Graphics
- Bulk Deployment of Horizon 6 for Linux Desktops
- Overview of Bulk Deployment of Linux Desktops
- Create a Virtual Machine Template for Cloning Linux Desktop Machines
- Input File for the Sample PowerCLI Scripts to Deploy Linux Desktops
- Sample PowerCLI Script to Clone Linux Desktop Machines
- Sample PowerCLI Script to Install View Agent on Linux Desktops
- Sample PowerCLI Script to Upgrade View Agent on Linux Desktop Machines
- Sample PowerCLI Script to Perform Operations on Linux Desktop Machines
- Sample PowerShell Script to Delete Machines from the Connection Server LDAP Database
- Administering Horizon 6 for Linux Desktops
- Uninstalling and Reinstalling Horizon 6 for Linux Machines
- Configure Lossless PNG Images on Linux Desktops
- Suppress the vSphere Console Display of a Linux Desktop
- Configure a Left-handed Mouse on Ubuntu Desktops
- How to Perform Power Operations on Linux Desktops from vSphere
- Gather Information About Horizon 6 for Linux Software
- Troubleshooting Horizon 6 for Linux
- Collect Diagnostic Information for a Horizon 6 for Linux Machine
- Troubleshooting View Agent Registration Failure for a Linux Machine
- Troubleshooting an Unreachable View Agent on a Linux Machine
- Troubleshooting View Agent on a Linux Machine That Is Not Responding
- Configuring the Linux Firewall to Allow Incoming TCP Connections
- Index
Script Input
The input file is of type csv and contains the names of the machines to be deleted. The following example
shows what the input file may contain.
MachineName
linux-001
linux-002
linux-003
The sample script assumes that the name of this input file is DeleteMachineItems.csv and that the file is
located in the same folder as the scripts.
Script Content
<#
bulk Delete registered machine items from broker LDAP database.
#>
$csvFile = '.\DeleteMachineItems.csv'
#check if file exists
if (!(Test-Path $csvFile))
{
write-host -ForeGroundColor Red "CSV File $CSVFile not found"
exit
}
function IsNameInCsv($name)
{
$csvData = Import-CSV $csvFile;
foreach ($line in $csvData)
{
if($line.MachineName -eq $name)
{
Write-Host "$name exists in csv"
return $true;
}
}
Write-Host "$name does not exists in csv"
return $false;
}
$obj = [adsi]'LDAP://localhost:389/OU=Servers,DC=vdi,DC=vmware,DC=int';
foreach ($child in $obj.psbase.Children)
{
$machineName = $child.get("pae-DisplayName");
if(IsNameInCsv($machineName))
{
$machineAttributes = $child | get-member;
$machineAttributes = $machineAttributes -join ' ';
if ($machineAttributes -like "*pae-MemberDNOf*")
{
$desktopPool = $child.get("pae-MemberDNOf");
Write-Host "Skip $machineName, which is included by desktop pool $desktopPool";
Chapter 3 Bulk Deployment of Horizon 6 for Linux Desktops
VMware, Inc. 51