簡単インストールを使用して、ドメインに参加していないLinux VDAを作成する

最終公開日 : Nov 13, 2026
この記事では、Citrix DaaSまたはCitrix Virtual Apps and Desktops™ 2407以降で、簡単インストール方法を使用して、ドメインに参加していないLinux VDAを作成し、マシンカタログに登録する手順を説明します。
重要:

ステップ1:空のマシンカタログを作成する

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

手順2:登録トークンを作成する

簡易インストールを使用して非ドメイン参加VDAを作成するには、VDAをマシンカタログに登録し、VDAをクラウドまたはオンプレミスのデリバリーコントローラーに認証するためのトークンファイルが必要です。Linux VDAは、電源管理されたマシンカタログへの登録にトークンファイルを使用することをサポートしていません。
登録トークンを作成するには、Citrix Web Studioで次の手順を実行します。
ヒント:
Citrix DaaSでは、Web Studioは「完全な構成」として知られています。
  1. 以前に作成した空のマシンカタログを選択し、アクションバーで登録トークンの管理を選択します。
  2. 登録トークンの管理ページで、生成をクリックして登録トークンを作成します。または、有効な状態の既存のトークンを選択することもできます。
  3. ウィザードに従って設定を完了します。
  4. 正常に作成されたトークンをダウンロードし、最小限の特権で安全な場所に保存します。後で簡易インストールスクリプトを実行する際に、CTX_XDL_NDJ_ENROLLMENT_TOKEN_FILE 変数を使用して、VDAを登録するためのトークンファイルへのパスを指定できます。

ステップ3:.NETのインストール

Linux VDAパッケージをインストールする前に、システム要件に従って .NETをインストールします。
.NETのインストール後、which dotnet コマンドを実行してランタイムパスを見つけます。
コマンドの出力に基づいて、.NETランタイムバイナリパスを設定します。たとえば、コマンドの出力が /aa/bb/dotnet の場合、/aa/bb を .NETバイナリパスとして使用します。

ステップ4:自己署名CA証明書の追加

自己署名CA証明書の設定の詳細については、「WebSocket 用の自己署名証明書を構成する」を参照してください。このセクションでは、Linux VDAにCA証明書を配置および更新する方法について説明します。
  • RHELおよびRocky Linuxの場合:
    自己署名CA証明書をLinux VDA上の /etc/pki/ca-trust/source/anchors ディレクトリに保存し、次のコマンドを実行して証明書を更新します。
    sudo update-ca-trust
  • SUSE、Ubuntu、およびDebianの場合:
    ルートCA証明書を /usr/local/share/ca-certificates ディレクトリに配置します。その後、update-ca-certificate コマンドを実行します。
    sudo update-ca-certificates

ステップ5:Linux VDAパッケージのダウンロード

  1. Citrix Virtual Apps and Desktopsダウンロードページに移動します。
  2. Citrix Virtual Apps™ and Desktopsの適切なバージョンを展開します。
  3. Components を展開してLinux VDAを見つけます。例:
    Citrix Virtual Apps and Desktopsのコンポーネント
  4. Linux VDAのダウンロードにアクセスするには、Linux VDAリンクをクリックします。
    Linux VDAのダウンロード
  5. お使いのLinuxディストリビューションに合ったLinux VDAパッケージをダウンロードします。
  6. Linux VDAパッケージの整合性を検証するために使用できるGPG公開鍵をダウンロードします。例:
    GPG公開鍵
    公開鍵を使用してLinux VDAパッケージの整合性を検証するには:
    • RPMパッケージの場合、公開鍵をRPMデータベースにインポートし、パッケージの整合性を確認するには、次のコマンドを実行します。
      rpmkeys --import <path to the public key>
      rpm --checksig --verbose <path to the Linux VDA package>
    • DEBパッケージの場合、公開鍵をDEBデータベースにインポートし、パッケージの整合性を確認するには、次のコマンドを実行します。
      sudo apt-get install dpkg-sig
      gpg --import <path to the public key>
      dpkg-sig --verify <path to the Linux VDA package>

