Linux仮想配信エージェント 2411

Ubuntu に Linux VDA を手動でインストール

重要:

新規インストールの場合、迅速なインストールには簡易インストールを使用することをお勧めします。簡易インストールは時間と労力を節約し、この記事で詳述されている手動インストールよりもエラーが発生しにくいです。

手順 1: 構成情報と Linux マシンの準備

手順 1a: ネットワーク構成の確認

ネットワークが正しく接続され、構成されていることを確認してください。たとえば、Linux VDA で DNS サーバーを構成する必要があります。

Ubuntu Live Server を使用している場合は、ホスト名を設定する前に /etc/cloud/cloud.cfg 構成ファイルで次の変更を行います。

preserve_hostname: true

手順 1b: ホスト名の設定

マシンのホスト名が正しく報告されるように、/etc/hostname ファイルをマシンのホスト名のみを含むように変更します。

hostname

手順 1c: ホスト名へのループバックアドレスの割り当て

マシンの DNS ドメイン名と完全修飾ドメイン名 (FQDN) が正しく報告されることを確認します。これを行うには、/etc/hosts ファイルの次の行を変更して、FQDN とホスト名を最初の 2 つのエントリとして含めます。

127.0.0.1 hostname-fqdn hostname localhost

例:

127.0.0.1 vda01.example.com vda01 localhost

ファイル内の他のエントリから hostname-fqdn または hostname への他の参照をすべて削除します。

注:

Linux VDA は現在、NetBIOS 名の切り捨てをサポートしていません。そのため、ホスト名は 15 文字を超えてはなりません。

ヒント:

a~z、A~Z、0~9、およびハイフン (-) の文字のみを使用してください。アンダースコア (_)、スペース、その他の記号は避けてください。ホスト名を数字で始めたり、ハイフンで終わらせたりしないでください。この規則は Delivery Controller のホスト名にも適用されます。

手順 1d: ホスト名の確認

ホスト名が正しく設定されていることを確認します。

hostname
<!--NeedCopy-->

このコマンドは、マシンのホスト名のみを返し、FQDN は返しません。

FQDN が正しく設定されていることを確認します。

hostname -f
<!--NeedCopy-->

このコマンドは、マシンの FQDN を返します。

手順 1e: マルチキャスト DNS の無効化

デフォルト設定ではマルチキャスト DNS (mDNS) が有効になっており、名前解決の結果が一貫しない可能性があります。

mDNS を無効にするには、/etc/nsswitch.conf を編集し、次の行を変更します。

hosts: files mdns_minimal [NOTFOUND=return] dns

変更後:

hosts: files dns

手順 1f: 名前解決とサービス到達可能性の確認

FQDN を解決し、ドメインコントローラーと Delivery Controller™ に ping を実行できることを確認します。

nslookup domain-controller-fqdn

ping domain-controller-fqdn

nslookup delivery-controller-fqdn

ping delivery-controller-fqdn
<!--NeedCopy-->

FQDN を解決できない場合、またはこれらのマシンのいずれかに ping を実行できない場合は、続行する前に手順を確認してください。

手順 1g: クロック同期の構成 (chrony)

VDA、Delivery Controller、およびドメインコントローラー間で正確なクロック同期を維持することは非常に重要です。Linux VDA を仮想マシン (VM) としてホストすると、クロックのずれの問題が発生する可能性があります。このため、リモート時刻サービスとの時刻同期が推奨されます。

chrony のインストール:

apt-get install chrony
<!--NeedCopy-->

root ユーザーとして、/etc/chrony/chrony.conf を編集し、各リモート時刻サーバーのサーバーエントリを追加します。

server peer1-fqdn-or-ip-address iburst server peer2-fqdn-or-ip-address iburst

一般的な展開では、パブリック NTP プールサーバーから直接ではなく、ローカルのドメインコントローラーから時刻を同期します。ドメイン内の各 Active Directory ドメインコントローラーのサーバーエントリを追加します。

ループバック IP アドレス、localhost、およびパブリックサーバー *.pool.ntp.org のエントリを含む、リストされている他の server または pool エントリをすべて削除します。

変更を保存し、Chrony デーモンを再起動します。

sudo systemctl restart chrony
<!--NeedCopy-->

手順 1h: 使用するデータベースのインストールと指定

注:

  • VDI モードでは SQLite のみを使用し、ホスト型共有デスクトップ配信モデルでは PostgreSQL を使用することをお勧めします。

  • 簡易インストールおよび MCS の場合、SQLite または PostgreSQL を手動でインストールすることなく使用するように指定できます。/etc/xdl/db.conf で特に指定しない限り、Linux VDA はデフォルトで PostgreSQL を使用します。Linux ディストリビューションで提供されるバージョンではなく、カスタムバージョンの PostgreSQL が必要な場合は、指定されたバージョンを手動でインストールし、/etc/xdl/db.conf を編集して新しいバージョンを反映させ、簡易インストールスクリプト (ctxinstall.sh) または MCS スクリプト (deploymcs.sh) を実行する前に PostgreSQL サービスを開始する必要があります。

  • 手動インストールの場合、SQLite、PostgreSQL、またはその両方を手動でインストールする必要があります。Linux ディストリビューションで提供されるバージョンではなく、カスタムバージョンの PostgreSQL を使用できます。SQLite と PostgreSQL の両方をインストールする場合は、Linux VDA パッケージのインストール後に /etc/xdl/db.conf を編集して、どちらか一方を使用するように指定できます。

PostgreSQL のインストール

このセクションでは、Linux ディストリビューションで提供される PostgreSQL のバージョンをインストールする方法について説明します。カスタムバージョンの PostgreSQL が必要な場合は、特定の要件に基づいてインストールできます。

PostgreSQL をインストールするには、次のコマンドを実行します。

sudo apt-get install -y postgresql

sudo apt-get install -y libpostgresql-jdbc-java
<!--NeedCopy-->

マシンの起動時または即座に PostgreSQL を開始するには、次のコマンドをそれぞれ実行します。

sudo systemctl enable postgresql

sudo systemctl restart postgresql
<!--NeedCopy-->

