ドメイン参加済みVDAをイージーインストールを使用して作成する

最終公開日 : Nov 13, 2026
重要:
  • 新規インストールの場合、迅速なインストールについてはこの記事を参照することをお勧めします。この記事では、イージーインストールを使用してLinux VDAをインストールおよび構成する方法を順を追って説明します。イージーインストールは、手動インストールよりも時間と労力を節約し、エラーが発生しにくいです。必要なパッケージをインストールし、構成ファイルを自動的にカスタマイズすることで、Linux VDAの実行環境をセットアップするのに役立ちます。
  • ドメインに参加していないVDAを作成するには、Machine Creation Services (MCS)を使用する必要があります。詳細については、「ドメインに参加していないLinux VDAの作成」を参照してください。
  • ドメインに参加していないVDAで利用可能な機能については、「ドメインに参加していないVDA」を参照してください。

ステップ1:構成情報とLinuxマシンを準備する

イージーインストールに必要な以下の構成情報を収集します。
  • ホスト名 - Linux VDAをインストールするマシンのホスト名
  • ドメインネームサーバーのIPアドレス
  • NTPサーバーのIPアドレスまたは文字列名
  • ドメイン名 - ドメインのNetBIOS名
  • レルム名 - Kerberosレルム名
  • ドメインの完全修飾ドメイン名 (FQDN)
重要:
  • Linux VDAをインストールするには、リポジトリがLinuxマシンに正しく追加されていることを確認します。
  • セッションを起動するには、X Windowシステムとデスクトップ環境がインストールされていることを確認します。