手順6:Linux VDAパッケージをインストールする

Linux VDAの環境をセットアップするには、次のコマンドを実行します。
RHELおよびRocky Linuxディストリビューションの場合:
注:
  • RHELおよびCentOSの場合、Linux VDAを正常にインストールする前にEPELリポジトリをインストールしてください。EPELのインストール方法については、<https://docs.fedoraproject.org/ja-jp/epel/>の指示を参照してください。
  • RHEL 9.xおよびRocky Linux 9.xにLinux VDAをインストールする前に、libsepolパッケージをバージョン3.4以降に更新してください。
sudo yum  -y localinstall   <PATH>/<Linux VDA RPM>
注:
GCPでホストされているサポート対象のRHELまたはRocky LinuxディストリビューションにLinux VDAをインストールした後、VMの再起動後にイーサネット接続が失われ、Linux VDAに到達できなくなる可能性があります。この問題を回避するには、VMに初めてログオンするときにrootパスワードを設定し、rootとしてVMにログオンできることを確認してください。その後、VMを再起動してからコンソールで次のコマンドを実行します。
nmcli dev connect eth0
systemctl restart NetworkManager
Ubuntu/Debianディストリビューションの場合:
sudo dpkg -i <PATH>/<Linux VDA deb>
sudo apt-get install -f
注:
  • Debian 11ディストリビューションに必要な依存関係をインストールするには、/etc/apt/sources.listファイルにdeb http://deb.debian.org/debian/ bullseye main行を追加します。
  • GCP上のUbuntuの場合、RDNSを無効にします。そのためには、/etc/krb5.confの**の下にrdns = false**行を追加します。
SUSEディストリビューションの場合:
  1. AWS、Azure、GCP上のSUSE 15.7の場合、以下を確認してください。
    • libstdc++6バージョン12以降を使用していること。
    • /etc/sysconfig/windowmanager 内の Default_WM パラメーターが "gnome" に設定されています。
  2. Linux VDAをインストールするには、次のコマンドを実行します。
    zypper -i install <PATH>/<Linux VDA RPM>

ステップ7: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ドライバー(クラウドベンダーまたはNVIDIA製)をインストールします。

ステップ8:使用するデータベースを指定する

Linux VDAパッケージのインストール後、SQLite、PostgreSQL、および組み込みレジストリサービスを切り替えることができます。
  • そのためには、以下の手順を完了してください。
    • VDIモードではSQLiteのみを使用し、ホスト型共有デスクトップ配信モデルではPostgreSQLまたは組み込みレジストリサービスを使用することをお勧めします。
    • Easy InstallおよびMCSの場合、SQLite、PostgreSQL、または組み込みレジストリサービスを手動でインストールすることなく使用できます。/etc/xdl/db.confで特に指定しない限り、Linux VDAはデフォルトで組み込みレジストリサービスを使用します。Linuxディストリビューションが提供するバージョンではなく、カスタムバージョンのPostgreSQLが必要な場合は、指定されたバージョンを手動でインストールし、新しいバージョンを反映するように/etc/xdl/db.confを編集し、Easy Installスクリプト (ctxinstall.sh) またはMCSスクリプト (deploymcs.sh) を実行する前にPostgreSQLサービスを開始する必要があります。
    • PostgreSQLのポート番号を設定するには、/etc/xdl/db.confを使用することもできます。
    • RHEL9、RHEL10、およびRocky9で組み込みレジストリサービスを使用するには、CodeReady Builderリポジトリを有効にする必要があります。
    RHEL9: subscription-manager repos --enable codeready-builder-for-rhel-9-$(arch)-rpms RHEL10: subscription-manager repos --enable codeready-builder-for-rhel-10-$(arch)-rpms Rocky9: dnf config-manager --enable crb
  1. /opt/Citrix/VDA/sbin/ctxcleanup.shを実行します。新規インストールの場合、この手順は省略してください。
  2. deploymcs.shを実行する前に/etc/xdl/db.confを編集します。以下はdb.confファイルの例です。
# database configuration file for Linux VDA



