-1

我尝试使用执行 shell 中的 su - user 。但它没有看到工作。

有什么建议吗?

4

1 回答 1

3

这可能是因为 su 以交互方式要求输入密码。尝试设置 sudo 以便您的 hudson 用户有权在不输入密码的情况下以用户身份运行您的构建命令。请参阅sudoers 手册


补充:首先,我不完全确定您遇到了什么错误。如果您仍然遇到问题,您应该更详细地描述发生的情况(错误消息、日志输出)以及您为缩小问题范围所做的工作。

其次,您还可以使用密钥对将 ssh 设置为 localhost(Google 找到了很多示例,这里是一个)。

代替su - user, 使用:

ssh user@localhost cmd

您需要以 hudson 用户的身份创建一个密钥对(没有密码),并将公钥安装在您要登录的用户的authorized_keys文件中。

最后,你应该质疑这一切是否有必要。为什么 hudson 用户不能运行你的构建?用户特定的设置是一种气味。

于 2010-07-10T16:43:39.017 回答