考慮事項

  • ワークグループ名は、デフォルトでドメイン名です。環境内でワークグループをカスタマイズするには、次の手順を実行します。
    a. Linux VDA マシンに /tmp/ctxinstall.conf ファイルを作成してください。
    b. そのファイルに workgroup=\<your workgroup\> の行を追加し、変更を保存してください。
  • Centrifyは純粋なIPv6 DNS構成をサポートしていません。adclientがADサービスを適切に検出するには、/etc/resolv.confにIPv4を使用するDNSサーバーが少なくとも1つ必要です。
    ログ:
    ADSITE   : Check that this machine's subnet is in a site known by AD   : Failed
             : This machine's subnet is not known by AD.
             : We guess you should be in the site Site1.
    この問題はCentrifyとその構成に固有のものです。この問題を解決するには、次の手順を実行します。
    a. ドメインコントローラーで管理ツールを開きます。
    b. Active Directoryサイトとサービスを選択します。 c. サブネットに適切なサブネットアドレスを追加します。
  • VDAを特定のOUに参加させるには、次の手順を実行します。
    1. ドメインコントローラーに特定のOUが存在することを確認します。
      OUの例については、次のスクリーンショットを参照してください
      OUの例
    2. VDA上に/tmp/ctxinstall.confファイルを作成します。
    3. /tmp/ctxinstall.confファイルにou=\<your ou\>行を追加します。
      OUの値は、ADの方法によって異なります。次の表は、前のスクリーンショットのOU名の例を示しています。組織内で他のOU名を使用することもできます。
      OS ウィンバインド SSSD セントリファイ PBIS
      アマゾン リナックス 2 ou="Linux/amazon" ou="Linux/amazon" ou="XD.LOCAL/Linux/amazon" ou="Linux/amazon"
      デビアン ou="Linux/debian" ou="Linux/debian" ou="XD.LOCAL/Linux/debian" ou="Linux/debian"
      RHEL 8、ロッキー リナックス 8 ou="OU=redhat,OU=Linux" ou="OU=redhat,OU=Linux" ou="XD.LOCAL/Linux/redhat" ou="Linux/redhat"
      RHEL 7 ou="Linux/redhat" ou="Linux/redhat" ou="XD.LOCAL/Linux/redhat" ou="Linux/redhat"
      SUSE ou="Linux/suse" ou="Linux/suse" ou="XD.LOCAL/Linux/suse" ou="Linux/suse"
      ウブントゥ ou="Linux/ubuntu" ou="Linux/ubuntu" ou="XD.LOCAL/Linux/ubuntu" ou="Linux/ubuntu"
  • 簡易インストールは、Linux VDA 7.16 以降、純粋な IPv6 をサポートしています。以下の前提条件と制限が適用されます。
    • マシンが純粋な IPv6 ネットワーク経由で必要なパッケージをダウンロードできるように、Linux リポジトリが構成されている必要があります。
    • Centrify は、純粋な IPv6 ネットワークではサポートされていません。
    注:
    ネットワークが純粋な IPv6 であり、すべての入力が適切な IPv6 形式である場合、VDA は IPv6 を介して Delivery Controller™ に登録されます。ネットワークがハイブリッド IPv4 と IPv6 の構成である場合、最初の DNS IP アドレスのタイプによって、登録に IPv4 または IPv6 のどちらが使用されるかが決まります。
  • ドメインに参加する方法として Centrify を選択した場合、ctxinstall.sh スクリプトには Centrify パッケージが必要です。ctxinstall.sh が Centrify パッケージを取得する方法は 2 つあります。
    • 簡易インストールは、Centrify パッケージをインターネットから自動的にダウンロードするのに役立ちます。各ディストリビューションの URL は次のとおりです。
      RHELの場合: wget <http://edge.centrify.com/products/centrify-suite/2016-update-1/installers/centrify-suite-2016.1-rhel4-x86_64.tgz?_ga=1.178323680.558673738.1478847956>
      CentOSの場合: wget <http://edge.centrify.com/products/centrify-suite/2016-update-1/installers/centrify-suite-2016.1-rhel4-x86_64.tgz?_ga=1.186648044.558673738.1478847956>
      SUSEの場合: wget <http://edge.centrify.com/products/centrify-suite/2016-update-1/installers/centrify-suite-2016.1-suse10-x86_64.tgz?_ga=1.10831088.558673738.1478847956>
      Ubuntu/Debian:wget <https://downloads.centrify.com/products/infrastructure-services/19.9/centrify-infrastructure-services-19.9-deb8-x86_64.tgz?_ga=2.151462329.1042350071.1592881996-604509155.1572850145>
    • Centrifyパッケージをローカルディレクトリから取得します。Centrifyパッケージのディレクトリを指定するには、次の手順を実行します。
      a. Linux VDA サーバー上に /tmp/ctxinstall.conf ファイルが存在しない場合は作成します。
      b. ファイルに「centrifypkgpath=\&lt;path name\>」の行を追加します。
      例:
      cat /tmp/ctxinstall.conf
      set "centrifypkgpath=/home/mydir"
      ls  -ls  /home/mydir
          9548 -r-xr-xr-x. 1 root root  9776688 May 13  2016 adcheck-rhel4-x86_64
          4140 -r--r--r--. 1 root root  4236714 Apr 21  2016 centrifyda-3.3.1-rhel4-x86_64.rpm
          33492 -r--r--r--. 1 root root 34292673 May 13  2016 centrifydc-5.3.1-rhel4-x86_64.rpm
          4 -rw-rw-r--. 1 root root     1168 Dec  1  2015 centrifydc-install.cfg
          756 -r--r--r--. 1 root root   770991 May 13  2016 centrifydc-ldapproxy-5.3.1-rhel4-x86_64.rpm
          268 -r--r--r--. 1 root root   271296 May 13  2016 centrifydc-nis-5.3.1-rhel4-x86_64.rpm
          1888 -r--r--r--. 1 root root  1930084 Apr 12  2016 centrifydc-openssh-7.2p2-5.3.1-rhel4-x86_64.rpm
          124 -rw-rw-r--. 1 root root   124543 Apr 19  2016 centrify-suite.cfg
          0 lrwxrwxrwx. 1 root root       10 Jul  9  2012 install-express.sh -> install.sh
          332 -r-xr-xr--. 1 root root   338292 Apr 10  2016 install.sh
          12 -r--r--r--. 1 root root    11166 Apr  9  2015 release-notes-agent-rhel4-x86_64.txt
          4 -r--r--r--. 1 root root     3732 Aug 24  2015 release-notes-da-rhel4-x86_64.txt
          4 -r--r--r--. 1 root root     2749 Apr  7  2015 release-notes-nis-rhel4-x86_64.txt
          12 -r--r--r--. 1 root root     9133 Mar 21  2016 release-notes-openssh-rhel4-x86_64.txt
  • ドメインに参加する方法としてPBISを選択した場合、ctxinstall.shスクリプトにはPBISパッケージが必要です。ctxinstall.shがPBISパッケージを取得する方法は2つあります。
    • Easy Installは、インターネットからPBISパッケージを自動的にダウンロードするのに役立ちます。各ディストリビューションのURLは次のとおりです。
      CentOS 7、RHEL 7、SUSE 12.5: wget https://github.com/BeyondTrust/pbis-open/releases/download/8.8.0/pbis-open-8.8.0.506.linux.x86_64.rpm.sh
      アマゾン リナックス 2、RHEL 8、ロッキー リナックス 8、スーゼ 15.3、スーゼ 15.2:wget https://github.com/BeyondTrust/pbis-open/releases/download/9.1.0/pbis-open-9.1.0.551.linux.x86_64.rpm.sh
      デビアン、ウブントゥ: wget https://github.com/BeyondTrust/pbis-open/releases/download/8.8.0/pbis-open-8.8.0.506.linux.x86_64.deb.sh
    • インターネットから特定のバージョンのPBISパッケージを取得します。これを行うには、/opt/Citrix/VDA/sbin/ctxinstall.shファイル内の「pbisDownloadPath」行を変更して、PBISパッケージのURLを指定します。
      例については、次のスクリーンショットを参照してください。
      PBISパッケージの特定のバージョンを取得 (/en-us/linux-virtual-delivery-agent/2203-ltsr/media/fetching-specific-version-of-pbis-package.png)

ステップ2:ハイパーバイザーを準備する

サポートされているハイパーバイザー上でLinux VDAを仮想マシンとして実行する場合、いくつかの変更が必要です。使用中のハイパーバイザープラットフォームに基づいて、以下の変更を行ってください。Linuxマシンをベアメタルハードウェアで実行している場合は、変更は不要です。

