我正在使用emacs的tramp mode通过ssh远程编辑文件。问题是,每当我保存正在编辑的文件时,都需要输入我的用户密码,这让我感到非常烦人。有什么办法可以在整个编辑会话中只输入一次密码吗?
我正在使用emacs的tramp mode通过ssh远程编辑文件。问题是,每当我保存正在编辑的文件时,都需要输入我的用户密码,这让我感到非常烦人。有什么办法可以在整个编辑会话中只输入一次密码吗?
啊,根据tramp文档中的密码缓存设置:
(setq password-cache-expiry nil)
需要使用password-cache.el包。
此外,在tramp源代码中,它提到阅读ssh-agent(1)页面,该页面显示如何设置它,以便您不必在emacs内部或外部重新输入密码:
有两种主要方法可以设置代理:第一种方法是代理启动新的子命令,其中导出了一些环境变量,例如ssh-agent xterm &。第二个是代理打印所需的shell命令(可以生成sh(1)或csh(1)语法),这些命令可以在调用shell中评估,例如eval
ssh-agent -s
适用于Bourne类型的shell,如sh(1)或ksh(1),而evalssh-agent -c
适用于csh(1)和派生版本。
(setq password-cache-expiry nil)
如果你使用*nix系统,你可以使用FUSE/SSHFS挂载远程目录,这样你就可以像本地文件系统一样编辑文件。
使用SSH公钥身份验证。
使用公钥(RSA)身份验证更安全,更方便。在GNU/Linux系统(以及其他一些系统,我不确定)上,您通常会使用密码解锁私钥一次,然后在登录会话期间重复使用它。
使用SSH公钥身份验证。
package-cache
。 - viam0Zah