簡易インストールを使用したドメイン参加済みVDAの作成
- Schritt
重要:
新規インストールの場合、迅速なインストールについては、この記事を参照することをお勧めします。この記事では、簡易インストールを使用して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. <!--NeedCopy-->この問題はCentrifyとその構成に固有のものです。この問題を解決するには、次の手順を実行します。
a. ドメインコントローラーで管理ツールを開きます。 b. Active Directoryサイトとサービスを選択します。 c. サブネットに適切なサブネットアドレスを追加します。
-
-
VDAを特定のOUに参加させるには、次の手順を実行します。
-
- 特定のOUがドメインコントローラーに存在することを確認します。
-
OUの例については、次のスクリーンショットを参照してください。

-
-
- VDA上に/tmp/ctxinstall.confファイルを作成します。
-
- /tmp/ctxinstall.confファイルにou=<your ou>の行を追加します。
OUの値はADメソッドによって異なります。次の表は、上記のスクリーンショットのOU名の例を示しています。組織内で他のOU名を使用することもできます。
OS Winbind SSSD Centrify PBIS Amazon Linux 2 ou="Linux/amazon"ou="Linux/amazon"ou="XD.LOCAL/Linux/amazon"ou="Linux/amazon"Debian ou="Linux/debian"ou="Linux/debian"ou="XD.LOCAL/Linux/debian"ou="Linux/debian"RHEL 9.0, Rocky Linux 9.0 ou="OU=redhat,OU=Linux"ou="OU=redhat,OU=Linux"N/A N/A RHEL 8.x, Rocky Linux 8.x 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"Ubuntu ou="Linux/ubuntu"ou="Linux/ubuntu"ou="XD.LOCAL/Linux/ubuntu"ou="Linux/ubuntu" -
- VDA上に/tmp/ctxinstall.confファイルを作成します。
-
簡易インストールは、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は次のとおりです。
Amazon Linux 2/RHEL: wget https://downloads.centrify.com/products/server-suite/2022/component-update-1/delinea-server-suite-2022-rhel6-x86_64.tgz
-
Ubuntu/Debian: wget https://downloads.centrify.com/products/server-suite/2022/component-update-1/delinea-server-suite-2022-deb9-x86_64.tgz
-
ローカルディレクトリからCentrifyパッケージを取得します。Centrifyパッケージのディレクトリを指定するには、次の手順を実行します。
a. Linux VDAサーバー上に/tmp/ctxinstall.confファイルが存在しない場合は作成します。 b. ファイルに”centrifypkgpath=<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 <!--NeedCopy--> -
ドメインに参加する方法としてPBISを選択した場合、ctxinstall.shスクリプトにはPBISパッケージが必要です。ctxinstall.shがPBISパッケージを取得する方法は2つあります。
-
簡易インストールは、インターネットからPBISパッケージを自動的にダウンロードするのに役立ちます。たとえば、各ディストリビューションのURLは次のとおりです。
Amazon Linux 2、CentOS 7、RHEL 8、RHEL 7、SUSE 15.4:
wget https://github.com/BeyondTrust/pbis-open/releases/download/9.1.0/pbis-open-9.1.0.551.linux.x86_64.rpm.shDebian、Ubuntu:
wget https://github.com/BeyondTrust/pbis-open/releases/download/9.1.0/pbis-open-9.1.0.551.linux.x86_64.deb.sh -
特定のバージョンのPBISパッケージをインターネットからフェッチします。そのためには、/opt/Citrix/VDA/sbin/ctxinstall.shファイル内の「pbisDownloadRelease」および「pbisDownloadExpectedSHA256」の行を変更します。
例については、次のスクリーンショットを参照してください。

