【问题标题】:Emacs dired mode, trying to achieve "ssh -F ~/xyzdir/my_custom_configEmacs dired模式,试图实现“ssh -F ~/xyzdir/my_custom_config
【发布时间】:2015-07-28 04:29:08
【问题描述】:

我想在

中使用 不是 的 ssh 配置文件
~/.ssh/config.

当我使用命令行时

sh -F my_ssh_config

它有效。

现在我想从 Emacs dired (tramp) 做同样的事情。

无论我尝试什么,它都会连接到我的流浪者VM

我想做什么:

  • 我有多个 vagrant 项目目录,每个目录都有自己的 ssh 私钥,其中一些被丢弃/临时
  • 我喜欢 使用 Emacs dired 浏览我的 VM 文件夹
  • 我不想使用我的 ~/.ssh/config 文件 - 它会被这些 ssh 连接弄得一团糟

尝试调整(从 Tramp 获得“进程死亡”)

ELISP> ( tramp-get-completion-function "ssh")

((tramp-parse-connection-properties "ssh")
 (tramp-parse-shosts "~/.ssh/known_hosts")
 (tramp-parse-sconfig "/path/to/my_ssh_config_file"))

当在 shell 命令“ssh -f my_ssh_config_file”中使用“my_ssh_config_file”时,“my_ssh_config_file”也能正常工作 - 并进入我的 vagrant box。

【问题讨论】:

  • 我可能会先看看tramp.el 中以tramp-parse- 开头的函数,看看有没有什么想法。
  • 这听起来像是XY problem。您可能应该描述您希望覆盖的 SSH 连接的哪个方面; Tramp 有很多选择。

标签: emacs ssh vagrant tramp


【解决方案1】:

Tramp 不支持替代配置文件。连接参数在tramp-methods 中定义。检查此变量,然后将一个条目(例如 "ssh" 条目)加倍到 "myssh" 并使用您需要的参数。不过要小心,因为 Tramp 对参数有几个假设。

【讨论】:

  • 我有点怀疑这个.. 我会看看 tramp.el 。我已经尝试按照上面问题描述中的说明进行调整。谢谢
  • 您在上面调整的是主机名的自动扩展功能。对于连接参数,您必须调整tramp-methods。如有疑问,请不要犹豫。
猜你喜欢
  • 2010-10-28
  • 2011-01-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-09-26
相关资源
最近更新 更多