有什么方法可以让 sudo 使用用户的.bashrc
文件而不是 root 文件?我想.bashrc
在使用 sudo 时使用我自己的文件而不是 root 文件/etc/bashrc
(我必须强制其他用户使用它)。
手册页没有太大帮助,但我确信有办法可以做到。
答案1
我不知道这是否是个好主意,但我可以想象它很方便:在您的 sudo 环境中,您将SUDO_USER
环境变量设置为调用 sudo 的用户的名称。该变量可用于/root/.bashrc
实现您想要的功能。
但请注意,从安全角度来看,这可能非常微妙。您应该三思而后行,看看是否不会被不受信任的用户利用。
答案2
我知道这已经很老了,但万一有人用谷歌搜索并找到它......根据需要配置您自己的.bashrc(~/.bashrc)然后当您需要使用 sudo 时,请像这样执行...
sudo -E 命令
-E 告诉超级用户保留当前环境
答案3
根据您要执行的操作,在 的别名中设置环境变量可能就足够了sudo
。就我而言,我试图在使用sudo -s
获取 root shell 时为 设定不同的提示符。我的以下别名.bashrc
似乎运行良好:
alias sudo="PS1='\[\e[0;31m\]\u@\h:\w\[\e[0m\]\\$ ' sudo "