在ssh中取消设置SendEnv选项

时间:2016-12-12 14:31:57

标签: linux ssh locale

根据 ssh 手册页 -o 允许设置给定ssh客户端选项的内容。我想取消设置SendEnv(或将其设置为空)以避免在服务器端设置区域设置。

通过在ssh_config文件中注释SendEnv行,我获得了预期的效果。但是,这对我的申请来说不是一个好的选择。

运行ssh命令时如何实现?我试了ssh -o SendEnv='' server没有成功。

2 个答案:

答案 0 :(得分:2)

在命令行上无法执行此操作。 SendEnv选项不会覆盖,而是附加到现有值。

但是你可以创建一个不同的配置文件,它没有这些选项并使用-F选项,这将阻止使用全局配置文件:

ssh -F /my/specific_ssh_config server

答案 1 :(得分:1)

有点晚了,但也许有人仍然可以从我的回答中受益。根据“ man ssh_config”,可以清除SendEnv变量:

  

可以通过在模式前面加上-来清除先前设置的SendEnv变量名。

因此,您基本上应该可以将您的结构与

一起使用
-o SendEnv=''

但不要将括号覆盖为空,而是将要覆盖的变量放在括号中,但在每个前缀前面加上破折号。

或者您在用户自己的ssh配置中指定相同的名称(通常是〜/ .ssh / config)。如果我正确理解了文档,也应该将其覆盖。