0

我设法在 Ubuntu 16.04 上安装了 STS 3.8.2 - 进行了大量的黑客实验。我有它的工作,但我对我的解决方案不满意。

这是我必须做的:

  1. 将 tar 文件解压缩到 /opt/sts-bundle。如果将它放在其他任何位置,例如 /opt/sts,TC 服务器将无法从 STS 启动。

  2. 使用 /opt/sts-bundle 中的文件,TC 服务器仍然无法从 STS 启动 - 权限错误。要让它工作,你需要使用 pivot-c-server 子目录的权限,基本上你需要打开你的组(运行 STS 的同一个)(安全漏洞?)。

  3. 在尝试备份所有 conf 文件时,您自己的 ~/sts-bundle 中的本地安装因“找不到文件”而失败。它仍然在 /opt/sts-bundle 中查找所有这些配置文件(只是将它们复制到 /backup)。您可以在 STS 服务器属性中更改服务器的顶级目录 - 但它仍会在 /opt/sts-bundle 中查找。似乎是硬编码的 - 不知道在哪里。因此,您必须在以 /opt/sts-bundle 为根的树中的 conf 目录中创建所有配置文件(“触摸”有效 - 创建空文件)。TC Server 仍然无法以“清理失败”错误启动 - 从详细消息中没有任何线索,哪些文件正在被“清理”。

  4. 我尝试根据 Pivotal TC Server 文档的建议创建一个非特权用户“tcserver”。我安装到 /opt/sts-bundle,同时以 tcserver 身份登录(具有 sudo 权限)。当我将 STS 用作不是“tcserver”的常规开发人员时,这将失败。无法弄清楚如何告诉 TC 服务器在与启动 STS 的用户不同的用户下运行。

  5. 我正在使用但我不满意的解决方案首先将 tar.gz 文件提取到 /opt/sts-bundle 中,如它所愿。然后将 sts-bundle 的所有者和组更改为我的 id 和我的组(与 STS UI 中使用的相同)。我对此并不满意。将属于单个开发人员的东西放在 /opt 中似乎是错误的。

我是 Linux 新手,我还有一些 Windows 习惯需要改掉。

问题是:我如何获得干净的解决方案(使用全局 /opt 目录中的“tcserver”用户安装)为不是“tcserver”的开发人员工作?tcserver 用户应该如何与开发人员(同一组?)相关联。

我是否让这个问题变得比应该的更难?我错过了什么?

4

1 回答 1

0

我不确定这是您想要的,但我根本不以特殊用户身份将 STS 捆绑包安装在某种共享目录中。我只是像我自己一样将它安装在我的 user.home 目录中,然后从那里启动它。

这是非常简单的。我只需下载 tar.gz 文件,将其解压缩到我的主目录中,然后从一个看起来像这样的简单 bash 脚本启动它:

#!/bin/bash
/home/kdvolder/Applications/sts-bundle/sts-*/STS

该脚本在我的 PATH 上。所以我可以在终端中输入“STS”,STS 就会启动。

我不需要做任何其他事情,它就可以工作。

如果您试图以某种方式安装它,以便几个不同的用户可以运行共享安装,那么这不是一个好的设置。但我认为对于您自己的个人笔记本电脑或只有您使用的台式机,这个简单的设置非常好。

不幸的是,对于共享用户环境,我不知道如何为您提供帮助。解决所有权限问题等可能很复杂,因为 Eclipse 是安装插件等的复杂野兽。

于 2016-11-16T00:02:41.050 回答