Citrix Hypervisor™での時刻同期を修正する

Citrix Hypervisorの時刻同期機能が有効になっている場合、各準仮想化Linux VM内でNTPとCitrix Hypervisorの両方がシステムクロックを管理しようとするため、問題が発生します。クロックが他のサーバーと同期しなくなるのを避けるため、各Linuxゲスト内のシステムクロックがNTPと同期していることを確認してください。この場合、ホストの時刻同期を無効にする必要があります。HVMモードでは変更は不要です。
Citrix VM Toolsがインストールされた準仮想化Linuxカーネルを実行している場合、Linux VM内からCitrix Hypervisorの時刻同期機能が存在し、有効になっているかを確認できます。
su -

cat /proc/sys/xen/independent_wallclock
このコマンドは0または1を返します。
  • 0 - 時刻同期機能は有効になっており、無効にする必要があります。
  • 1 - 時刻同期機能は無効になっており、それ以上の操作は不要です。
/proc/sys/xen/independent\_wallclockファイルが存在しない場合、以下の手順は不要です。
有効になっている場合は、ファイルに1を書き込むことで時刻同期機能を無効にします。
sudo echo 1 > /proc/sys/xen/independent_wallclock
この変更を再起動後も永続的に維持するには、/etc/sysctl.confファイルを編集し、以下の行を追加します。
xen.independent_wallclock = 1
これらの変更を確認するには、システムを再起動します。
su -

cat /proc/sys/xen/independent_wallclock
このコマンドは値1を返します。

Microsoft Hyper-Vでの時刻同期の修正

Hyper-V Linux Integration ServicesがインストールされているLinux VMは、Hyper-Vの時刻同期機能を使用してホストオペレーティングシステムの時刻を使用できます。システムクロックが正確に保たれるようにするには、NTPサービスと並行してこの機能を有効にする必要があります。
管理オペレーティングシステムから:
  1. Hyper-Vマネージャーコンソールを開きます。
  2. Linux VMの設定で、統合サービスを選択します。
  3. 時刻同期が選択されていることを確認します。
注:
このアプローチは、NTPとの競合を避けるためにホスト時刻同期が無効になっているVMwareおよびCitrix Hypervisorとは異なります。Hyper-Vの時刻同期はNTP時刻同期と共存し、補完することができます。

ESXおよびESXiでの時刻同期の修正

VMwareの時刻同期機能が有効になっている場合、各準仮想化Linux VM内でNTPとハイパーバイザーで問題が発生します。両方がシステムクロックを同期しようとします。クロックが他のサーバーと同期しなくなるのを避けるため、各Linuxゲスト内のシステムクロックがNTPと同期していることを確認してください。この場合、ホスト時刻同期を無効にする必要があります。
VMware Toolsがインストールされた準仮想化Linuxカーネルを実行している場合:
  1. vSphere Clientを開きます。
  2. Linux VMの設定を編集します。
  3. 仮想マシンプロパティダイアログで、オプションタブを開きます。
  4. VMware Toolsを選択します。
  5. 詳細ボックスで、ゲストの時刻をホストと同期のチェックを外します。

ステップ3:.NET Runtime 6.0を前提条件としてインストールする

Linux VDAをインストールする前に、<https://docs.microsoft.com/ja-jp/dotnet/core/install/linux-package-managers>の指示に従って.NET Runtime 6.0をインストールします。
.NET Runtime 6.0のインストール後、which dotnetコマンドを実行してランタイムパスを見つけます。
コマンド出力に基づいて、.NETランタイムバイナリパスを設定します。たとえば、コマンド出力が/aa/bb/dotnetの場合、/aa/bbを.NETバイナリパスとして使用します。

ステップ4:Linux VDAパッケージをダウンロードする

Citrix Virtual Apps and Desktopsダウンロードページにアクセスします。Citrix Virtual Apps and Desktopsの適切なバージョンを展開し、コンポーネントをクリックして、お使いのLinuxディストリビューションに一致するLinux VDAパッケージをダウンロードします。

ステップ 5: Linux VDA パッケージをインストールする

Linux VDA の環境をセットアップするには、次のコマンドを実行します。
RHEL/CentOS/Rocky Linux ディストリビューションの場合:
sudo yum -y localinstall <PATH>/<Linux VDA RPM>
注:
GCP でホストされている RHEL 8.x に Linux VDA をインストールした後、イーサネット接続が失われ、VM の再起動後に Linux VDA に到達できなくなることがあります。この問題を回避するには、VM を再起動する前に次のコマンドを実行します。
nmcli dev connect eth0
systemctl NetworkManager restart
Ubuntu/Debian ディストリビューションの場合:
sudo dpkg -i <PATH>/<Linux VDA deb>
sudo apt-get install -f
注:
Debian ディストリビューションに必要な依存関係をインストールするには、deb http://deb.debian.org/debian/ oldstable main の行を /etc/apt/sources.list ファイルに追加します。
SUSE ディストリビューションの場合:
zypper -i install <PATH>/<Linux VDA RPM>

ステップ 6: NVIDIA GRID ドライバーをインストールする

