我在本地服务器上有一个脚本(test.sh),在终端中执行时可以正常工作。该脚本删除一个目录,并在本地重新创建一个目录。然后它使用“ssh -i $private_key ..”连接到远程服务器并在那里复制一个文件。
当我在詹金斯执行这个脚本时
sh test.sh
它不起作用。我收到以下错误:
rm: .. Permission denied
mkdir: .. Permission denied
Warning: Identity file /.ssh/private_key not accessible: Permission denied.
Jenkins 与脚本在同一台服务器上。
我看到 Jenkins 是另一个用户,不能做我以 root 身份做的所有事情;如何在不失去所有安全性的情况下设置权限。特别是在 private_key 的情况下,将权限设置为 easy 是很愚蠢的——它当前设置为 600(所有者的读写权限)并且所有者是 root。