SQLite のインストール

Ubuntu の場合、SQLite をインストールするには、次のコマンドを実行します。

sudo apt-get install -y sqlite3
<!--NeedCopy-->

使用するデータベースの指定

SQLite と PostgreSQL の両方をインストールする場合は、Linux VDA パッケージのインストール後に /etc/xdl/db.conf を編集して、どちらか一方を使用するように指定できます。

  1. /opt/Citrix/VDA/sbin/ctxcleanup.sh を実行します。新規インストールの場合は、この手順を省略します。
  2. /etc/xdl/db.conf を編集して、使用するデータベースを指定します。以下は db.conf ファイルの例です。

    # database configuration file for Linux VDA
    
    ## database choice
    # possible choices are:
    #     SQLite
    #     PostgreSQL
    # default choice is PostgreSQL
    DbType="PostgreSQL"
    
    -  ## 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"
    
    <!--NeedCopy-->
    

    カスタムバージョンの PostgreSQL を使用するには、DbCustomizePostgreSQL を true に設定します。

  3. ctxsetup.sh を実行します。

注:

/etc/xdl/db.conf を使用して、PostgreSQL のポート番号を構成することもできます。

ステップ 1i: Motif のインストール

-  sudo apt-get install -y libxm4
<!--NeedCopy-->
  • ステップ 1j: その他のパッケージのインストール

Ubuntu 24.04 の場合:

sudo apt-get install -y libsasl2-2
sudo apt-get install -y libsasl2-modules-gssapi-mit
sudo apt-get install -y libldap2
sudo apt-get install -y krb5-user
sudo apt-get install -y libgtk2.0-0

<!--NeedCopy-->

Ubuntu 22.04 の場合:

sudo apt-get install -y libsasl2-2
sudo apt-get install -y libsasl2-modules-gssapi-mit
sudo apt-get install -y libldap-2.5-0
sudo apt-get install -y krb5-user
sudo apt-get install -y libgtk2.0-0
<!--NeedCopy-->

Ubuntu 20.04 の場合:

sudo apt-get install -y libsasl2-2
sudo apt-get install -y libsasl2-modules-gssapi-mit
sudo apt-get install -y libldap-2.4-2
sudo apt-get install -y krb5-user
sudo apt-get install -y libgtk2.0-0
<!--NeedCopy-->

ステップ 2: ハイパーバイザーの準備

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

XenServer (旧 Citrix Hypervisor™) での時刻同期の修正

XenServer® の時刻同期機能が有効になっている場合、各準仮想化 Linux VM 内で NTP と XenServer の問題が発生します。どちらもシステムクロックを管理しようとします。クロックが他のサーバーと同期しなくなるのを避けるため、各 Linux ゲスト内のシステムクロックが NTP と同期していることを確認してください。この場合、ホストの時刻同期を無効にする必要があります。HVM モードでは変更は不要です。

XenServer VM Tools がインストールされた準仮想化 Linux カーネルを実行している場合、Linux VM 内から XenServer の時刻同期機能が存在し、有効になっているかどうかを確認できます。

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 サービスと並行してこの機能を有効にしてください。

管理オペレーティングシステムから:

  1. Hyper-V マネージャーコンソールを開きます
  2. Linux VM の設定で、統合サービスを選択します
  3. 時刻同期が選択されていることを確認します

注:

