sudo – 如何指定root的环境变量?

sudo – 如何指定root的环境变量?,第1张

概述我做rails开发.在这个应用程序中,我需要指定环境变量LD_LIBRARY_PATH = /usr/local / oracle / lib,但是当我使用sudo脚本/服务器运行应用程序时,它不会运行,因为该库路径不在root的env中. 我该怎么做才能让它发挥作用?我试图将路径放在root ./bashrc下,但它没有用. 我有类似的问题.我查看了我的/ etc / sudoers文件,我看到 我做rails开发.在这个应用程序中,我需要指定环境变量LD_liBRARY_PATH = /usr/local / oracle / lib,但是当我使用sudo脚本/服务器运行应用程序时,它不会运行,因为该库路径不在root的env中.

我该怎么做才能让它发挥作用?我试图将路径放在root ./bashrc下,但它没有用.

解决方法 我有类似的问题.我查看了我的/ etc / sudoers文件,我看到了这些行:
Defaults    env_resetDefaults    env_keep = "colorS disPLAY HOSTname HISTSIZE inputRC KDEDIR \                        LS_colorS MAIL PS1 PS2 QTDIR USERname \                        LANG LC_ADDRESS LC_CTYPE LC_ColLATE LC_IDENTIFICATION \                        LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_name LC_NUMERIC \                        LC_PAPER LC_TELEPHONE LC_TIME LC_ALL LANGUAGE liNGUAS \                        _XKB_CHARSET XAUTHORITY"

为了让我的环境变量在那里,我必须在“XAUTHORITY”之后添加它的名字.在你的情况下你会有:

Defaults    env_keep = "colorS disPLAY HOSTname HISTSIZE inputRC KDEDIR \                        LS_colorS MAIL PS1 PS2 QTDIR USERname \                        LANG LC_ADDRESS LC_CTYPE LC_ColLATE LC_IDENTIFICATION \                        LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_name LC_NUMERIC \                        LC_PAPER LC_TELEPHONE LC_TIME LC_ALL LANGUAGE liNGUAS \                        _XKB_CHARSET XAUTHORITY LD_liBRARY_PATH"

试一试.

还要确保在/ etc / environment中设置BASH_ENV =“〜/ .bashrc”.

See this other answer for more details

总结

以上是内存溢出为你收集整理的sudo – 如何指定root的环境变量?全部内容,希望文章能够帮你解决sudo – 如何指定root的环境变量?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/1039694.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-24
下一篇 2022-05-24

发表评论

登录后才能评论

评论列表(0条)

保存