zsh+keychain+tmux 是否可以不要求密钥?

Way*_*ner 6 zsh gnu-screen ssh-agent tmux

我正在使用 tmux 和 zsh,最近我在学习 ssh-agent 和 keychain。从 zsh 的手册页中可以看出,.zlogin只有当 shell 是登录 shell 时,它才会获取源代码。

按照我读到的建议,我坚持keychain --clear了我的.zlogin,效果非常好。当我登录盒子时,我必须解锁我的钥匙。然而,每次我在 tmux 中创建一个新窗口时,它都会清除/让我重新添加我的密钥。这有点烦人......但如果事实上每个新的 tmux 窗口都是一个登录窗口,我可以理解。

除了有关该主题的联机帮助页之外,我无法找到太多帮助。那么每个新的 tmux 窗口都是一个登录 shell,还是有什么方法可以让它仅在创建 tmux 窗口时才清除我的密钥?

che*_*ner 3

每个新窗口都是一个登录 shell。default-command您可以通过在文件中设置 的值来更改此设置.tmux.conf

set-option default-command zsh
Run Code Online (Sandbox Code Playgroud)

默认情况下,它会创建一个使用该选项设置的任何值的登录外壳default-shell(其自己的默认值来自您的SHELL环境变量,/bin/zsh根据您的问题可能或类似)。

默认行为就像您的 中包含以下行.tmux.conf

set-option default-command "zsh --login"
Run Code Online (Sandbox Code Playgroud)

(至少,我认为这就是您可以使用 显式启动登录 shell 的方式zsh。)