许可命令

虽然“许可证管理控制台”提供了访问许多许可功能的简单方法,但您也可以使用命令执行许可任务。在许可证服务器上执行在控制台中不可用的高级操作时,您可以使用许可证管理命令。这些操作包括使用 lmdiag 诊断签出问题。

许可证管理命令存储在:

  • C:\Program Files\Citrix\Licensing\LS(在 32 位计算机上)
  • C:\Program Files (x86)\Citrix\Licensing\LS(在 64 位计算机上)

命令表

实用程序 说明
lmadmin 提供许可配置。使用许可证管理控制台执行许可配置和管理任务。请勿使用 lmadmin。
lmver lmdiag 诊断许可证签出问题。
lmdown 正常关闭许可证管理器和 Citrix 供应商守护程序(默认情况下处于禁用状态)。
lmhostid 报告运行 Citrix Licensing 的服务器的主机 ID。
lmreread 使许可证管理器守护程序重读许可证文件并启动 Citrix 供应商守护程序。
lmstat 显示许可证服务器的状态。
lmutil 显示许可实用程序列表或执行其他命令。
lmver 显示许可二进制文件的版本信息。
udadmin 显示所有获许可的用户和设备以及删除指定的获许可用户和设备。此命令仅适用于用户/设备许可证。注意: 指定 udadmin -export 可导出产品使用情况,而非许可证列表。要获取许可证列表,请指定 udadmin -list

格式许可证命令

许可证管理命令的格式约定:

约定 说明  
  粗体 命令或开关,例如 lmstat。
  斜体 变量要替换为值。例如,在表达式中:lmstat-c license_file_list。在运行该命令之前,您必须使用一个或多个许可证文件的名称来替换 license_file_list。
  [方括号] 方括号内的文本表示这是可以添加到命令的选项,或是括号内的文本必须替换。

通用参数

大多数许可证管理命令的有效参数:

参数 说明
-all 将该命令应用于网络上的所有许可证服务器。
-c 用于指定许可证文件或许可证服务器端口和主机名。如果指定的路径中不包含许可证文件名,该命令将应用于目录中的所有许可证文件。对于本地主机:-c @localhost 对于远程许可证服务器:-c @servername 对于群集中的许可证服务器:-c @clientaccesspointname 对于指定路径:-c path 对于一个或多个许可证文件的名称:-c license_file_list 可以通过使用分号分隔每个路径来输入多个许可证文件路径。包含空格的路径名必须用双引号括起来。
-h 许可证句柄,如 lmstat -a 所报告。许可证句柄是用于标识签出的特定许可证的编号。
-help 显示使用情况信息并退出。
-s [server] 如果未指定 server,则显示该许可证服务器上或所有许可证服务器上列出的所有许可证文件的状态。
-verbose 显示发现的所有错误的详细说明。

诊断签出问题 (lmdiag)

当产品无法签出许可证时,使用 lmdiag 可以诊断问题。特别是可以测试许可证是否有效和许可证服务器是否正在运行。当运行此实用程序时,它会尝试签出许可证。

还可以使用 lmdiag 实用程序查看特定类型的许可证是否正在工作。例如,只需将 MPS_ADV_CCU 指定为参数,即可对 Citrix Virtual Apps 服务器高级版许可证运行 lmdiag。

语法:

lmdiag -c license_file_list [-n] [feature[:keyword=value]]

参数 说明
-c license_file_list 诊断指定的文件。也可以使用:-c @localhost 或 -c @server-name
-n 在非交互式模式下运行;lmdiag 在此模式下不提示提供任何输入。
feature 将反馈限制为指定的功能。
keyword=value 如果许可证文件针对特定功能包含多行,则结果会被限制为包含文本值的行。例如:lmdiag -c @localhost MPS_ENT_CCU:HOSTID=LICSERV01 尝试对包含主机 ID LICSERV01 的行进行签出。关键字是下列关键字之一:VERSION、HOSTID、EXPDATE、KEY、VENDOR_STRING 和 ISSUER

