Linux Virtual Delivery Agent

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 に設定します。

    1. ctxsetup.sh を実行します。
  • 注:

  • PostgreSQL のポート番号を設定するには、/etc/xdl/db.conf も使用できます。

ステップ 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-->

ステップ 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 を開き、以下の設定を行います。

注:

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

[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レルム名です。

Winbind認証の構成

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

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

[global]

workgroup = WORKGROUP

security = ADS

realm = 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 authentication および Create home directory on login オプションが選択されていることを確認します。

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構成の検証

KerberosがLinux VDAで使用するために正しく構成されていることを確認するには、システム 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の構成

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

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

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

  1. Active Directoryユーザーとコンピューター管理コンソールで、そのユーザーアカウントのActive Directoryユーザープロパティを開きます。
  2. Unixアカウントタブを選択します。
  3. Unix対応をチェックします。
  4. プライマリGID番号を実際のドメインユーザーグループのグループ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を開き、パラメーターを設定します。

注:

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

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

注:

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

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

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

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

    
    -  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 マシンの場合、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

# TGT更新ライフタイムが14日を超える場合は、krb5_renewable_lifetimeを高く設定します

krb5_renewable_lifetime = 14d

# TGTチケットライフタイムが2時間未満の場合は、krb5_renew_intervalを低い値に設定します

krb5_renew_interval = 1h

krb5_ccachedir = /tmp

krb5_ccname_template = FILE:%d/krb5cc_%U

# このldap_id_mapping設定はデフォルト値でもあります

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サービス ctxhdx が ad_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 VDAおよびLinux VDA)が Active Directory にコンピューターオブジェクトを持つことを要求します。

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

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

Kerberos構成の確認

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

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 VDAおよび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 が必要です。

必要な .NET バージョンが Linux ディストリビューションに含まれている場合は、組み込みのフィードからインストールします。そうでない場合は、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. [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 パッケージの整合性を検証するには、次のコマンドを実行して公開キーを 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/22.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-->

注:

このバージョンの 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  # 常に自分のバージョンを保持し、新しいパッケージのバージョンを *.dpkg-new または *.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 – .NETをインストールするためのパス。新しいブローカーエージェントサービス (ctxvda) をサポートします。デフォルトのパスは ‘/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 2503 を参照してください。

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

この記事の概要