## database choice

# possible choices are:

#     SQLite

#     PostgreSQL

#     ctxregd - use the built-in registry service # default choice is ctxregd

DbType="ctxregd"



## database port

# specify database port for the database.

# if not specified, default port will be used:

# SQLite: N/A

# PostgreSQL: 5432

DbPort=5432



## PostgreSQL customized

# only the following value means true, otherwise false:

#     true

#     yes

#     y

#     YES

#     Y

# default is false

DbCustomizePostgreSQL=false



## PostgreSQL service name

# specify the service name of PostgreSQL for Linux VDA

# default is "postgresql"

DbPostgreSQLServiceName="postgresql"
Linux VDAパッケージをインストールした後、/etc/xdl/db.conf を編集することで、SQLite、PostgreSQL、または組み込みのレジストリサービスを使用するように指定できます。
そのためには、sudo /opt/Citrix/VDA/sbin/ctxinstall.shまたは**/opt/Citrix/VDA/bin/easyinstallを実行する前に、/etc/xdl/db.conf**を編集します。
注:
  • VDIモードではSQLiteのみを使用することをお勧めします。
  • イージーインストールと MCS の場合、SQLite、PostgreSQL、または組み込みレジストリサービスを手動でインストールすることなく使用するように指定できます。/etc/xdl/db.conf で特に指定しない限り、Linux VDA はデフォルトで組み込みレジストリサービスを使用します。
  • /etc/xdl/db.conf を使用して PostgreSQL のポート番号を構成することもできます。
  • RHEL9、RHEL10、Rocky9 で組み込みレジストリサービスを使用するには、CodeReady Builder リポジトリを有効にする必要があります。 RHEL9: subscription-manager repos --enable codeready-builder-for-rhel-9-$(arch)-rpms RHEL10: subscription-manager repos --enable codeready-builder-for-rhel-10-$(arch)-rpms Rocky9: dnf config-manager --enable crb

ステップ 9: イージーインストールを実行して環境と VDA を構成し、インストールを完了する

Linux VDA パッケージのインストール後、ctxinstall.sh スクリプトまたは GUI を使用して実行環境を構成します。
sudo コマンドを実行するときは、-E オプションを入力して、既存の環境変数を新しく作成されるシェルに渡します。前述のコマンドから、最初の行に #!/bin/bash を含むシェルスクリプトファイルを作成することをお勧めします。
または、1 つのコマンドを使用してすべての変数を指定することもできます。
VDA 実行環境変数 (‘CTX_XDL_’ で始まる変数) を設定するには、ctxinstall.sh -s を実行します (ここで s は小文字であることに注意してください)。
注:
ランタイム環境を設定する前に、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 コマンドを実行します。

GUI

GUI を使用してイージーインストールを実行できます。VDA のデスクトップ環境で /opt/Citrix/VDA/sbin/linux-vda-installer コマンドを実行し、イージーインストール GUI の指示に従います。
イージーインストール
イージーインストール GUI は、次の操作をガイドします。
  • システム環境の確認
  • データベースの構成
  • 依存関係のインストール
  • ランタイム環境の構成
注:
ユーザーは「Advanced Configuration (optional)」ボタンをクリックして、詳細な構成オプションを展開することもできます。

ctxinstall.sh

ctxinstall.sh は、いくつかの事前構成と VDA 実行環境変数の設定を行うための簡易インストールスクリプトです。
  • このスクリプトは root のみが実行できます。
  • 簡易インストールでは、使用されるすべての環境変数の値を設定、保存、同期するための構成ファイルとして /opt/Citrix/VDA/sbin/ctxinstall.conf を使用します。テンプレート (ctxinstall.conf.tmpl) を注意深く読み、独自の ctxinstall.conf をカスタマイズすることをお勧めします。構成ファイルを初めて作成する場合は、次のいずれかの方法を使用してください。
    • /opt/Citrix/VDA/sbin/ctxinstall.conf.tmpl テンプレートファイルをコピーし、/opt/Citrix/VDA/sbin/ctxinstall.conf として保存します。
    • ctxinstall.sh を実行します。ctxinstall.sh を実行するたびに、入力は /opt/Citrix/VDA/sbin/ctxinstall.conf に保存されます。
  • 簡易インストールはモジュール実行をサポートしています。モジュールには、事前チェック、インストール、ドメイン構成、セットアップ、検証が含まれます。
  • このスクリプトのデバッグの詳細は、/var/log/xdl/ctxinstall.log で確認できます。