HDX™ 3D Pro を有効にするには、ハイパーバイザーと VDA マシンに NVIDIA GRID ドライバーをインストールする必要があります。
特定のハイパーバイザーに NVIDIA GRID Virtual GPU Manager (ホストドライバー) をインストールして構成するには、次のガイドを参照してください。
NVIDIA GRID ゲスト VM ドライバーをインストールして構成するには、次の一般的な手順を実行します。
  1. ゲスト VM がシャットダウンされていることを確認します。
  2. ハイパーバイザーのコントロールパネルで、VM に GPU を割り当てます。
  3. VM を起動します。
  4. ゲストVMドライバーをVMにインストールします。

ステップ7:インストールを完了するためのランタイム環境をセットアップする

Linux VDAパッケージをインストールした後、ctxinstall.shスクリプトを使用して実行環境を構成します。このスクリプトは、対話モードまたはサイレントモードで実行できます。
注:
ランタイム環境をセットアップする前に、OSにen_US.UTF-8ロケールがインストールされていることを確認してください。OSでロケールが利用できない場合は、sudo locale-gen en_US.UTF-8コマンドを実行します。Debianの場合、/etc/locale.genファイルを編集して# en_US.UTF-8 UTF-8行のコメントを解除し、sudo locale-genコマンドを実行します。
対話モード:
対話モードで簡易インストールを使用する方法は2つあります。
  • sudo /opt/Citrix/VDA/sbin/ctxinstall.shコマンドを実行し、コマンドラインインターフェイスの各プロンプトで関連するパラメーターを入力します。
  • VDAのデスクトップ環境で/opt/Citrix/VDA/bin/easyinstallコマンドを実行し、簡易インストールGUIの指示に従います。
簡易インストールGUI
簡易インストールGUIは、以下の操作をガイドします。
  • システム環境の確認
  • 依存関係のインストール
  • VDAを指定されたドメインに参加させる
  • ランタイム環境の構成
サイレントモード:
サイレントモードで簡易インストールを使用するには、ctxinstall.shを実行する前に以下の環境変数を設定します。
  • CTX\_EASYINSTALL\_HOSTNAME=host-name – Linux VDAサーバーのホスト名を示します。
  • CTX\_EASYINSTALL\_DNS=ip-address-of-dns – DNSのIPアドレス。
  • CTX\_EASYINSTALL\_NTPS=address-of-ntps – NTPサーバーのIPアドレスまたは文字列名。
  • CTX\_EASYINSTALL\_DOMAIN=domain-name – ドメインのNetBIOS名。
  • CTX\_EASYINSTALL\_REALM=realm-name – Kerberosレルム名。
  • CTX\_EASYINSTALL\_FQDN=ad-fqdn-name
  • CTX\_EASYINSTALL\_ADINTEGRATIONWAY=winbind \| sssd \| centrify \| pbis – Active Directory統合方法を示します。
  • CTX\_EASYINSTALL\_USERNAME=domain-user-name – ドメインユーザーの名前を示します。ドメインへの参加に使用されます。
  • CTX\_EASYINSTALL\_PASSWORD=password – ドメインユーザーのパスワードを指定します。ドメインへの参加に使用されます。
