知识库

安装 Tableau Server 时出现“Service 'tablicsrv' failed to start”、“No license found for Tableau Server”或“Tableau Server is unlicensed”错误


发布时间: 31 Mar 2016
上次修改日期: 12 May 2020

问题

安装 Tableau Server 时,TSM 可能会反映没有已激活密钥,并且在激活许可证或启动 tablicsrv 时可能会出现以下错误之一:

No license found for Tableau Server or No specified license found.(找不到 Tableau Server 的许可证或找不到指定许可证。)
或者:
Tableau Server is unlicensed. An administrator must run manage product keys.(Tableau Server 未获得许可。管理员必须运行“管理产品密钥”。)
或者:
“Service 'tablicsrv' failed to start (state 1)(服务 'tablicsrv' 无法启动(状态 1))”
或者:
Unable to start service 'tablicsrv':(5) Access is denied(无法启动服务 'tablicsrv':(5) 拒绝访问)
或者:
service on Local Computer started and then stopped. Some services stop automatically if they are not in use by other services or programs.(本地计算机上的服务已启动,然后停止。某些服务如果未被其他服务或程序所使用,则会自动停止。)

环境

Tableau Server

解决方案

验证和更新权限

在某些组织中,会使用组策略或其他系统管理解决方案对应用程序服务器上的权限和帐户进行标准化。如果组织运行此类解决方案,请确保配置系统以适应运行身份服务帐户所需的文件夹权限。如果更改了运行身份服务帐户的文件夹权限,您可以使用 TSM 来重新应用权限。请参见将现有域运行身份服务帐户更改为其他帐户

您可以导航到 Tableau Server 安装目录 (%PROGRAMDATA%\Tableau\Tableau Server),然后打开“属性”>“安全性”,以验证您的组织是否正在从安装目录中删除用户组。如果没有列出该用户组,那么您需要更新权限。

由于许多组织在启动期间使用更改管理解决方案删除用户组,所以只是将用户组添加回 Tableau Server 安装目录不是最佳做法。

而是应该使用 Windows icacls  命令将 Tableau Server 安装目录上的权限应用于本地服务。

若要应用权限,请执行以下操作:

  1. 以管理员身份登录到运行 Tableau Server 的计算机。

  2. 打开命令提示符并运行以下命令:

    icacls “%PROGRAMDATA%\Tableau\Tableau Server” /reset

    此命令会重置权限,并在安装目录上启用继承。

    icacls “%PROGRAMDATA%\Tableau\Tableau Server” /grant *S-1-5-19:(OI)(CI)F /T

    此命令向本地服务帐户授予显式权限,此处由全局安全标识符 *S-1-5-19 来表示该帐户。

  3. 重新启动 Tableau Server 许可证管理器(在某些环境中,需要重新启动整个计算机才能使权限生效)。

如果您希望使用 Windows 文件夹属性设置权限,请按以下步骤进行操作:
  1. 请检查 Tableau Server bin 目录和日志目录的权限。
    如果使用默认 Windows 程序和数据路径安装了 Tableau Server,则要检查的文件夹是:
    • C:\ProgramData\Tableau\Tableau Server\logs
    • C:\Program Files\Tableau\Tableau Server\bin

      如果已将 Tableau Server 安装到自定义路径,则日志和 bin 文件夹都将位于安装目录的根目录中。有关文件夹权限的详细信息,请参见联机帮助
  2. 确保存在具有“读取和执行”、“列出文件夹内容”和“读取”权限的内置用户组或本地帐户。
  3. 单击“高级”并检查特殊权限,确保选择“创建文件/写入数据”。“高级权限”窗口的屏幕截图

原因

后台

从 Tableau Server 9.3 开始,对 Tableau Server 许可证管理器 (tablicsrv) 配置进行了更改。在以前的版本中,tablicsrv.exe 是在 NT AUTHORITY\Local System 的安全上下文(登录值)下运行的,这是创建新 Windows 服务时的默认运行身份帐户。本地系统具有的访问权限比许可证管理器正常运行所需的访问权限大,因此用户运行身份已更改为更受限制的 NT AUTHORITY\Local 帐户。许可证管理器使用本地服务帐户访问和执行位于 Tableau Server 安装目录 (%PROGRAMDATA%\Tableau\Tableau Server) 下的文件,并写入 tablicsrv.log 文件。这些操作依赖于通过 Tableau Server 安装目录上的用户安全组继承的权限。

“Tableau Server 属性”窗口的图像,其中已选中“读取和执行”、“列出文件夹内容”、“读取”和“特殊权限”

如上所示,会向用户安全组授予以下权限(本地服务继承了所有这些权限):

  • 读取和执行
  • 列出文件夹内容
  • 读取
  • 特殊权限(创建文件/写入数据)

如果本地服务没有这些权限,则 Tableau Server 在安装期间将无法初始化,从而会产生上面的错误。

为什么本地服务没有正确的权限?

作为一项安全措施,某些组织会从其环境中的所有安装目录中删除用户组。通常,此类组织使用自动更改管理软件解决方案(例如组策略)来删除用户组。

其他信息

验证管理服务和许可证服务是否正在运行。

许可证管理器依赖于应用于本地服务的默认 Windows 文件夹权限。在更安全的环境中,您可以修改 Tableau 安装目录的权限。否则,可能会遇到许可错误。有关进一步的信息,请参见验证 Tableau 服务设置联机帮助。

有关在 Windows 中设置文件夹权限的详细信息,请参见 Microsoft Technet 上和 Tableau 产品帮助中的以下文章:


讨论本文... 反馈论坛
此文章是否已解决问题?