如何重置企业中的“许可证管理器”

本文的发布号曾为 CHS194065
本文已归档。它按“原样”提供,并且不再更新。
概要
本文是 Microsoft Knowledge Base 中以下文章的附录:

153140如何重置“许可证管理器”的信息
完全重置企业中“许可证管理器”的信息可能不但需要删除主域控制器 (PDC) 或“企业服务器”上的相关文件,实际上还要删除涉及许可证复制的“每个”服务器上的许可证服务文件。

联合用 Windows NT Server 4.0 资源工具包中的 NETDOM、NETSVC 和 REG 工具一起编写的一个批处理文件,将自动地发现参与许可证复制的所有服务器,然后通过迭代,停止“许可证登录服务”(LLS),删除相关的 LLS 文件,重新启动服务,并且排队等待立即发生的 LLS 复制。在企业环境下,这将能够显著地减少完成这种任务时涉及的工作量。
更多信息
以下是批处理文件如何处理工作的概述。其中涵盖了所有的文件。批处理过程是通过在命令提示符下运行 Restart.bat 开始的。

请注意,此过程要求使用 Windows NT Server 4.0 资源工具包中的以下工具:

  • Netdom.exe
  • Netsvc.exe
  • Reg.exe
以下是事件序列:

  1. 用户在命令提示符下运行 RESTART 重新启动“许可证登录服务”。
  2. Restart.bat 调用 NETDOM,并在域中创建包含所有 PDC、BDC 和成员服务器列表的文本文件。
  3. 通过这个生成列表进行迭代,Restart.bat 运行以下步骤:

    1. 停止域中所有服务器上的 LLS 服务。
    2. 如果要删除,则删除 3 个相关的 LLS 文件 (Cpl.cfg、Llsuser.lls 和 Llsmap.lls)。
    3. 重新启动域中所有服务器上的 LLS 服务。
    4. 安排每台服务器上、下一个 5 分钟中之内的 LLS 复制时间表。
  4. LLS 复制发生后,应当运行另一个批处理文件 Llsrtime.bat,将所有服务器重置为 LLS 复制的默认设置,其复制周期是 24 个小时。

批处理文件文本



Restart.Bat



 echo off cls if (%1)==() goto NoParams echo Creating list of domain controllers, please wait. netdom bdc | find "Found PDC " > pdc.txt netdom /noverbose bdc > netdom.txt netdom /noverbose member > netmember.txt rem Stop LLS on all Servers.... Echo Stopping License Logging Service on all servers.  Please wait. for /F "tokens=3" %%a in (pdc.txt) do call stop.bat %%a %1 for /F "tokens=1" %%a in (netdom.txt) do call stop.bat %%a %1 for /F "tokens=1" %%a in (netmember.txt) do call stop.bat %%a %1 Echo Done stopping services. Echo. rem Delete LLS files on all servers Echo Deleting LLS configuration files on all domain controllers. Please  wait. for /F "tokens=3" %%a in (pdc.txt) do call dellls.bat %%a for /F "tokens=1" %%a in (netdom.txt) do call dellls.bat %%a for /F "tokens=1" %%a in (netmember.txt) do call dellls.bat %%a Echo Done deleting LLS files. Echo. rem Start LLS on all servers Echo Starting LLS Service on all servers.  Please wait. for /F "tokens=3" %%a in (pdc.txt) do call start.bat %%a %1 for /F "tokens=1" %%a in (netdom.txt) do call start.bat %%a %1 for /F "tokens=1" %%a in (netmember.txt) do call start.bat %%a %1 Echo Done starting services. Echo. Echo Resetting replication time on all servers.  Please wait. for /F "tokens=3" %%a in (pdc.txt) do call sett.bat %%a %1 for /F "tokens=1" %%a in (netdom.txt) do call sett.bat %%a %1 for /F "tokens=1" %%a in (netmember.txt) do call sett.bat %%a %1 Echo Done stopping services. Echo. goto bottom echo --------- echo - Done! - echo --------- goto bottom :NoParams echo usage: RESTART "Service Name" echo. echo. i.e.- RESTART "License Logging Service" echo. :bottom

Restart2.Bat



 echo Stopping %2 on %1 netsvc %2 %1 /stop netsvc %2 %1 /start

Start.Bat



 echo Starting %2 on %1 netsvc %2 %1 /start

Stop.Bat



 echo Stopping %2 on %1 netsvc %2 %1 /stop

Dellls.Bat



 Echo Now deleting files on %1. if exist %1\admin$\system32\cpl.cfg del     %1\admin$\system32\cpl.cfg if exist %1\admin$\system32\lls\llsuser.lls del     %1\admin$\system32\lls\llsuser.lls if exist %1\admin$\system32\lls\llsmap.lls del     %1\admin$\system32\lls\llsmap.lls

(要换行,请单击回车键)

Sett.Bat



 echo Now setting LLS replication time on %1 reg update HKLM\SYSTEM\CurrentControlSet\      Services\LicenseService\Parameters\ReplicationTime=300 %1

Llsrtime.Bat



 rem reset replication period for LLS Echo Stopping LLS Service on all domain controllers.  Please wait. for /F "tokens=3" %%a in (pdc.txt) do call setb.bat %%a %1 for /F "tokens=1" %%a in (netdom.txt) do call setb.bat %%a %1 for /F "tokens=1" %%a in (netmember.txt) do call setb.bat %%a %1 Echo Done stopping services. Echo.

Setb.Bat



 echo Now setting LLS replication time on %1 reg update HKLM\SYSTEM\CurrentControlSet\      Services\LicenseService\Parameters\ReplicationTime=86400 %1
Q153140
属性

文章 ID:194065 - 上次审阅时间:12/05/2015 09:27:29 - 修订版本: 1.0

Microsoft Windows NT Server 4.0 Standard Edition

  • kbnosurvey kbarchive kbinfo KB194065
反馈