ctxsetup.shスクリプトは、次の変数を使用します。
  • CTX\_XDL\_SUPPORT\_DDC\_AS\_CNAME=Y \| N – Linux VDAは、DNS CNAMEレコードを使用してDelivery Controller名を指定することをサポートしています。
  • CTX\_XDL\_DDC\_LIST='list-ddc-fqdns' – Linux VDAは、Delivery Controllerに登録するために、スペースで区切られたDelivery Controllerの完全修飾ドメイン名(FQDN)のリストを必要とします。少なくとも1つのFQDNまたはCNAMEを指定する必要があります。
  • CTX\_XDL\_VDA\_PORT=port-number – Linux VDAは、TCP/IPポートを介してDelivery Controllerと通信します。
  • CTX\_XDL\_REGISTER\_SERVICE=Y \| N – Linux Virtual Desktopサービスは、マシンの起動後に開始されます。
  • CTX\_XDL\_ADD\_FIREWALL\_RULES=Y \| N – Linux Virtual Desktopサービスは、システムファイアウォールを介して受信ネットワーク接続が許可される必要があります。Linux Virtual Desktopの場合、必要なポート(デフォルトではポート80と1494)をシステムファイアウォールで自動的に開くことができます。
  • CTX\_XDL\_HDX\_3D\_PRO=Y \| N – Linux VDA は、リッチグラフィックアプリケーションの仮想化を最適化するために設計された GPU アクセラレーションテクノロジーのセットである HDX 3D Pro をサポートしています。HDX 3D Pro を選択した場合、VDA は VDI デスクトップ(シングルセッション)モード(つまり、CTX\_XDL\_VDI\_MODE=Y)用に構成されます。
  • CTX\_XDL\_VDI\_MODE=Y \| N – マシンを専用デスクトップ配信モデル(VDI)として構成するか、ホスト型共有デスクトップ配信モデルとして構成するか。HDX 3D Pro 環境の場合は、値を Y に設定します。
  • CTX\_XDL\_SITE\_NAME=dns-name – Linux VDA は DNS を介して LDAP サーバーを検出します。DNS 検索結果をローカルサイトに限定するには、DNS サイト名を指定します。不要な場合は、\&lt;none\> に設定します。
  • CTX\_XDL\_LDAP\_LIST='list-ldap-servers' – Linux VDA は DNS を照会して LDAP サーバーを検出します。DNS が LDAP サービスレコードを提供できない場合は、LDAP ポートを持つ LDAP FQDN のスペース区切りリストを指定できます。例:ad1.mycompany.com:389。不要な場合は、\&lt;none\> に設定します。
  • CTX\_XDL\_SEARCH\_BASE=search-base-set – Linux VDA は、Active Directory ドメインのルートに設定された検索ベース(例:DC=mycompany,DC=com)を介して LDAP を照会します。検索パフォーマンスを向上させるために、検索ベース(例:OU=VDI,DC=mycompany,DC=com)を指定できます。不要な場合は、\&lt;none\> に設定します。
  • CTX\_XDL\_FAS\_LIST='list-fas-servers' – フェデレーション認証サービス(FAS)サーバーは、AD グループポリシーを介して構成されます。Linux VDA は AD グループポリシーをサポートしていませんが、代わりに FAS サーバーのセミコロン区切りリストを指定できます。シーケンスは AD グループポリシーで構成されているものと同じである必要があります。サーバーアドレスが削除された場合は、その空白をテキスト文字列 \&lt;none\> で埋め、サーバーアドレスの順序を変更しないでください。
  • CTX\_XDL\_DOTNET\_RUNTIME_PATH=path-to-install-dotnet-runtime – 新しいブローカーエージェントサービス (ctxvda) をサポートするために .NET Runtime 6.0 をインストールするパス。デフォルトのパスは /usr/bin です。
  • CTX_XDL_DESKTOP_ENVIRONMENT=gnome/mate – セッションで使用する GNOME または MATE デスクトップ環境を指定します。変数を指定しない場合、VDA に現在インストールされているデスクトップが使用されます。ただし、現在インストールされているデスクトップが MATE の場合は、変数の値を mate に設定する必要があります。
    ターゲットセッションユーザーのデスクトップ環境は、次の手順で変更することもできます。
    1. VDA の $HOME/<username\> ディレクトリの下に .xsession または .Xclients ファイルを作成します。Amazon Linux 2 を使用している場合は、.Xclients ファイルを作成します。その他のディストリビューションを使用している場合は、.xsession ファイルを作成します。
    2. .xsession または .Xclients ファイルを編集して、ディストリビューションに基づいてデスクトップ環境を指定します。
      • Amazon Linux 2、Debian、RHEL 8、SUSE 15、および Ubuntu の MATE デスクトップの場合
         MSESSION="$(type -p mate-session)"

         if [ -n "$MSESSION" ]; then
           exec mate-session

         fi
      • CentOS、RHEL、SUSE 15、および SUSE 12.5 の GNOME デスクトップの場合
         GSESSION="$(type -p gnome-session)"

         if [ -n "$GSESSION" ]; then
         export GNOME_SHELL_SESSION_MODE=classic

         exec gnome-session --session=gnome-classic
         fi  
      • Amazon Linux 2、Ubuntu、および Debian の GNOME デスクトップの場合
         GSESSION="$(type -p gnome-session)"

         if [ -n "$GSESSION" ]; then
         exec gnome-session

         fi
    3. ターゲットセッションユーザーと 700 ファイル権限を共有します。
  • CTX\_XDL\_START\_SERVICE=Y \| N – 設定が完了したときにLinux VDAサービスを開始するかどうか。
  • CTX\_XDL\_TELEMETRY\_SOCKET\_PORT – Citrix Scoutをリッスンするためのソケットポート。デフォルトポートは7503です。
  • CTX\_XDL\_TELEMETRY\_PORT – Citrix Scoutと通信するためのポート。デフォルトポートは7502です。
いずれかのパラメーターが設定されていない場合、インストールは対話モードに戻り、ユーザー入力が求められます。すべてのパラメーターが環境変数を通じてすでに設定されている場合でも、ctxinstall.shスクリプトは.NET Runtime 6.0をインストールするパスのユーザー入力を求めます。
サイレントモードでは、環境変数を設定してからctxinstall.shスクリプトを実行するために、次のコマンドを実行する必要があります。
export CTX_EASYINSTALL_HOSTNAME=host-name

export CTX_EASYINSTALL_DNS=ip-address-of-dns

export CTX_EASYINSTALL_NTPS=address-of-ntps

export CTX_EASYINSTALL_DOMAIN=domain-name

export CTX_EASYINSTALL_REALM=realm-name

export CTX_EASYINSTALL_FQDN=ad-fqdn-name

export CTX_EASYINSTALL_ADINTEGRATIONWAY=winbind | sssd | centrify | pbis

export CTX_EASYINSTALL_USERNAME=domain-user-name

export CTX_EASYINSTALL_PASSWORD=password

export CTX_XDL_SUPPORT_DDC_AS_CNAME=Y | N