如果没有指定任何功能,则 lmdiag 会对列表的许可证文件中的所有功能进行操作。lmdiag 会显示有关许可证的信息,然后尝试签出每个许可证。如果签出成功,则 lmdiag 会指明签出已成功。如果签出失败,lmdiag 将向您提供失败的原因。lmdiag 尝试连接到许可证服务器上的每个 TCP/IP 端口。它将检测许可证文件中的端口号是否正确。lmdiag 会列出正在监听的每个 TCP/IP 端口号,并且如果指定了 -c license_file_list,则会诊断指定的文件。

尝试签出许可证时,lmdiag 不联系运行 Citrix 产品的计算机。lmdiag 仅指示许可证服务器上是否存在问题。即,由于产品指向错误的许可证服务器,因此产品无法签出许可证,但 lmdiag 不会检测此问题。例如,许可证服务器上没有此产品的许可证。当 Citrix 产品指向错误的许可证服务器时,lmdiag 会报告其可以签出许可证。

停止守护程序 (lmdown)

lmdown 实用程序可关闭您的许可证服务器上或您网络中的所有许可证服务器上的许可证管理器守护程序和 Citrix 供应商守护程序,但默认情况下处于禁用状态。要启用该实用程序:

  1. 停止许可证服务。
  2. 运行 lmadmin - allowStopServer 和/或 -allowRemoteStop Server。
  3. 重新启动许可证服务器。

语法:

lmdown -c license_file_list [-vendor CITRIX] [-q] [-all]

参数 说明
-c license_file_list、-c@localhost 或 -c@server 使用指定的许可证文件。建议在使用 lmdown 时始终指定 -c license_file_list。还可以使用:-c @localhost-c @server-name
-vendor CITRIX 仅关闭 Citrix 供应商守护程序。许可证管理器守护程序将继续运行。
-q 不提示或打印标题。否则 lmdown 会询问“Are you sure? [y/n]: .”
-all 如果指定了多个服务器,将自动关闭所有这些服务器。如果指定了 -all,则意味着系统会自动指定 -q。

必须在许可证服务器上运行 lmdown 实用程序。可以使用 -all 关闭网络中的所有许可证服务器。

如果 lmdown 遇到多个服务器(例如,如果 -c 指定了包含许多 *.lic 文件的目录)且未指定 -all,则该实用程序会显示用于关闭许可证服务器的选项。可以通过使用 -c 并指定许可证服务器的名称来关闭远程许可证服务器。

注意:

如果使用任务管理器来终止许可证管理器守护程序 (Citrix Licensing Service),,请首先停止 lmgrd 进程,然后停止 Citrix 供应商守护程序进程。

要仅停止并重新启动 Citrix 供应商守护程序,请使用 lmdown -c @localhost -vendor CITRIX,然后使用 lmreread -c @localhost -vendor CITRIX 重新启动供应商守护程序。

检查主机名 (lmhostid)

lmhostid 实用程序可以返回许可证服务器的主机 ID。可以使用该命令查看许可证服务器的主机名。可以打开许可证文件并将该许可证文件中的主机名与您的许可证服务器的主机名进行比较。

注意

使用 Citrix Licensing 版本 11.5 和更高版本可以显示多个主机 ID(如果存在多个主机)。

语法:

lmhostid -bindingidentifier

Argument (bindingidentifier) 说明
-ether 用于已绑定到设备 MAC 地址的产品许可证。
-internet 用于需要 TCP/IP 地址的、基于 Windows 的 Citrix 产品软件许可证。
-hostname 用于已绑定到许可证服务器的 hostname 的基于 Windows 的 Citrix 产品软件许可证。注意: 参数 hostname 区分大小写,并且必须与您的许可证服务器名称完全匹配。

重读许可证和选项文件 (lmreread)

lmreread 实用程序会使 Citrix 供应商守护程序重读对许可证文件和选项文件的更改。重读之后,Citrix 供应商守护程序会使用生效的新设置和/或许可证。

lmreread 不能远程使用;请在许可证服务器本地运行此命令。

语法:

lmreread -c license_file_list [-all] [-vendor CITRIX]