詳細については、ヘルプコマンド ctxinstall.sh -h を使用してください。
注:
  • 最小特権の原則に従い、ドメイン参加パスワードがファイルに設定されている可能性があるため、root ユーザーのみが /opt/Citrix/VDA/sbin/ctxinstall.conf を読み取れるようにしてください。
  • Linux VDA をアンインストールすると、/opt/Citrix/VDA の下のファイルが削除されます。VDA をアンインストールする前に、/opt/Citrix/VDA/sbin/ctxinstall.conf をバックアップすることをお勧めします。
ctxinstall.sh は対話モードまたはサイレントモードで実行できます。スクリプトを実行する前に、次の環境変数を設定してください。
  • CTX_XDL_NON_DOMAIN_JOINED='y\|n' – マシンを ドメインに参加させるかどうか。デフォルト値は「n」です。ドメインに参加しないシナリオでは、「y」に設定します。
  • CTX_XDL_NDJ_ENROLLMENT_TOKEN_FILE='<path-to-token-file-on-vda-machine\>' – 簡易インストールを使用してドメインに参加していない VDA を作成するには、Delivery Controller のマシンカタログに VDA を登録するためのトークンファイルが必要です。トークンは最小特権で安全な場所に保存してください。
  • CTX\_XDL\_VDI\_MODE='y\|n' – マシンを専用デスクトップ配信モデル (VDI) またはホスト型共有デスクトップ配信モデルとして構成するかどうか。HDX 3D Pro環境の場合、値を「y」に設定します。
  • 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\_START\_SERVICE='y\|n' – 構成完了時にLinux VDAサービスを開始するかどうかを決定します。
  • CTX\_XDL\_REGISTER\_SERVICE='y\|n' – マシンの起動後にLinux Virtual Desktopサービスが開始されます。
  • CTX\_XDL\_ADD\_FIREWALL\_RULES='y\|n' – Linux VDAサービスは、システムファイアウォールを介した受信ネットワーク接続を許可する必要があります。Linux Virtual Desktopの場合、必要なポート(デフォルトではポート80と1494)をシステムファイアウォールで自動的に開くことができます。
  • CTX\_XDL\_DESKTOP\_ENVIRONMENT=gnome/gnome-classic/mate – セッションで使用するGNOME、GNOME Classic、またはMATEデスクトップ環境を指定します。変数を指定しない場合、VDAで構成されているデフォルトのデスクトップが使用されます。
  • CTX\_XDL\_DESKTOP\_ENVIRONMENT=gnome/gnome-classic/kde/mate/xfce/'<none\>' – セッションで使用するGNOME、GNOME Classic、KDE、MATE、またはXfceデスクトップ環境を指定します。'<none\>'に設定すると、VDAで構成されているデフォルトのデスクトップが使用されます。CTX_XDL_DESKTOP_ENVIRONMENT変数を使用して、セッションで使用するデスクトップ環境を指定できます。コマンドを実行するか、システムトレイを使用することで、デスクトップ環境を切り替えることもできます。詳しくは、「デスクトップ切り替えコマンド」および「システムトレイ」を参照してください。
  • CTX\_XDL\_DOTNET\_RUNTIME\_PATH='<path-to-install-dotnet-runtime\>' – 新しいブローカーエージェントサービス (ctxvda) をサポートするために.NETをインストールするパス。デフォルトのパスは「/usr/bin」です。
  • CTX\_XDL\_VDA\_PORT='<port-number\>' – Linux VDAは、TCP/IPポートを介してDelivery Controllerと通信します。

対話モード