export CTX_XDL_DDC_LIST='list-ddc-fqdns'

export CTX_XDL_VDA_PORT=port-number

export CTX_XDL_REGISTER_SERVICE=Y | N

export CTX_XDL_ADD_FIREWALL_RULES=Y | N

export CTX_XDL_HDX_3D_PRO=Y | N

export CTX_XDL_VDI_MODE=Y | N

export CTX_XDL_SITE_NAME=dns-site-name | '<none>'

export CTX_XDL_LDAP_LIST='list-ldap-servers' | '<none>'

export CTX_XDL_SEARCH_BASE=search-base-set | '<none>'

export CTX_XDL_FAS_LIST='list-fas-servers' | '<none>'

export CTX_XDL_DOTNET_RUNTIME_PATH=path-to-install-dotnet-runtime

export CTX_XDL_DESKTOP_ENVIRONMENT= gnome | mate | '<none>'

export CTX_XDL_TELEMETRY_SOCKET_PORT=port-number

export CTX_XDL_TELEMETRY_PORT=port-number

export CTX_XDL_START_SERVICE=Y | N

sudo -E /opt/Citrix/VDA/sbin/ctxinstall.sh
sudoコマンドを実行するときは、-Eオプションを入力して、既存の環境変数を新しく作成されるシェルに渡します。前のコマンドから、最初の行に**#\!/bin/bash**を含むシェルスクリプトファイルを作成することをお勧めします。
または、単一のコマンドを使用してすべてのパラメーターを指定することもできます。
sudo CTX_XDL_SUPPORT_DDC_AS_CNAME=Y|N \

CTX_XDL_DDC_LIST='list-ddc-fqdns' \

CTX_XDL_VDA_PORT=port-number \

CTX_XDL_REGISTER_SERVICE=Y|N \

CTX_XDL_ADD_FIREWALL_RULES=Y|N \

CTX_XDL_AD_INTEGRATION=1|2|3|4 \

CTX_XDL_HDX_3D_PRO=Y|N \

CTX_XDL_VDI_MODE=Y|N \

CTX_XDL_SITE_NAME=dns-name \

CTX_XDL_LDAP_LIST='list-ldap-servers' \

CTX_XDL_SEARCH_BASE=search-base-set \

CTX_XDL_FAS_LIST='list-fas-servers' \

CTX_XDL_DOTNET_RUNTIME_PATH=path-to-install-dotnet-runtime \

CTX_XDL_DESKTOP_ENVIRONMENT=gnome | mate \

CTX_XDL_TELEMETRY_SOCKET_PORT=port-number \

CTX_XDL_TELEMETRY_PORT=port-number \

CTX_XDL_START_SERVICE=Y|N \

/opt/Citrix/VDA/sbin/ctxsetup.sh

手順8:XDPingを実行する

Linux VDA環境における一般的な構成の問題を確認するには、sudo /opt/Citrix/VDA/bin/xdpingを実行します。詳細については、「XDPing」を参照してください。

手順9:Linux VDAを実行する

Linux VDAを開始する:
Linux VDAサービスを開始するには:
sudo /sbin/service ctxhdx start

sudo /sbin/service ctxvda start
Linux VDAを停止する:
Linux VDAサービスを停止するには:
sudo /sbin/service ctxvda stop

sudo /sbin/service ctxhdx stop
注:
ctxvdaおよびctxhdxサービスを停止する前に、systemctl ctxmonitorservice stopコマンドを実行してモニターサービスデーモンを停止してください。そうしないと、モニターサービスデーモンが停止したサービスを再起動します。
Linux VDA を再起動する:
Linux VDA サービスを再起動するには:
sudo /sbin/service ctxvda stop

sudo /sbin/service ctxhdx restart

sudo /sbin/service ctxvda start
Linux VDA のステータスを確認する:
Linux VDA サービスの実行ステータスを確認するには:
sudo /sbin/service ctxvda status

sudo /sbin/service ctxhdx status

手順 10: マシンカタログを作成する

マシンカタログを作成し、Linux VDA マシンを追加するプロセスは、従来の Windows VDA のアプローチと似ています。これらのタスクを完了する方法の詳細については、「マシンカタログの作成」および「マシンカタログの管理」を参照してください。
Linux VDA マシンを含むマシンカタログを作成する場合、Windows VDA マシン用のマシンカタログを作成するプロセスとは異なるいくつかの制限があります。
  • オペレーティングシステムには、以下を選択します。
    • ホストされた共有デスクトップ配信モデルの場合は、マルチセッション OS オプション。
    • VDI 専用デスクトップ配信モデルの場合は、シングルセッション OS オプション。
  • 同じマシンカタログに Linux VDA マシンと Windows VDA マシンを混在させないでください。
注:
Citrix Studio の初期バージョンでは、「Linux OS」という概念はサポートされていませんでした。ただし、Windows Server OS または Server OS オプションを選択すると、同等のホストされた共有デスクトップ配信モデルが意味されます。Windows Desktop OS または Desktop OS オプションを選択すると、マシンごとに単一ユーザーの配信モデルが意味されます。
ヒント:
マシンを Active Directory ドメインから削除して再参加させる場合は、そのマシンをマシンカタログから削除して再度追加する必要があります。