参数 说明
-c @localhost 或 -c license_file_list 使用指定的许可证文件。
-all 如果指定了多个 lmgrd,则指示所有许可证管理器守护程序进行重读。
-vendor CITRIX 指定此项可使 Citrix 供应商守护程序重新启动。

示例:

  • lmreread -c @localhost [-all]
  • lmreread -c @client_access_point_name
  • lmreread -c /opt/citrix/licensing/myfiles/CITRIX.lic -vendor CITRIX

显示 Licensing 实用程序列表 (lmutil)

lmutil 实用程序可在独立使用时显示 Licensing 实用程序列表。如果与其他命令一起指定 lmutil,则将执行该命令。

语法:

lmutil

lmutil other_command

示例:

  • lmutil

    显示所有 Licensing 实用程序。

  • lmutil lmstat -c @localhost

    执行 lmstat 命令。

确定许可状态 (lmstat)

lmstat 实用程序可帮助您监视所有网络许可活动的状态,并向您提供有关许可证签出的信息,包括:

  • 已签出一个或多个许可证的产品
  • 签出数据
  • 许可证文件的版本
  • 许可证服务器名称和端口
  • 签出许可证的日期
  • 有关 Citrix 供应商守护程序状态和许可证文件的信息

lmstat 显示从许可证服务器收到的信息。lmstat 只显示许可证的一种使用情况,即使有多个共享该许可证的连接,也是如此。

语法:

lmstat [-a] [-c license_file_list] [-f [feature]] [-i [feature] [-s[server] [-S [CITRIX]] [-t timeout_value]

参数 说明
-a 显示所有信息。
-c @localhost、-c@server 或 -c license_file_list 使用指定的许可证文件。
-f [feature] 显示使用功能(产品许可证)的产品。如果未指定 feature,则将显示所有功能的使用情况信息。
-i [feature] 如果未指定 *feature*,则将显示 INCREMENT 行中指定功能(产品许可证)或所有功能的信息。
-s [server] 如果未指定 *server*,则将显示该许可证服务器上或所有许可证服务器上列出的所有许可证文件的状态。
-S [CITRIX] 列出使用由 Citrix 供应商守护程序提供服务的功能(产品许可证)的所有产品服务器。
-t timeout_value 将连接超时设置为 timeout_value。此值将限制 lmstat 尝试连接到许可证服务器所花费的时间。

lmstat -c@localhost -a 的输出与此示例类似。由于屏幕空间的限制,此示例中的行可能会换行。

License server status: 27000@localhost

   License file(s) on localhost: C:\Program Files (x86)\Citrix\Licensing\MyFiles\citrix_startup.lic:C:\Program Files (x86)\Citrix\Licensing\MyFiles\License.lic:

   localhost: license server UP v11.15.0

   Vendor daemon status (on LicenseServer):

      CITRIX: UP v11.15.0

Feature usage info:

   Users of CITRIX: (Total of 10000 licenses issued; Total of 1 licenses in use)

   "CITRIX" v2038.0101, vendor: CITRIX, expiry: permanent(no expiration date)
vendor_string: ;LT=SYS;GP=720;SA=0
floating license

   XDT DDCPrinc-0001.citrix.com XDT XDT_PLT&MPS_PLT_2018.0518 (v1.0) (localhost/27000 102), start Tue 5/8 17:59

Users of CTXLSDIAG: (Total of 10000 licenses issued; Total of 0 licenses in use)

Users of XDT_PLT_CCS: (Total of 200000 licenses issued; Total of 3 licenses in use)

   "XDT_PLT_CCS" v2018.1201, vendor: CITRIX, expiry: 01-dec-2018
vendor_string: ;LT=Retail;GP=720;PSL=10;CL=VDS,VDA,VDE,VDP;SA=0;ODP=0;NUDURMIN=2880;NUDURMAX=525600
floating license

   XDT DDCAux-0001.citrix.com XDT 00001E3A (v2018.0518) (localhost/27000 534201), start Wed 5/9 15:17
   XDT DDCAux-0001.citrix.com XDT 00001E81 (v2018.0518) (localhost/27000 392504), start Wed 5/9 15:18
   XDT DDCAux-0001.citrix.com XDT 00001E0C (v2018.0518) (localhost/27000 419703), start Wed 5/9 15:18

以下各项代表 lmstat 输出的 MPS_ENT_CCU 行中所包含信息的细分:

    说明
MPS citrix_product_name 已签出许可证的 Citrix 产品的名称。
mps_server1 hostname 运行 Citrix 产品的计算机。
MPS display 已签出许可证的 Citrix 产品的名称。
license_server1 server_host 运行许可证服务器的计算机。
27000 port 运行许可证服务器的 TCP/IP 端口。
203 handle 许可证句柄。许可证句柄是用于标识签出的特定许可证的编号。
start Wed 3/17 11:56 checkout_time 第一次签出此许可证的时间。

lmstat -c@localhost -a 可能会在已签出许多产品许可证的系统中生成许多网络活动。

可以使用 lmstat -a 验证许可证签出数据。

显示二进制文件的版本 (lmver)

lmver 实用程序显示许可二进制的版本信息,如同命令实用程序一样。唯一的例外是 lmadmin 实用程序。要显示 lmadmin 实用程序的版本信息,请使用 lmadmin -version。

语法:

lmver binary

示例:

lmver lmdiag

显示或释放用户或设备的许可证 (udadmin)

udadmin 可显示获得许可的用户和设备,并且能够释放指定用户和设备的许可证。

只能在以下情况下释放用户的许可证:该员工已与公司脱离关系,或者该员工将缺席一段时间。只能在设备出现故障时释放设备的许可证。

警告:

在自动产生的 90 天租用期之前,除上面重点强调的原因外,大多数许可证版本可能都会违反 Citrix EULA。执行此操作之前,请联系 Citrix。

udadmin 命令行帮助仅以英文显示用法信息,但您可以在非英文系统中使用该命令。

语法:

udadmin [-options] [-delete -events -export -list -times]
选项 说明
-f 功能名称 与 -list 或 -delete 结合使用时,仅显示或释放指定功能名称对应的用户或设备的许可证。
-user 用户名 仅释放用户名所指定的用户的许可证。
-device 设备名称 仅释放设备名称所指定的设备的许可证。
-a 列出许可证服务器上安装的所有功能和版本。
参数 说明
-delete 一次释放一位用户、一种功能或一台设备的许可证。
-events 导出按时间顺序排序的每种功能对应的用户/设备许可记录的所有事件。
-export 将所有用户/设备数据导出到一个 .csv 文档中。第一行为列标题。格式为先功能后用户。每个独一无二的 (user,deviceId,versionRequested) 都在一行中报告。相同 (user,deviceid,versionRequested) 的冗余许可请求都不单独显示。最新的请求会更新时间戳。
-list 显示带许可证的用户和设备以及自上次更新后所经过的时间。如果自上次报告后 15 分钟内发生过重大活动,则将显示下次更新的时间。指定 -list -times 将生成包含时间戳的输出。
-times 指定 -list -times 将生成包含时间戳的输出。
无参数或 ? 显示 udadmin 命令的用法信息。

示例:

  • udadmin -list -times

    使用数据存在了 0 分钟。15 分钟内的下一次更新。

    用户:

    u01.01 XDT_ENT_UD 2017.1201 (Thu Sep 14 13:41:07 2017)

    u01.04 XDT_ENT_UD 2017.1201 (Thu Sep 14 13:41:07 2017) . . .

    设备:

    D.ADV.23 XDT_ADV_UD 2017.1201 (Thu Sep 21 18:31:01 2017)

    D01 XDT_PLT_UD 2017.1201 (Tue Sep 12 14:30:33 2017)

  • udadmin -list -a

    列出所有功能、版本、许可证数及每项功能的用户和设备。

  • udadmin -export

    feature,userId,deviceId,deviceName,versionRequested,versionUserAllocated,versionDeviceAllocated,time

  • udadmin -f XDT_ENT_UD -device dn01.88 -delete

    从一项功能中释放一台设备。