我有一个文件夹存储在远程服务器上,并使用 本地挂载sshfs
。显然,这需要密码才能登录服务器。我希望获得一个 GUI 来提示我输入此密码。
zenity
我设法使用和的脚本完成了此操作expect
,但显然expect
不安全。那么我该如何正确地做到这一点?
注意,我只在挂载此文件夹时才需要它,在执行任何其他与 ssh 相关的事情时不需要。我想将它绑定到文件夹的快速启动图标,因此只有那时我才需要 GUI。
作为奖励,我更希望终端永远不出现。当我使用带有 的脚本时zenity
,终端似乎会弹出到 GUI 后面。这不是一个真正的问题,但如果没有它,它会更美观。
答案1
您可以使用SSH_ASKPASS
环境变量。有一个ssh-askpass
提供 GUI 应用程序的软件包,如果脚本在用户 X 下运行,则可用于向用户请求密码。您可以尝试以下方法:
export SSH_ASKPASS=/usr/lib/ssh/x11-ssh-askpass
sshfs [mount arguments]
在这种情况下,您应该会看到 GUI 提示跳出并让您输入密码。