手順 11: デリバリーグループを作成する

デリバリーグループを作成し、Linux VDA マシンを含むマシンカタログを追加するプロセスは、Windows VDA マシンとほぼ同じです。これらのタスクを完了する方法の詳細については、「デリバリーグループの作成」を参照してください。
Linux VDAマシンカタログを含むデリバリーグループを作成する場合、以下の制限が適用されます。
  • 選択したADユーザーとグループが、Linux VDAマシンにログオンできるように適切に構成されていることを確認してください。
  • 認証されていない(匿名)ユーザーのログオンを許可しないでください。
  • デリバリーグループとWindowsマシンを含むマシンカタログを混在させないでください。
重要:
アプリケーションの公開は、Linux VDAバージョン1.4以降でサポートされています。ただし、Linux VDAは、デスクトップとアプリを同じマシンに配信することをサポートしていません。
マシンカタログとデリバリーグループの作成方法については、「Citrix Virtual Apps and Desktops 7 2203」を参照してください。

トラブルシューティング

このセクションの情報を使用して、簡易インストール機能の使用によって発生する可能性のある問題をトラブルシューティングしてください。

SSSDを使用したドメイン参加の失敗

ドメインに参加しようとすると、以下のような出力(画面表示についてはログを確認)を伴うエラーが発生する場合があります。
Step 6: join Domain!Enter ctxadmin's password:Failed to join domain: failed to lookup DC info for domain 'CITRIXLAB.LOCAL' over rpc: The network name cannot be found
/var/log/xdl/vda.log:
2016-11-04 02:11:52.317 [INFO ] - The Citrix Desktop Service successfully obtained the following list of 1 delivery controller(s) with which to register: 'CTXDDC.citrixlab.local (10.158.139.214)'.
2016-11-04 02:11:52.362 [ERROR] - RegistrationManager.AttemptRegistrationWithSingleDdc: Failed to register with http://CTXDDC.citrixlab.local:80/Citrix/CdsController/IRegistrar. Error: General security error (An error occurred in trying to obtain a TGT: Client not found in Kerberos database (6))
2016-11-04 02:11:52.362 [ERROR] - The Citrix Desktop Service cannot connect to the delivery controller 'http://CTXDDC.citrixlab.local:80/Citrix/CdsController/IRegistrar' (IP Address '10.158.139.214')
Check the following:- The system clock is in sync between this machine and the delivery controller.
-  The Active Directory provider (e.g. winbind daemon) service is running and correctly configured.
-  Kerberos is correctly configured on this machine.
If the problem persists, please refer to Citrix Knowledge Base article CTX117248 for further information.
Error Details:
Exception 'General security error (An error occurred in trying to obtain a TGT: Client not found in Kerberos database (6))' of type 'class javax.xml.ws.soap.SOAPFaultException'.
2016-11-04 02:11:52.362 [INFO ] - RegistrationManager.AttemptRegistrationWithSingleDdc: The current time for this VDA is Fri Nov 04 02:11:52 EDT 2016.
Ensure that the system clock is in sync between this machine and the delivery controller.
Verify the NTP daemon is running on this machine and is correctly configured.
2016-11-04 02:11:52.364 [ERROR] - Could not register with any controllers. Waiting to try again in 120000 ms. Multi-forest - false
2016-11-04 02:11:52.365 [INFO ] - The Citrix Desktop Service failed to register with any controllers in the last 470 minutes.
/var/log/messages:
Nov 4 02:15:27 RH-WS-68 [sssd[ldap_child[14867]]]: Failed to initialize credentials using keytab [MEMORY:/etc/krb5.keytab]: Client 'RH-WS-68$@CITRIXLAB.LOCAL' not found in Kerberos database. Unable to create GSSAPI-encrypted LDAP connection.Nov 4 02:15:27 RH-WS-68 [sssd[ldap_child[14867]]]: Client 'RH-WS-68$@CITRIXLAB.LOCAL' not found in Kerberos database
この問題を解決するには:
  1. rm -f /etc/krb5.keytabコマンドを実行します。
  2. net ads leave $REALM -U $domain-administratorコマンドを実行します。
  3. Delivery Controller上のマシンカタログとデリバリーグループを削除します。
  4. /opt/Citrix/VDA/sbin/ctxinstall.sh を実行します。
  5. Delivery Controller でマシンカタログとデリバリーグループを作成します。

Ubuntu デスクトップセッションでグレースクリーンが表示される

この問題は、セッションを起動した後に空白のデスクトップでブロックされた場合に発生します。さらに、ローカルユーザーアカウントを使用してログオンすると、マシンのコンソールにもグレースクリーンが表示されます。
この問題を解決するには:
  1. sudo apt-get update コマンドを実行します。
  2. sudo apt-get install unity lightdm コマンドを実行します。
  3. /etc/lightdm/lightdm.conf に次の行を追加します:
    greeter-show-manual-login=true

ホームディレクトリがないため、Ubuntu デスクトップセッションの起動に失敗する