対話モードでctxinstall.shスクリプトを実行するには、-Sオプションなしでsudo /opt/Citrix/VDA/sbin/ctxinstall.shコマンドを使用します。コマンドラインインターフェイスの各プロンプトで、関連する変数の値を入力します。変数がすでに設定されている場合、ctxinstall.shは変更するかどうかを確認します。

サイレントモード

サイレントモードでは、/opt/Citrix/VDA/sbin/ctxinstall.confまたはexportコマンドを使用して、上記の変数を設定する必要があります。その後、ctxinstall.sh -Sを実行します(ここでSは大文字であることに注意してください)。必要な変数がすべて設定されていないか、一部の値が無効な場合、デフォルト値がない限り、ctxinstall.shは実行を中止します。
設定した場合、各変数のエクスポートされた値は、/Citrix/VDA/sbin/ctxinstall.conf内の値を上書きします。更新されたすべての値は、/Citrix/VDA/sbin/ctxinstall.confに保存されます。
export CTX_XDL_NON_DOMAIN_JOINED='y'
export CTX_XDL_NDJ_ENROLLMENT_TOKEN_FILE='<token-file-path>'
export CTX_XDL_VDI_MODE='y|n'
export CTX_XDL_START_SERVICE='y|n'
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_DESKTOP_ENVIRONMENT=gnome|gnome-classic|kde|mate|xfce|'<none>'
export CTX_XDL_DOTNET_RUNTIME_PATH='<path-to-install-dotnet-runtime>'
export CTX_XDL_VDA_PORT='<port-number>'
sudo -E /opt/Citrix/VDA/sbin/ctxinstall.sh -S
sudoコマンドを実行するときは、-Eオプションを入力して、既存の環境変数を新しく作成されるシェルに渡します。上記のコマンドから、最初の行に**#\!/bin/bash**を含むシェルスクリプトファイルを作成することをお勧めします。
あるいは、単一のコマンドを使用してすべての変数を指定できます。
VDA実行環境変数(「CTX_XDL_」で始まる変数)を設定するには、ctxinstall.sh -s を実行します(ここでの文字 s は小文字であることに注意してください)。

ステップ10: XDPing を実行する

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

ステップ11: Linux VDA を実行する

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

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

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

sudo systemctl restart ctxhdx.service

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

sudo systemctl status ctxhdx.service

ステップ12: デリバリーグループを作成する

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

ステップ13:ローカルアカウントマッピングを有効にする

ローカルアカウントマッピングが有効になっていない場合

ドメインに参加していないVDAでホストされているセッションは、ログオン時に失敗し、パスワードプロンプトが表示されますが、正しいパスワードを受け付けません。次のようなエラーがhdx.logで見つかることがあります。
2024-09-25 06:40:30.767979 [LOGIN_BOX:ERROR] <P124211:T58675:S4> citrix-ctxlogin: PamAuthenticate: pam authentication: Authentication failure. Can retry for user 'user3'
2024-09-25 06:40:30.768431 [LOGIN:ERROR] <P124211:T58675:S4> citrix-ctxlogin: LoginBoxValidate: Failed to validate user 'user3'. Due to INVALID_PASSWORD
2024-09-25 06:40:30.768947 [LOGIN_AUTH:INFO] <P124218:T58682:S4> citrix-ctxloginui: CalLabelFormat: Update username label on LoginUI from 'user3' to 'user3' (18)
2024-09-25 06:41:18.766196 [GFX_SLIDER:ERROR] <P124161:T58699:S4> citrix-ctxgfx: GfxCreateSliderListener: Failed to get user home dir.

ローカルアカウントマッピングを有効にする

ユーザーがドメインに参加していないLinux VDAにログオンできるようにするには、次のコマンドを使用してローカルアカウントマッピングを有効にします。
Set-BrokerDesktopGroup -Name "<your delivery group name>" -MachineLogOnType LocalMappedAccount
オンプレミス展開の場合、Delivery Controllerで直接コマンドを実行します。Citrix DaaS展開の場合、Citrix Virtual Apps and Desktops Remote PowerShell SDKを介してコマンドを実行します。