gpt4 book ai didi

ssh - 如何在 Vagrant 中使用 config.ssh.forward_env?

转载 作者:行者123 更新时间:2023-12-04 13:51:02 26 4
gpt4 key购买 nike

我希望我的主机系统中的某些环境变量在我的 Vagrant VM 中可见,使用 config.ssh.forward_env 环境。我正在使用 Vagrant 1.8.1。这是我的 Vagrant 文件:

Vagrant.configure(2) do |config|
config.vm.box = 'ubuntu/trusty64'
config.ssh.forward_env = ['FOO']
end

创建后,我运行了以下命令:

vagrant up
export FOO=bar
vagrant ssh -c 'echo $FOO'

我希望最后一行输出 bar ,而是输出一个空行(后跟 Connection to 127.0.0.1 closed. )。我究竟做错了什么?

最佳答案

TL; 博士

fhenri@machine$ export LC_MYVAR=TEST
fhenri@machine$ vagrant ssh -c 'echo $LC_MYVAR'
TEST
Connection to 127.0.0.1 closed.
fhenri@machine$

正如文档中所说, config.ssh.forward_env作品为 sendEnv因此,要使用 sendEnv 传递变量,您必须将主机配置为接受 env 变量,默认情况下(并希望我上面的示例可以工作),通用设置允许 LC_*通过,可以查看 /etc/ssh/sshd_config中的授权变量
# Allow client to pass locale environment variables
AcceptEnv LANG LC_*

您可以根据需要在此处添加自己的变量或使用默认前缀 LC_

关于ssh - 如何在 Vagrant 中使用 config.ssh.forward_env?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36122348/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com