/var/log/xdl/hdx.log:
2016-11-02 13:21:19.015 <P22492:S1> citrix-ctxlogin: StartUserSession: failed to change to directory(/home/CITRIXLAB/ctxadmin) errno(2)

2016-11-02 13:21:19.017 <P22227> citrix-ctxhdx: logSessionEvent: Session started for user ctxadmin.

2016-11-02 13:21:19.023 <P22492:S1> citrix-ctxlogin: ChildPipeCallback: Login Process died: normal.

2016-11-02 13:21:59.217 <P22449:S1> citrix-ctxgfx: main: Exiting normally.
ヒント:
この問題の根本原因は、ドメイン管理者のホームディレクトリが作成されていないことです。
この問題を解決するには:
  1. コマンドラインから「pam-auth-update」と入力します。
  2. 表示されたダイアログで、Create home directory login が選択されていることを確認します。
    Ubuntu デスクトップセッションの起動に失敗しました

セッションが起動しない、またはdbusエラーですぐに終了する

/var/log/messages (RHELまたはCentOSの場合):
Oct 27 04:17:16 CentOS7 citrix-ctxhdx[8978]: Session started for user CITRIXLAB\ctxadmin.

Oct 27 04:17:18 CentOS7 kernel: traps: gnome-session[19146] trap int3 ip:7f89b3bde8d3 sp:7fff8c3409d0 error:0

Oct 27 04:17:18 CentOS7 gnome-session[19146]: ERROR: Failed to connect to system bus: Exhausted all available authentication mechanisms (tried: EXTERNAL, DBUS_COOKIE_SHA1, ANONYMOUS) (available: EXTERNAL, DBUS_COOKIE_SHA1, ANONYMOUS)#012aborting...

Oct 27 04:17:18 CentOS7 gnome-session: gnome-session[19146]: ERROR: Failed to connect to system bus: Exhausted all available authentication mechanisms (tried: EXTERNAL, DBUS_COOKIE_SHA1, ANONYMOUS) (available: EXTERNAL, DBUS_COOKIE_SHA1, ANONYMOUS)

Oct 27 04:17:18 CentOS7 gnome-session: aborting...

Oct 27 04:17:18 CentOS7 citrix-ctxgfx[18981]: Exiting normally.

Oct 27 04:17:18 CentOS7 citrix-ctxhdx[8978]: Session stopped for user CITRIXLAB\ctxadmin.
または、Ubuntuディストリビューションの場合は、ログ/var/log/syslogを使用します:
Nov  3 11:03:52 user01-HVM-domU pulseaudio[25326]: [pulseaudio] pid.c: Stale PID file, overwriting.

Nov  3 11:03:52 user01-HVM-domU pulseaudio[25326]: [pulseaudio] bluez5-util.c: Failed to get D-Bus connection: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.

Nov  3 11:03:52 user01-HVM-domU pulseaudio[25326]: [pulseaudio] hashmap.c: Assertion 'h' failed at pulsecore/hashmap.c:116, function pa_hashmap_free(). Aborting.

Nov  3 11:03:52 user01-HVM-domU pulseaudio[25352]: [pulseaudio] core-util.c: Failed to connect to system bus: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.

Nov  3 11:03:52 user01-HVM-domU pulseaudio[25352]: message repeated 10 times: [ [pulseaudio] core-util.c: Failed to connect to system bus: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.]

Nov  3 11:03:52 user01-HVM-domU pulseaudio[25352]: [pulseaudio] pid.c: Daemon already running.Nov  3 11:03:58 user01-HVM-domU citrix-ctxgfx[24693]: Exiting normally
一部のグループまたはモジュールは、再起動するまで有効になりません。ログにdbusエラーメッセージが表示される場合は、システムを再起動して再試行することをお勧めします。

SELinuxがSSHDのホームディレクトリへのアクセスを妨げる

ユーザーはセッションを起動できますが、ログオンできません。
/var/log/ctxinstall.log:
Jan 25 23:30:31 yz-rhel72-1 setroubleshoot[3945]: SELinux is preventing /usr/sbin/sshd from setattr access on the directory /root. For complete SELinux messages. run sealert -l 32f52c1f-8ff9-4566-a698-963a79f16b81

Jan 25 23:30:31 yz-rhel72-1 python[3945]: SELinux is preventing /usr/sbin/sshd from setattr access on the directory /root.

*****  Plugin catchall_boolean (89.3 confidence) suggests   ******************

If you want to allow polyinstantiation to enabled

   Then you must tell SELinux about this by enabling the 'polyinstantiation_enabled' boolean.

You can read 'None' man page for more details.

    Do

       setsebool -P polyinstantiation_enabled 1

*****  Plugin catchall (11.6 confidence) suggests   **************************

If you believe that sshd should be allowed setattr access on the root directory by default.

Then you should report this as a bug.

You can generate a local policy module to allow this access.

      Do

       allow this access for now by executing:

       # grep sshd /var/log/audit/audit.log | audit2allow -M mypol

# semodule -i mypol.pp
この問題を解決するには:
  1. /etc/selinux/configに次の変更を加えてSELinuxを無効にします。
    SELINUX=無効
  2. VDA を再起動します。