このアプローチは、NTP との競合を避けるためにホストの時刻同期が無効になっている VMware および XenServer (旧 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: Linux VM を Windows ドメインに追加

Active Directory (AD) ドメインに Linux マシンを追加するには、以下の方法があります。

選択した方法に基づいて指示に従ってください。

注:

Linux VDA のローカルアカウントと AD のアカウントで同じユーザー名を使用すると、セッションの起動に失敗する可能性があります。

Samba Winbind

必要なパッケージのインストールまたは更新

sudo apt-get install winbind samba libnss-winbind libpam-winbind krb5-config krb5-locales krb5-user
<!--NeedCopy-->

マシン起動時に Winbind デーモンを開始する設定

Winbind デーモンは、マシン起動時に開始するように構成する必要があります。

sudo systemctl enable winbind
<!--NeedCopy-->

注:

winbind スクリプトが /etc/init.d の下にあることを確認してください。

Kerberos の構成

ルートユーザーとして /etc/krb5.conf を開き、以下の設定を行います。

注:

AD インフラストラクチャに基づいて Kerberos を構成してください。以下の設定は、シングルドメイン、シングルフォレストモデルを対象としています。

[libdefaults]

default_realm = REALM

dns_lookup_kdc = false

[realms]

REALM = {

admin_server = domain-controller-fqdn

kdc = domain-controller-fqdn

}

[domain_realm]

*ドメインDNS名* = *レルム*

*.ドメインDNS名* = *レルム*

このコンテキストにおける domain-dns-name パラメーターは、example.com のようなDNSドメイン名です。REALM は、EXAMPLE.COM のような大文字のKerberosレルム名です。

Winbind認証の構成

UbuntuにはRHELのauthconfigやSUSEのyast2のようなツールがないため、Winbindを手動で構成します。

vim /etc/samba/smb.conf コマンドを実行して /etc/samba/smb.conf を開き、次の設定を行います。

[global]

workgroup = ワークグループ

security = ADS

realm = レルム

encrypt passwords = yes

idmap config *:range = 16777216-33554431

kerberos method = secrets and keytab

winbind refresh tickets = yes

template shell = /bin/bash

WORKGROUPREALM の最初のフィールドであり、REALM は大文字のKerberosレルム名です。

nsswitch の構成

/etc/nsswitch.conf を開き、次の行に winbind を追加します。

passwd: compat winbind group: compat winbind

Windowsドメインへの参加

ドメインコントローラーに到達可能であり、ドメインにコンピューターを追加する権限を持つActive Directoryユーザーアカウントが必要です。

sudo net ads join REALM -U user
<!--NeedCopy-->

ここで、REALM は大文字のKerberosレルム名であり、user はドメインにコンピューターを追加する権限を持つドメインユーザーです。

winbind の再起動

sudo systemctl restart winbind
<!--NeedCopy-->

WinbindのPAMの構成

次のコマンドを実行し、Winbind NT/Active Directory認証 および ログイン時にホームディレクトリを作成 オプションが選択されていることを確認します。

sudo pam-auth-update
<!--NeedCopy-->

ヒント:

マシンがドメインに参加している場合にのみ、winbind デーモンは実行され続けます。

ドメインメンバーシップの確認

Delivery Controllerは、WindowsまたはLinuxにかかわらず、すべてのVDAマシンがActive Directoryにコンピューターオブジェクトを持つことを必要とします。

Sambanet ads コマンドを実行して、マシンがドメインに参加していることを確認します。

sudo net ads testjoin
<!--NeedCopy-->

次のコマンドを実行して、追加のドメインおよびコンピューターオブジェクト情報を確認します。

sudo net ads info
<!--NeedCopy-->

Kerberos構成の確認

Linux VDAで使用するためにKerberosが正しく構成されていることを確認するには、システムの keytab ファイルが作成され、有効なキーが含まれていることを確認します。

-  sudo klist -ke
<!--NeedCopy-->

このコマンドは、プリンシパル名と暗号スイートのさまざまな組み合わせで利用可能なキーのリストを表示します。これらのキーを使用してドメインコントローラーでマシンを認証するには、Kerberos kinit コマンドを実行します。

sudo kinit -k MACHINE\$@REALM
<!--NeedCopy-->

マシン名とレルム名は大文字で指定する必要があります。シェルによる置換を防ぐために、ドル記号 ($) はバックスラッシュ (\) でエスケープする必要があります。一部の環境では、DNSドメイン名がKerberosレルム名と異なる場合があります。レルム名が使用されていることを確認してください。このコマンドが成功した場合、出力は表示されません。

次を使用して、マシンアカウントのTGTチケットがキャッシュされていることを確認します。

sudo klist
<!--NeedCopy-->

次を使用して、マシンのアカウントの詳細を調べます。

sudo net ads status
<!--NeedCopy-->

ユーザー認証の確認

wbinfo ツールを使用して、ドメインユーザーがドメインで認証できることを確認します。

wbinfo --krb5auth=domain\\username%password
<!--NeedCopy-->

ここで指定するドメインはADドメイン名であり、Kerberosレルム名ではありません。bashシェルでは、バックスラッシュ (\) 文字を別のバックスラッシュでエスケープする必要があります。このコマンドは、成功または失敗を示すメッセージを返します。

Winbind PAMモジュールが正しく構成されていることを確認するには、以前に使用されていないドメインユーザーアカウントを使用してLinux VDAにログオンします。

ssh localhost -l domain\\username

id -u
<!--NeedCopy-->

注:

SSHコマンドを正常に実行するには、SSHが有効になっており、正しく機能していることを確認してください。

id -u コマンドによって返されたuidに対応するKerberos資格情報キャッシュファイルが作成されたことを確認します。

ls /tmp/krb5cc_uid
<!--NeedCopy-->

ユーザーのKerberos資格情報キャッシュ内のチケットが有効で期限切れになっていないことを確認します。

klist
<!--NeedCopy-->

セッションを終了します。

exit
<!--NeedCopy-->

同様のテストは、GnomeまたはKDEコンソールに直接ログオンすることで実行できます。ドメイン参加の確認後、手順6:Linux VDAのインストール に進みます。

ヒント:

ドメインアカウントでログオンしたときにユーザー認証に成功してもデスクトップが表示されない場合は、マシンを再起動してからもう一度試してください。

Quest認証サービス

ドメインコントローラーでのQuestの構成

Active DirectoryドメインコントローラーにQuestソフトウェアをインストールおよび構成済みであり、Active Directoryでコンピューターオブジェクトを作成するための管理者権限が与えられていることを前提とします。

ドメインユーザーのLinux VDAマシンへのログオンを有効にする

ドメインユーザーがLinux VDAマシンでHDX™セッションを確立できるようにするには:

  1. Active Directoryユーザーとコンピューター管理コンソールで、そのユーザーアカウントのActive Directoryユーザープロパティを開きます。
  2. Unix Accountタブを選択します。
  3. Unix-enabledをオンにします。
  4. Primary GID Numberを実際のドメインユーザーグループのグループIDに設定します。

注:

これらの手順は、コンソール、RDP、SSH、またはその他のリモートプロトコルを使用してログオンするドメインユーザーを設定する場合にも同様に適用されます。

Linux VDAでのQuestの構成

SELinuxポリシーの適用を回避する

デフォルトのRHEL環境ではSELinuxが完全に適用されています。この適用により、Questが使用するUnixドメインソケットIPCメカニズムが妨げられ、ドメインユーザーがログオンできなくなります。

この問題を回避する便利な方法は、SELinuxを無効にすることです。rootユーザーとして、/etc/selinux/configを編集し、SELinuxの設定を変更します。

  • SELINUX=disabled

この変更にはマシンの再起動が必要です。

reboot
<!--NeedCopy-->

重要:

この設定は慎重に使用してください。無効にした後にSELinuxポリシーの適用を再度有効にすると、rootユーザーや他のローカルユーザーであっても完全にロックアウトされる可能性があります。

VASデーモンの構成

Kerberosチケットの自動更新は有効にして切断する必要があります。認証(オフラインログオン)は無効にする必要があります。

sudo /opt/quest/bin/vastool configure vas vasd auto-ticket-renew-interval 32400

sudo /opt/quest/bin/vastool configure vas vas_auth allow-disconnected-auth false
<!--NeedCopy-->

このコマンドは、更新間隔を9時間(32,400秒)に設定します。これは、デフォルトの10時間というチケットの有効期間よりも1時間短いです。チケットの有効期間が短いシステムでは、このパラメーターをより低い値に設定してください。

PAMとNSSの構成

HDXおよびsu、ssh、RDPなどの他のサービスを介したドメインユーザーログオンを有効にするには、次のコマンドを実行してPAMとNSSを手動で構成します。

sudo /opt/quest/bin/vastool configure pam

sudo /opt/quest/bin/vastool configure nss
<!--NeedCopy-->

Windowsドメインへの参加

Questのvastoolコマンドを使用して、LinuxマシンをActive Directoryドメインに参加させます。

sudo /opt/quest/bin/vastool -u user join domain-name
<!--NeedCopy-->

ユーザーは、コンピューターをActive Directoryドメインに参加させる権限を持つ任意のドメインユーザーです。domain-nameはドメインのDNS名です(例:example.com)。

ドメイン参加後にLinuxマシンを再起動します。

ドメインメンバーシップの確認

Delivery Controllerは、WindowsまたはLinuxにかかわらず、すべてのVDAマシンがActive Directoryにコンピューターオブジェクトを持つことを要求します。Questに参加しているLinuxマシンがドメイン上にあることを確認するには:

sudo /opt/quest/bin/vastool info domain
<!--NeedCopy-->

マシンがドメインに参加している場合、このコマンドはドメイン名を返します。マシンがどのドメインにも参加していない場合、次のエラーが表示されます。

ERROR: No domain could be found. ERROR: VAS_ERR_CONFIG: at ctx.c:414 in _ctx_init_default_realm default_realm not configured in vas.conf. Computer may not be joined to domain

ユーザー認証の確認

QuestがPAMを介してドメインユーザーを認証できることを確認するには、以前使用したことのないドメインユーザーアカウントを使用してLinux VDAにログオンします。

ssh localhost -l domain\\username

id -u
<!--NeedCopy-->

id -uコマンドによって返されたUIDに対応するKerberos資格情報キャッシュファイルが作成されたことを確認します。

ls /tmp/krb5cc_uid
<!--NeedCopy-->

Kerberos資格情報キャッシュ内のチケットが有効で期限切れでないことを確認します。

/opt/quest/bin/vastool klist
<!--NeedCopy-->

セッションを終了します。

exit
<!--NeedCopy-->

ドメイン参加の確認後、手順6:Linux VDAのインストールに進みます。

Centrify DirectControl

Windowsドメインへの参加

Centrify DirectControl Agentがインストールされている状態で、Centrifyのadjoinコマンドを使用してLinuxマシンをActive Directoryドメインに参加させます。

su –
adjoin -w -V -u user domain-name
<!--NeedCopy-->

userパラメーターは、コンピューターをActive Directoryドメインに参加させる権限を持つ任意のActive Directoryドメインユーザーです。domain-nameパラメーターは、Linuxマシンを参加させるドメインの名前です。

ドメインメンバーシップの確認

Delivery Controllerは、WindowsまたはLinuxにかかわらず、すべてのVDAマシンがActive Directoryにコンピューターオブジェクトを持つことを要求します。Centrifyに参加しているLinuxマシンがドメイン上にあることを確認するには:

su –

adinfo
<!--NeedCopy-->

Joined to domainの値が有効であり、CentrifyDC modeconnectedを返すことを確認します。モードが開始状態のままになっている場合、Centrifyクライアントはサーバー接続または認証の問題を抱えています。

より包括的なシステムおよび診断情報は、以下を使用して利用できます。

adinfo --sysinfo all

adinfo --diag
<!--NeedCopy-->

さまざまなActive DirectoryおよびKerberosサービスへの接続をテストします。

adinfo --test
<!--NeedCopy-->

ドメイン参加の確認後、手順6:Linux VDAのインストールに進みます。

SSSD

Kerberosの構成

Kerberosをインストールするには、次のコマンドを実行します。

sudo apt-get install krb5-user
<!--NeedCopy-->

Kerberos を構成するには、root として /etc/krb5.conf を開き、パラメーターを設定します。

注:

AD インフラストラクチャに基づいて Kerberos を構成します。以下の設定は、単一ドメイン、単一フォレストモデルを対象としています。

[libdefaults]

default_realm = REALM

dns_lookup_kdc = false

[realms]

REALM = {

admin_server = domain-controller-fqdn

kdc = domain-controller-fqdn

}

[domain_realm]

domain-dns-name = REALM

.domain-dns-name = REALM

このコンテキストにおける domain-dns-name パラメーターは、example.com のような DNS ドメイン名です。REALM は、EXAMPLE.COM のような大文字の Kerberos レルム名です。

ドメインへの参加

SSSD は、Active Directory を ID プロバイダーとして使用し、Kerberos を認証に使用するように構成する必要があります。ただし、SSSD はドメインへの参加やシステムキータブファイルの管理のための AD クライアント機能を提供しません。代わりに、adclirealmd、または Samba を使用できます。

注:

このセクションでは、adcliSamba の情報のみを提供します。

  • adcli を使用してドメインに参加する場合は、次の手順を実行します。
  1. adcli をインストールします。

    sudo apt-get install adcli
    <!--NeedCopy-->
    
  2. adcli を使用してドメインに参加します。

    古いシステムキータブファイルを削除し、次を使用してドメインに参加します。

    su -
    
    rm -rf /etc/krb5.keytab
    
    adcli join domain-dns-name -U user -H hostname-fqdn
    <!--NeedCopy-->
    

    user は、ドメインにマシンを追加する権限を持つドメインユーザーです。hostname-fqdn は、マシンの FQDN 形式のホスト名です。

    -H オプションは、Linux VDA が必要とする host/hostname-fqdn@REALM 形式で SPN を生成するために adcli にとって必要です。

  3. ドメインメンバーシップを確認します。

    Ubuntu 22.04 および Ubuntu 20.04 マシンでは、adcli testjoin コマンドを実行して、マシンがドメインに参加しているかどうかをテストします。

  • Samba を使用してドメインに参加する場合は、次の手順を実行します。
  1. パッケージをインストールします。

    sudo apt-get install samba krb5-user
    <!--NeedCopy-->
    
  2. Samba を構成します。

  • /etc/samba/smb.conf を開き、次の設定を行います。

  • [global]

    workgroup = WORKGROUP

    security = ADS

    realm = REALM

    client signing = yes

    client use spnego = yes

    kerberos method = secrets and keytab

    WORKGROUPREALM の最初のフィールドであり、REALM は大文字の Kerberos レルム名です。

  1. Samba を使用してドメインに参加します。

    ドメインコントローラーに到達可能であり、ドメインにコンピューターを追加する権限を持つ Windows アカウントが必要です。

    sudo net ads join REALM -U user
    <!--NeedCopy-->
    

    ここで、REALM は大文字の Kerberos レルム名であり、user はドメインにコンピューターを追加する権限を持つドメインユーザーです。

  • SSSD のセットアップ

  • 必要なパッケージのインストールまたは更新:

  • 必要な SSSD および構成パッケージがまだインストールされていない場合は、インストールします。
sudo apt-get install sssd
<!--NeedCopy-->
  • パッケージがすでにインストールされている場合は、更新をお勧めします。
-  sudo apt-get install --only-upgrade sssd
<!--NeedCopy-->

注:

デフォルトでは、Ubuntu のインストールプロセスは nsswitch.conf と PAM ログインモジュールを自動的に構成します。

SSSD の構成

SSSD デーモンを開始する前に、SSSD 構成の変更が必要です。SSSD の一部のバージョンでは、/etc/sssd/sssd.conf 構成ファイルはデフォルトでインストールされておらず、手動で作成する必要があります。root として、/etc/sssd/sssd.conf を作成または開き、次の設定を行います。

[sssd]

services = nss, pam

config_file_version = 2

domains = domain-dns-name

[domain/domain-dns-name]`

id_provider = ad

access_provider = ad

auth_provider = krb5

krb5_realm = REALM

# Set krb5_renewable_lifetime higher if TGT renew lifetime is longer than 14 days

krb5_renewable_lifetime = 14d

# Set krb5_renew_interval to lower value if TGT ticket lifetime is shorter than 2 hours

krb5_renew_interval = 1h

krb5_ccachedir = /tmp

krb5_ccname_template = FILE:%d/krb5cc_%U

# This ldap_id_mapping setting is also the default value

ldap_id_mapping = true

override_homedir = /home/%d/%u

default_shell = /bin/bash

ad_gpo_map_remote_interactive = +ctxhdx

注記:

ldap_id_mappingtrue に設定されているため、SSSD 自体が Windows SID を Unix UID にマッピングします。そうでない場合、Active Directory は POSIX 拡張機能を提供できる必要があります。PAM サービス ctxhdxad_gpo_map_remote_interactive に追加されます。

このコンテキストにおける domain-dns-name パラメーターは、たとえば example.com のような DNS ドメイン名です。REALM は、たとえば EXAMPLE.COM のような大文字の Kerberos レルム名です。NetBIOS ドメイン名を設定する必要はありません。

構成設定の詳細については、sssd.conf および sssd-ad の man ページを参照してください。

SSSD デーモンは、構成ファイルが所有者による読み取り権限のみを持つことを要求します。

sudo chmod 0600 /etc/sssd/sssd.conf
<!--NeedCopy-->

SSSD デーモンの開始

SSSD デーモンを今すぐ開始し、マシンの起動時にデーモンが開始されるようにするには、次のコマンドを実行します。

sudo systemctl start sssd

sudo systemctl enable sssd
<!--NeedCopy-->

PAM の構成

次のコマンドを実行し、SSS 認証ログイン時にホームディレクトリを作成オプションが選択されていることを確認します。

sudo pam-auth-update
<!--NeedCopy-->

ドメインメンバーシップの確認

Delivery Controller は、すべての VDA マシン (Windows および Linux VDA) が Active Directory にコンピューターオブジェクトを持つことを要求します。

  • adcli を使用してドメインメンバーシップを確認する場合は、sudo adcli info domain-dns-name コマンドを実行してドメイン情報を表示します。

  • Samba を使用してドメインメンバーシップを確認する場合は、sudo net ads testjoin コマンドを実行してマシンがドメインに参加していることを確認し、sudo net ads info コマンドを実行して追加のドメインおよびコンピューターオブジェクト情報を確認します。

Kerberos 構成の確認

Kerberos が Linux VDA で使用するために正しく構成されていることを確認するには、システム keytab ファイルが作成され、有効なキーが含まれていることを確認します。

sudo klist -ke
<!--NeedCopy-->

このコマンドは、プリンシパル名と暗号スイートのさまざまな組み合わせで利用可能なキーのリストを表示します。Kerberos kinit コマンドを実行して、これらのキーを使用してマシンをドメインコントローラーで認証します。

sudo kinit -k MACHINE\$@REALM
<!--NeedCopy-->

マシン名とレルム名は大文字で指定する必要があります。ドル記号 ($) は、シェル置換を防ぐためにバックスラッシュ (\) でエスケープする必要があります。一部の環境では、DNS ドメイン名が Kerberos レルム名と異なる場合があります。レルム名が使用されていることを確認してください。このコマンドが成功した場合、出力は表示されません。

マシンアカウントの TGT がキャッシュされていることを確認するには、次を使用します。

sudo klist
<!--NeedCopy-->
-  #### ユーザー認証の確認

SSSD は、デーモンと直接認証をテストするためのコマンドラインツールを提供しておらず、PAM を介してのみ実行できます。

SSSD PAM モジュールが正しく構成されていることを確認するには、以前に使用したことのないドメインユーザーアカウントを使用して Linux VDA にログオンします。

ssh localhost -l domain\\username

id -u

klist

-  exit
<!--NeedCopy-->

klist コマンドによって返された Kerberos チケットがそのユーザーに対して正しく、期限切れになっていないことを確認します。

root ユーザーとして、以前の id -u コマンドによって返された UID に対応するチケットキャッシュファイルが作成されたことを確認します。

ls /tmp/krb5cc_uid
<!--NeedCopy-->

同様のテストは、KDE または Gnome Display Manager にログオンすることによって実行できます。ドメイン参加の確認後、ステップ 6: Linux VDA のインストールに進みます。

PBIS

必要な PBIS パッケージのダウンロード

sudo wget https://github.com/BeyondTrust/pbis-open/releases/download/9.1.0/pbis-open-9.1.0.551.linux.x86_64.deb.sh
<!--NeedCopy-->

PBIS インストールスクリプトの実行可能化

sudo chmod +x pbis-open-9.1.0.551.linux.x86_64.deb.sh
<!--NeedCopy-->

PBIS インストールスクリプトの実行

sudo sh pbis-open-9.1.0.551.linux.x86_64.deb.sh
<!--NeedCopy-->

Windows ドメインへの参加

ドメインコントローラーに到達可能であり、コンピューターをドメインに追加する権限を持つ Active Directory ユーザーアカウントが必要です。

sudo /opt/pbis/bin/domainjoin-cli join domain-name user
<!--NeedCopy-->

user は、コンピューターを Active Directory ドメインに追加する権限を持つドメインユーザーです。domain-name は、たとえば example.com のようなドメインの DNS 名です。

注記: Bash をデフォルトシェルとして設定するには、sudo /opt/pbis/bin/config LoginShellTemplate/bin/bash コマンドを実行します。

ドメインメンバーシップの確認

Delivery Controller は、すべての VDA マシン (Windows および Linux VDA) が Active Directory にコンピューターオブジェクトを持つことを要求します。PBIS に参加している Linux マシンがドメイン上にあることを確認するには:

/opt/pbis/bin/domainjoin-cli query
<!--NeedCopy-->

マシンがドメインに参加している場合、このコマンドは現在参加している AD ドメインと OU に関する情報を返します。そうでない場合、ホスト名のみが表示されます。

ユーザー認証の確認

PBIS が PAM を介してドメインユーザーを認証できることを確認するには、以前に使用したことのないドメインユーザーアカウントを使用して Linux VDA にログオンします。

sudo ssh localhost -l domain\\user

id -u
<!--NeedCopy-->

id -u コマンドによって返された UID に対応する Kerberos 資格情報キャッシュファイルが作成されたことを確認します。

ls /tmp/krb5cc_uid
<!--NeedCopy-->

セッションを終了します。

exit
<!--NeedCopy-->

ドメイン参加の検証後、手順 6:Linux VDA のインストールに進みます。

手順 4:.NET のインストール

.NET Runtime に加えて、Linux VDA をインストールまたはアップグレードする前に、サポートされているすべての Linux ディストリビューションに .ASP.NET Core Runtime をインストールする必要があります。Amazon Linux 2 にはバージョン 6 が必要です。その他のディストリビューションにはバージョン 8 が必要です。

お使いの Linux ディストリビューションに必要な .NET バージョンが含まれている場合は、組み込みのフィードからインストールします。そうでない場合は、Microsoft パッケージフィードから .NET をインストールします。詳しくは、https://docs.microsoft.com/en-us/dotnet/core/install/linux-package-managers を参照してください。

.NET のインストール後、which dotnet コマンドを実行してランタイムパスを見つけます。

コマンド出力に基づいて、.NET ランタイムバイナリパスを設定します。たとえば、コマンド出力が /aa/bb/dotnet の場合、/aa/bb を .NET バイナリパスとして使用します。

手順 5:Linux VDA パッケージのダウンロード

  1. Citrix Virtual Apps and Desktops ダウンロードページにアクセスします。
  2. Citrix Virtual Apps and Desktops の適切なバージョンを展開します。
  3. コンポーネントを展開して 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 パッケージの整合性を検証するには、次のコマンドを実行して公開鍵を DEB データベースにインポートし、パッケージの整合性を確認します。

    sudo apt-get install dpkg-sig
    gpg --import <path to the public key>
    dpkg-sig --verify <path to the Linux VDA package>
    <!--NeedCopy-->
    

手順 6:Linux VDA のインストール

手順 6a:Linux VDA のインストール

Debian パッケージマネージャーを使用して Linux VDA ソフトウェアをインストールします。

sudo dpkg –i <PATH>/<Linux VDA DEB>
apt-get install -f
<!--NeedCopy-->

注:

GCP 上の Ubuntu 24.04、Ubuntu 22.04、および Ubuntu 20.04 の場合、RDNS を無効にします。これを行うには、/etc/krb5.conf の [libdefaults] の下に rdns = false の行を追加します。

Ubuntu 24.04 の Debian 依存関係リスト:

openjdk-17-jdk >= 17
imagemagick >= 8:6.9.12
libgtkmm-3.0-1t64 >= 3.24.9
ufw >= 0.36
ubuntu-desktop >= 1.539
libxrandr2 >= 2:1.5.2
libxtst6 >= 2:1.2.3
libxm4 >= 2.3.8
util-linux >= 2.39
gtk3-nocsd >= 3
bash >= 5.2
findutils >= 4.9.0
sed >= 4.9
cups >= 2.4
libmspack0t64 >= 0.11
curl >= 8.5.0
libbsd-dev >= 0.12.1-1build1
ibus >= 1.5
libqt5dbus5 >= 5.15~
libgoogle-perftools4 >= 2.15
libpython3.12 >= 3.12~
libsasl2-modules-gssapi-mit >= 2.1.~
libnss3-tools >= 2:3.98
libqt5widgets5 >= 5.15~
libqrencode4 >= 4.1.1
libimlib2 >= 1.12.1
libfuse2 >= 2.9
mutter >= 46.0
pulseaudio-utils >= 16.1
<!--NeedCopy-->

Ubuntu 22.04 の Debian 依存関係リスト:

openjdk-17-jdk >= 17
imagemagick >= 8:6.9.11
libgtkmm-3.0-1v5 >= 3.24.5
ufw >= 0.36
ubuntu-desktop >= 1.481
libxrandr2 >= 2:1.5.2
libxtst6 >= 2:1.2.3
libxm4 >= 2.3.8
util-linux >= 2.37
gtk3-nocsd >= 3
bash >= 5.1
findutils >= 4.8.0
sed >= 4.8
cups >= 2.4
libmspack0 >= 0.10
ibus >= 1.5
libqt5dbus5 >= 5.15~
libgoogle-perftools4    2.9~
libpython3.10 >= 3.10~
libsasl2-modules-gssapi-mit >= 2.1.~
libnss3-tools >= 2:3.68
libqt5widgets5 >= 5.15~
libqrencode4 >= 4.1.1
libimlib2 >= 1.7.4
libfuse2 >= 2.9
mutter >= 42.5
<!--NeedCopy-->

Ubuntu 20.04 の Debian 依存関係リスト:

openjdk-17-jdk >= 17
imagemagick >= 8:6.9.10
libgtkmm-3.0-1v5 >= 3.24.2
ufw >= 0.36
ubuntu-desktop >= 1.450
libxrandr2 >= 2:1.5.2
libxtst6 >= 2:1.2.3
libxm4 >= 2.3.8
util-linux >= 2.34
gtk3-nocsd >= 3
bash >= 5.0
findutils >= 4.7.0
sed >= 4.7
cups >= 2.3
libmspack0 >= 0.10
ibus >= 1.5
libqt5dbus5 >= 5.7~
libgoogle-perftools4 >= 2.7~
libpython3.8 >= 3.8~
libsasl2-modules-gssapi-mit >= 2.1.~
libnss3-tools >= 2:3.49
libqt5widgets5 >= 5.7~
libqrencode4 >= 4.0.0
libimlib2 >= 1.6.1
libfuse2 >= 2.9
<!--NeedCopy-->

注:

このバージョンの Linux VDA がサポートする Linux ディストリビューションと Xorg バージョンのマトリックスについては、システム要件を参照してください。

手順 6b:Linux VDA のアップグレード(オプション)

Linux VDA は、最新バージョンからのアップグレードをサポートしています。たとえば、Linux VDA を 2308 から 2311 へ、および 1912 LTSR から 2203 LTSR へアップグレードできます。

sudo dpkg -i <PATH>/<Linux VDA deb>

sudo apt-get install -f
<!--NeedCopy-->

注:

  • 既存のインストールをアップグレードすると、/etc/xdl の下の構成ファイルが上書きされます。アップグレードを実行する前に、ファイルをバックアップしてください。

  • 2407 リリース以降、Linux VDA は、アップグレード中の構成ファイルの処理をパッケージマネージャーの rpm または dpkg に委任します。以下に、rpm と dpkg が構成ファイルの変更とどのように相互作用するかを説明します。

    • rpm:デフォルトではローカルバージョンを保持し、パッケージからの新しいバージョンを .rpmnew 拡張子で保存します。

    • dpkg:続行方法の選択を対話形式で求めます。ローカル構成ファイルを保持し、新しいパッケージバージョンを .dpkg-new または .dpkg-dist として保存しながら Linux VDA をサイレントアップグレードするには、次のコマンドを使用します。

       dpkg --force-confold -i package.deb  # Always keep your version, then save new package's version as *.dpkg-new or *.dpkg-dist
       <!--NeedCopy-->
      

手順 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 ドライバー(クラウドベンダーまたは NVIDIA から)を VM にインストールします。

手順 8:Linux VDA の構成

注:

ランタイム環境をセットアップする前に、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 コマンドを実行します。

パッケージのインストール後、ctxsetup.sh スクリプトを実行して Linux VDA を構成する必要があります。変更を加える前に、スクリプトは環境を検証し、すべての依存関係がインストールされていることを確認します。必要に応じて、いつでもスクリプトを再実行して設定を変更できます。

スクリプトは、プロンプトに従って手動で実行することも、事前構成された応答で自動的に実行することもできます。続行する前に、スクリプトに関するヘルプを確認してください。

sudo /opt/Citrix/VDA/sbin/ctxsetup.sh --help
<!--NeedCopy-->

プロンプトによる構成

プロンプトによる手動構成を実行します。

sudo /opt/Citrix/VDA/sbin/ctxsetup.sh
<!--NeedCopy-->

自動構成

自動インストールの場合、セットアップスクリプトで必要なオプションは環境変数で指定できます。必要なすべての変数が存在する場合、スクリプトはユーザーに情報を求めず、スクリプトによるインストールプロセスを可能にします。

サポートされている環境変数には以下が含まれます。

  • CTX_XDL_NON_DOMAIN_JOINED=’y|n’ – マシンをドメインに参加させるかどうか。 デフォルト値は ‘n’ です。ドメイン参加シナリオの場合は ‘n’ に設定します。

  • CTX_XDL_AD_INTEGRATION=’winbind|sssd|centrify|pbis|quest’ – Linux VDA は、Delivery Controller で認証するために Kerberos 構成設定を必要とします。Kerberos 構成は、システムにインストールおよび構成されている Active Directory 統合ツールから決定されます。

    • CTX_XDL_DDC_LIST=’<list-ddc-fqdns>‘ – Linux VDA は、Delivery Controller への登録に使用する Delivery Controller の完全修飾ドメイン名(FQDN)のスペース区切りリストを必要とします。少なくとも 1 つの FQDN または CNAME を指定する必要があります。

    • 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/kde/mate/xfce/’<none>‘ – セッションで使用する GNOME、GNOME Classic、KDE、MATE、または Xfce デスクトップ環境を指定します。これを ‘<none>‘ に設定すると、VDA で構成されているデフォルトのデスクトップが使用されます。

    コマンドを実行するか、システムトレイを使用することで、デスクトップ環境を切り替えることもできます。詳しくは、「デスクトップ切り替えコマンド」および「システムトレイ」を参照してください。

  • 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 と通信することを示します。

  • CTX_XDL_SITE_NAME=<dns-name> – Linux VDA が DNS を介して LDAP サーバーを検出することを示します。DNS 検索結果をローカルサイトに制限するには、DNS サイト名を指定します。不要な場合は、‘<none>‘ に設定します。

  • CTX_XDL_LDAP_LIST=’<list-ldap-servers>‘ – Linux VDA が DNS を照会して LDAP サーバーを検出することを示します。DNS が LDAP サービスレコードを提供できない場合は、LDAP ポートを含む LDAP FQDN のスペース区切りリストを指定できます。たとえば、ad1.mycompany.com:389 ad2.mycompany.com:3268 ad3.mycompany.com:3268 のように指定します。Active Directory フォレスト内で 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_SUPPORT_DDC_AS_CNAME=’y|n’ – Linux VDA が DNS CNAME レコードを使用して Delivery Controller 名を指定することをサポートすることを示します。

環境変数を設定し、構成スクリプトを実行します。

export CTX_XDL_NON_DOMAIN_JOINED='n'
export CTX_XDL_AD_INTEGRATION=sssd|winbind|centrify|pbis|quest
export CTX_XDL_DDC_LIST='<list-ddc-fqdns>'
export CTX_XDL_VDI_MODE='y|n'
export CTX_XDL_HDX_3D_PRO='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_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>'
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_SUPPORT_DDC_AS_CNAME='y|n'
sudo -E /opt/Citrix/VDA/sbin/ctxsetup.sh --silent
<!--NeedCopy-->

sudo コマンドを実行するときは、既存の環境変数を新しく作成されるシェルに渡すために -E オプションを入力します。上記のコマンドから、最初の行に #!/bin/bash を含むシェルスクリプトファイルを作成することをお勧めします。

または、単一のコマンドを使用してすべてのパラメーターを指定することもできます。

sudo CTX_XDL_NON_DOMAIN_JOINED='n' \
CTX_XDL_AD_INTEGRATION=sssd|winbind|centrify|pbis|quest \
CTX_XDL_DDC_LIST='<list-ddc-fqdns>' \
CTX_XDL_VDI_MODE='y|n' \
CTX_XDL_HDX_3D_PRO='y|n' \
CTX_XDL_START_SERVICE='y|n' \
CTX_XDL_REGISTER_SERVICE='y|n' \
CTX_XDL_ADD_FIREWALL_RULES='y|n' \
CTX_XDL_DESKTOP_ENVIRONMENT=gnome|gnome-classic|kde|mate|xfce|'<none>' \
CTX_XDL_DOTNET_RUNTIME_PATH='<path-to-install-dotnet-runtime>' \
CTX_XDL_VDA_PORT='<port-number>' \
CTX_XDL_SITE_NAME='<dns-site-name>'|'<none>' \
CTX_XDL_LDAP_LIST='<list-ldap-servers>'|'<none>' \
CTX_XDL_SEARCH_BASE='<search-base-set>'|'<none>' \
CTX_XDL_SUPPORT_DDC_AS_CNAME='y|n' \
/opt/Citrix/VDA/sbin/ctxsetup.sh --silent
<!--NeedCopy-->

構成変更の削除

シナリオによっては、Linux VDA パッケージをアンインストールせずに、ctxsetup.sh スクリプトによって行われた構成変更を削除する必要がある場合があります。

続行する前に、このスクリプトに関するヘルプを確認してください。

sudo /opt/Citrix/VDA/sbin/ctxcleanup.sh --help
<!--NeedCopy-->

構成変更を削除するには:

sudo /opt/Citrix/VDA/sbin/ctxcleanup.sh
<!--NeedCopy-->

重要:

このスクリプトは、データベースからすべての構成データを削除し、Linux VDA を動作不能にします。

構成ログ

ctxsetup.sh および ctxcleanup.sh スクリプトは、コンソールにエラーを表示し、追加情報は構成ログファイル /tmp/xdl.configure.log に書き込まれます。

変更を有効にするには、Linux VDA サービスを再起動します。

Linux VDA ソフトウェアのアンインストール

Linux VDA がインストールされているかどうかを確認し、インストールされているパッケージのバージョンを表示するには:

dpkg -l xendesktopvda
<!--NeedCopy-->

詳細情報を表示するには:

apt-cache show xendesktopvda
<!--NeedCopy-->

Linux VDA ソフトウェアをアンインストールするには:

dpkg -r xendesktopvda
<!--NeedCopy-->

注:

Linux VDA ソフトウェアをアンインストールすると、関連する PostgreSQL およびその他の構成データが削除されます。ただし、Linux VDA のインストール前にセットアップされた PostgreSQL パッケージおよびその他の依存パッケージは削除されません。

ヒント:

このセクションの情報には、PostgreSQL を含む依存パッケージの削除は含まれていません。

ステップ 9:XDPing の実行

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

ステップ 10:Linux VDA の実行

ctxsetup.sh スクリプトを使用して Linux VDA を構成したら、以下のコマンドを使用して Linux VDA を制御します。

Linux VDA の開始:

Linux VDA サービスを開始するには:

sudo systemctl start ctxhdx

sudo systemctl start ctxvda
<!--NeedCopy-->

Linux VDA の停止:

Linux VDA サービスを停止するには:

sudo systemctl stop ctxvda

sudo systemctl stop ctxhdx
<!--NeedCopy-->

注:

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

Linux VDA の再起動:

Linux VDA サービスを再起動するには:

sudo systemctl stop ctxvda

sudo systemctl restart ctxhdx

sudo systemctl restart ctxvda
<!--NeedCopy-->

Linux VDA のステータスの確認:

Linux VDA サービスの実行ステータスを確認するには:

sudo systemctl status ctxvda

sudo systemctl status ctxhdx
<!--NeedCopy-->

ステップ 11:マシンカタログの作成

マシンカタログを作成し、Linux VDA マシンを追加するプロセスは、従来の Windows VDA のアプローチと似ています。これらのタスクを完了する方法の詳細については、「マシンカタログの作成」および「マシンカタログの管理」を参照してください。

Linux VDA マシンを含むマシンカタログを作成する場合、Windows VDA マシン用のマシンカタログを作成するプロセスとは異なるいくつかの制限があります。

  • オペレーティングシステムについては、以下を選択します。
  • ホスト型共有デスクトップ配信モデルの場合は、Multi-session OS オプション。
  • VDI 専用デスクトップ配信モデルの場合は、Single-session 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 マシンを含むマシンカタログと混在させないでください。

マシンカタログとデリバリーグループの作成方法については、「Citrix Virtual Apps and Desktops 7 2411」を参照してください。

Ubuntu に Linux VDA を手動でインストール

この記事の概要