ステップ 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
<!--NeedCopy-->
このコマンドは0または1を返します。
- 0 - 時刻同期機能が有効であり、無効にする必要があります。
- 1 - 時刻同期機能が無効であり、それ以上の操作は不要です。
/proc/sys/xen/independent_wallclockファイルが存在しない場合、以下の手順は不要です。
有効になっている場合、ファイルに1を書き込むことで時刻同期機能を無効にします。
sudo echo 1 > /proc/sys/xen/independent_wallclock
<!--NeedCopy-->
この変更を再起動後も永続的に適用するには、/etc/sysctl.confファイルを編集し、次の行を追加します。
xen.independent_wallclock = 1
これらの変更を確認するには、システムを再起動します。
su -
cat /proc/sys/xen/independent_wallclock
<!--NeedCopy-->
このコマンドは値1を返します。
Microsoft Hyper-Vでの時刻同期の修正
Hyper-V Linux Integration ServicesがインストールされているLinux VMは、Hyper-Vの時刻同期機能を使用してホストオペレーティングシステムの時刻を利用できます。システムクロックが正確であることを保証するには、NTPサービスと並行してこの機能を有効にする必要があります。
管理オペレーティングシステムから:
- Hyper-Vマネージャーコンソールを開きます。
- Linux VMの設定で、[統合サービス] を選択します。
-
[時刻の同期] が選択されていることを確認します。
-
注:
このアプローチは、NTPとの競合を避けるためにホストの時刻同期が無効になっているVMwareやCitrix Hypervisorとは異なります。Hyper-Vの時刻同期は、NTPの時刻同期と共存し、補完することができます。
-
ESXおよびESXiでの時刻同期の修正
VMwareの時刻同期機能が有効になっている場合、各準仮想化Linux VM内でNTPとハイパーバイザーの両方で問題が発生します。両方がシステムクロックを同期しようとします。クロックが他のサーバーと同期しなくなるのを避けるため、各Linuxゲスト内のシステムクロックがNTPと同期していることを確認してください。この場合、ホストの時刻同期を無効にする必要があります。
-
VMware Toolsがインストールされた準仮想化Linuxカーネルを実行している場合:
-
- vSphere Clientを開きます。
- Linux VMの設定を編集します。
- [仮想マシンのプロパティ] ダイアログで、[オプション] タブを開きます。
- [VMware Tools] を選択します。
- [詳細設定] ボックスで、[ゲストの時刻をホストと同期] のチェックを外します。
ステップ 3: .NET Runtime 6.0のインストール
Linux VDAをインストールする前に、https://docs.microsoft.com/en-us/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パッケージと、Linux VDAパッケージの整合性を検証するために使用できるGPG公開キーをダウンロードします。
Linux VDAパッケージの整合性を公開キーを使用して検証するには:
-
RPMパッケージの場合、公開キーをRPMデータベースにインポートし、次のコマンドを実行します。
rpmkeys --import <path to the public key> rpm --checksig --verbose <path to the Linux VDA package> <!--NeedCopy-->DEBパッケージの場合、公開キーをDEBデータベースにインポートし、次のコマンドを実行します。
sudo apt-get install dpkg-sig gpg --import <path to the public key> dpkg-sig --verify <path to the Linux VDA package> <!--NeedCopy-->
-
-
ステップ 5:Linux VDAパッケージのインストール
-
Linux VDAの環境をセットアップするには、次のコマンドを実行します。
- Amazon Linux 2、CentOS、RHEL、およびRocky Linuxディストリビューションの場合:
注:
RHELおよびCentOSの場合、Linux VDAを正常にインストールする前にEPELリポジトリをインストールしてください。EPELのインストール方法については、https://docs.fedoraproject.org/en-US/epel/の指示を参照してください。
RHEL 9.0およびRocky Linux 9.0にLinux VDAをインストールする前に、libsepolパッケージをバージョン3.4以降にアップデートしてください。
- sudo yum -y localinstall <PATH>/<Linux VDA RPM>
<!--NeedCopy-->
-
注:
-
-
GCPでホストされているRHEL 8.x/9.xおよびRocky Linux 8.x/9.xにLinux VDAをインストールした後、VMの再起動後にイーサネット接続が失われ、Linux VDAに到達できなくなる可能性があります。この問題を回避するには、VMを再起動する前に次のコマンドを実行します。
-
nmcli dev connect eth0 service NetworkManager restart <!--NeedCopy-->
Ubuntu/Debianディストリビューションの場合:
- sudo dpkg -i <PATH>/<Linux VDA deb>
sudo apt-get install -f
<!--NeedCopy-->
注:
- > - Debian 11.3ディストリビューションに必要な依存関係をインストールするには、`/etc/apt/sources.list`ファイルに`deb http://deb.debian.org/debian/ bullseye main`の行を追加します。
- GCP上のUbuntu 20.04の場合、RDNSを無効にします。そのためには、
/etc/krb5.confの[libdefaults]の下にrdns = falseの行を追加します。
SUSEディストリビューションの場合:
-
AWS、Azure、およびGCP上のSUSE 15.4の場合、以下を確認してください。
- libstdc++6バージョン12以降を使用していること。
- /etc/sysconfig/windowmanagerのDefault_WMパラメーターが“gnome”に設定されていること。
-
Linux VDAをインストールするには、次のコマンドを実行します。
zypper -i install <PATH>/<Linux VDA RPM> <!--NeedCopy-->
ステップ 6:NVIDIA GRIDドライバーのインストール
HDX™ 3D Proを有効にするには、ハイパーバイザーとVDAマシンにNVIDIA GRIDドライバーをインストールする必要があります。
特定のハイパーバイザーにNVIDIA GRID Virtual GPU Manager(ホストドライバー)をインストールおよび構成するには、次のガイドを参照してください。
NVIDIA GRIDゲストVMドライバーをインストールおよび構成するには、次の一般的な手順を実行します。
- ゲストVMがシャットダウンされていることを確認します。
- ハイパーバイザーのコントロールパネルで、VMにGPUを割り当てます。
- VMを起動します。
- VMにゲストVMドライバーをインストールします。
ステップ 7:使用するデータベースの指定
実験的な機能として、PostgreSQLに加えてSQLiteを使用できます。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はデフォルトでPostgreSQLを使用します。 -/etc/xdl/db.confを使用してPostgreSQLのポート番号を構成することもできます。
ステップ 8:インストールを完了するためのランタイム環境のセットアップ
Linux VDAパッケージのインストール後、ctxinstall.shスクリプトを使用して実行環境を構成します。スクリプトは対話モードまたはサイレントモードで実行できます。
注:
ランタイム環境をセットアップする前に、
en_US.UTF-8ロケールがOSにインストールされていることを確認してください。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は、次の操作をガイドします。
- システム環境の確認
- 依存関係のインストール
- VDAを特定のドメインに参加させる
- ランタイム環境の構成
>**ヒント:**
>
> **保存**をクリックすると、指定したパスのローカルファイルに変数設定が保存されます。**読み込み**をクリックすると、指定したファイルから変数設定が読み込まれます。MCS変数の構成については、「[手順3:マスターイメージを準備する](/ja-jp/linux-virtual-delivery-agent/2301/installation-overview/create-linux-vdas-using-mcs.html#step-3-prepare-a-master-image)」を参照してください。
サイレントモード:
サイレントモードで簡易インストールを使用するには、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 VDAサービスでは、システムファイアウォールを介した受信ネットワーク接続が許可されている必要があります。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サイト名を指定します。不要な場合は、<none>に設定します。
- CTX_XDL_LDAP_LIST=’list-ldap-servers’ – Linux VDAは、LDAPサーバーを検出するためにDNSを照会します。DNSがLDAPサービスレコードを提供できない場合は、LDAPポートを含むスペース区切りのLDAP FQDNのリストを指定できます。たとえば、ad1.mycompany.com:389 ad2.mycompany.com:3268 ad3.mycompany.com:3268。LDAPポート番号を389として指定すると、Linux VDAは指定されたドメイン内の各LDAPサーバーをポーリングモードで照会します。ポリシーの数がx、LDAPサーバーの数がyの場合、Linux VDAは合計でXにYを乗じた数のクエリを実行します。ポーリング時間がしきい値を超えると、セッションログオンが失敗する可能性があります。LDAPクエリを高速化するには、ドメインコントローラーでグローバルカタログを有効にし、関連するLDAPポート番号を3268として指定します。この変数は、デフォルトで<none>に設定されています。
- CTX_XDL_SEARCH_BASE=search-base-set – Linux VDAは、Active Directoryドメインのルートに設定された検索ベース(例:DC=mycompany,DC=com)を介してLDAPを照会します。検索パフォーマンスを向上させるには、検索ベース(例:OU=VDI,DC=mycompany,DC=com)を指定できます。不要な場合は、<none>に設定します。
- CTX_XDL_FAS_LIST=’list-fas-servers’ – Federated Authentication Service(FAS)サーバーは、ADグループポリシーを介して構成されます。Linux VDAはADグループポリシーをサポートしていませんが、代わりにセミコロン区切りのFASサーバーのリストを指定できます。シーケンスは、ADグループポリシーで構成されているものと同じである必要があります。サーバーアドレスが削除された場合は、その空白を<none>テキスト文字列で埋め、サーバーアドレスの順序を変更しないでください。FASサーバーと適切に通信するには、FASサーバーで指定されたポート番号と一致するポート番号を追加してください。例:CTX_XDL_FAS_LIST=’fas_server_1_url:port_number; fas_server_2_url: port_number; fas_server_3_url: port_number’。
-
CTX_XDL_DOTNET_RUNTIME_PATH=path-to-install-dotnet-runtime – 新しいブローカーエージェントサービス(
ctxvda)をサポートするために.NET Runtime 6.0をインストールするパス。デフォルトのパスは/usr/binです。 -
CTX_XDL_DESKTOP_ENVIRONMENT=gnome/gnome-classic/mate – セッションで使用するGNOME、GNOME Classic、またはMATEデスクトップ環境を指定します。変数を指定しない場合、VDAに現在インストールされているデスクトップが使用されます。ただし、現在インストールされているデスクトップがMATEの場合は、変数値をmateに設定する必要があります。
次の手順を実行して、ターゲットセッションユーザーのデスクトップ環境を変更することもできます。
- VDAの$HOME/<username>ディレクトリの下に
.xsessionまたは.Xclientsファイルを作成します。Amazon Linux 2を使用している場合は、.Xclientsファイルを作成します。その他のディストリビューションを使用している場合は、.xsessionファイルを作成します。 -
.xsessionまたは.Xclientsファイルを編集して、ディストリビューションに基づいてデスクトップ環境を指定します。- **MATEデスクトップの場合**
- VDAの$HOME/<username>ディレクトリの下に
- MSESSION=”$(type -p mate-session)”
- if [ -n “$MSESSION” ]; then
-
exec mate-session fi
- **GNOME Classicデスクトップの場合** GSESSION="$(type -p gnome-session)" if [ -n "$GSESSION" ]; then export GNOME_SHELL_SESSION_MODE=classic exec gnome-session --session=gnome-classic fi - **GNOMEデスクトップの場合** GSESSION="$(type -p gnome-session)" if [ -n "$GSESSION" ]; then exec gnome-session fi- ターゲットセッションユーザーと700ファイル権限を共有します。
バージョン2209以降、セッションユーザーはデスクトップ環境をカスタマイズできます。この機能を有効にするには、VDAに切り替え可能なデスクトップ環境を事前にインストールする必要があります。詳しくは、「セッションユーザーによるカスタムデスクトップ環境」を参照してください。
- 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 | gnome-classic | 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
<!--NeedCopy-->
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|gnome-classic|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
<!--NeedCopy-->
ステップ9: XDPingの実行
sudo /opt/Citrix/VDA/bin/xdpingを実行して、Linux VDA環境における一般的な構成の問題を確認します。詳細については、「XDPing」を参照してください。
ステップ10: Linux VDAの実行
Linux VDAの開始:
Linux VDAサービスを開始するには:
sudo /sbin/service ctxhdx start
sudo /sbin/service ctxvda start
<!--NeedCopy-->
Linux VDAの停止:
Linux VDAサービスを停止するには:
sudo /sbin/service ctxvda stop
sudo /sbin/service ctxhdx stop
<!--NeedCopy-->
注:
ctxvdaおよびctxhdxサービスを停止する前に、service ctxmonitorservice stopコマンドを実行してモニターサービスデーモンを停止します。そうしないと、モニターサービスデーモンが停止したサービスを再起動します。
Linux VDAの再起動:
Linux VDAサービスを再起動するには:
sudo /sbin/service ctxvda stop
sudo /sbin/service ctxhdx restart
sudo /sbin/service ctxvda start
<!--NeedCopy-->
Linux VDAのステータスを確認する:
Linux VDAサービスの稼働状況を確認するには、次のコマンドを使用します。
sudo /sbin/service ctxvda status
sudo /sbin/service ctxhdx status
<!--NeedCopy-->
ステップ 11: マシンカタログの作成
マシンカタログを作成し、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ドメインから削除して再参加させる場合、マシンをマシンカタログから削除して再度追加する必要があります。
ステップ 12: デリバリーグループの作成
デリバリーグループを作成し、Linux VDAマシンを含むマシンカタログを追加するプロセスは、Windows VDAマシンとほぼ同じです。これらのタスクを完了する方法の詳細については、「デリバリーグループの作成」を参照してください。
Linux VDAマシンカタログを含むデリバリーグループを作成する場合、以下の制限が適用されます。
- 選択したADユーザーとグループが、Linux VDAマシンにログオンするように適切に構成されていることを確認してください。
- 認証されていない(匿名)ユーザーのログオンを許可しないでください。
- デリバリーグループとWindowsマシンを含むマシンカタログを混在させないでください。
重要:
アプリケーションの公開は、Linux VDAバージョン1.4以降でサポートされています。ただし、Linux VDAは、デスクトップとアプリを同じマシンに配信することをサポートしていません。
マシンカタログとデリバリーグループの作成方法については、「Citrix Virtual Apps and Desktops 7 2212」を参照してください。
ステップ 13: Linux VDAのアップグレード(オプション)
既存のインストールを、以前の2つのバージョンおよびLTSRリリースからアップグレードできます。
RHEL 7およびCentOS 7の場合:
sudo rpm -U XenDesktopVDA-<version>.el7_x.x86_64.rpm
<!--NeedCopy-->
RHEL 8およびRocky Linux 8の場合:
sudo rpm -U XenDesktopVDA-<version>.el8_x.x86_64.rpm
<!--NeedCopy-->
RHEL 9.0およびRocky Linux 9.0の場合:
注:
RHEL 9.0およびRocky Linux 9.0でLinux VDAをアップグレードする前に、libsepolパッケージをバージョン3.4以降に更新してください。
sudo rpm -U XenDesktopVDA-<version>.el9x.x86_64.rpm
<!--NeedCopy-->
SUSEの場合:
sudo rpm -U XenDesktopVDA-<version>.sle15_x.x86_64.rpm
<!--NeedCopy-->
Ubuntu 18.04の場合:
sudo dpkg -i xendesktopvda_<version>.ubuntu18.04_amd64.deb
<!--NeedCopy-->
Ubuntu 20.04の場合:
sudo dpkg -i xendesktopvda_<version>.ubuntu20.04_amd64.deb
<!--NeedCopy-->
Ubuntu 22.04の場合:
sudo dpkg -i xendesktopvda_<version>.ubuntu22.04_amd64.deb
<!--NeedCopy-->
トラブルシューティング
このセクションの情報を使用して、簡易インストール機能の使用から発生する可能性のある問題をトラブルシューティングします。
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.
<!--NeedCopy-->
/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
この問題を解決するには:
-
rm -f /etc/krb5.keytabコマンドを実行します。 -
net ads leave $REALM -U $domain-administratorコマンドを実行します。 - Delivery Controller でマシンカタログとデリバリーグループを削除します。
- /opt/Citrix/VDA/sbin/ctxinstall.sh を実行します。
- Delivery Controller でマシンカタログとデリバリーグループを作成します。
Ubuntu デスクトップセッションでグレースクリーンが表示される
この問題は、セッションを起動した後に空白のデスクトップでブロックされる場合に発生します。さらに、ローカルユーザーアカウントを使用してログオンすると、マシンのコンソールにもグレースクリーンが表示されます。
この問題を解決するには:
-
sudo apt-get updateコマンドを実行します。 -
sudo apt-get install unity lightdmコマンドを実行します。 -
/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.
<!--NeedCopy-->
ヒント:
この問題の根本原因は、ドメイン管理者用のホームディレクトリが作成されていないことです。
この問題を解決するには:
-
コマンドラインから「pam-auth-update」と入力します。
-
表示されるダイアログで、[Create home directory login] が選択されていることを確認します。

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.
<!--NeedCopy-->
または、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
<!--NeedCopy-->
一部のグループまたはモジュールは、再起動するまで有効になりません。ログに 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
<!--NeedCopy-->
この問題を解決するには:
-
/etc/selinux/config に次の変更を加えて SELinux を無効にします。
SELINUX=disabled
-
VDA を再起動します。
この記事の概要
- ステップ 1: 構成情報とLinuxマシンの準備
- ステップ 2: ハイパーバイザーの準備
- ステップ 3: .NET Runtime 6.0のインストール
- ステップ 4: Linux VDAパッケージのダウンロード
- ステップ 5:Linux VDAパッケージのインストール
- ステップ 6:NVIDIA GRIDドライバーのインストール
- ステップ 7:使用するデータベースの指定
- ステップ 8:インストールを完了するためのランタイム環境のセットアップ
- ステップ9: XDPingの実行
- ステップ10: Linux VDAの実行
- ステップ 11: マシンカタログの作成
- ステップ 12: デリバリーグループの作成
- ステップ 13: Linux VDAのアップグレード(オプション)
- トラブルシューティング