保留 sudo 环境

发布于 2024-11-05 23:58:41 字数 519 浏览 5 评论 0原文

我正在尝试使用 ssh 从不同的服务器执行脚本

这是我在服务器 1 上使用的在服务器 2 上启动查询的命令:

ssh -t [email protected] "cd /var/www/vhosts/xxxxx/subdomains/preprod/; sudo ./replace.sh";

但问题是,当我执行 sudo 时,< code>$home = /root 当脚本位于:/var/www/vhosts/xxxxx/subdomains/preprod/时,

我如何告诉 sudo保护环境?

我尝试了 sudo -P - 、 sudo -H ,但没有任何运气。

I'm trying to execute a script from a different server using ssh

Here's the command I'm using from server 1 to launch a query on server 2:

ssh -t [email protected] "cd /var/www/vhosts/xxxxx/subdomains/preprod/; sudo ./replace.sh";

but the problem is that when I do sudo the $home = /root while the script is under: /var/www/vhosts/xxxxx/subdomains/preprod/

How can i tell sudo to preserve the environment?

I tried sudo -P - , sudo -H, without any luck.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

零時差 2024-11-12 23:58:41

这就是我从手册页中得到的内容。

sudo -E

-E -E(保留环境)选项将覆盖 env_reset
sudoers(5) 中的选项)。这只是
当匹配时可用
命令具有 SETENV 标签或
setenv 选项在 sudoers(5) 中设置。

That's what I got from the man page.

sudo -E

-E The -E (preserve environment) option will override the env_reset
option in sudoers(5)). It is only
available when either the matching
command has the SETENV tag or the
setenv option is set in sudoers(5).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文