gpt4 book ai didi

linux - 如何消除运行 "setsid scp"时出现的对话框?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:53:35 26 4
gpt4 key购买 nike

由于某些原因,我必须使用“setsid”来运行我的所有命令。

但是,当运行“setsid scp ~/aaa user1@10.170.3.17:/tmp/”时,出现了一个要求输入密码的对话框。通常,提示出现在命令行中。

是不是ssh的某些配置引起的?我想消除盒子。如何实现?

最佳答案

setsid 命令的效果之一是通过 setsid(1) 启动的进程与其控制终端分离。在没有控制终端的情况下,scp 无法在启动它的终端上询问密码,因为它“看不到”任何密码。然而,它“看到”的是环境变量告诉它有一个 X11 窗口 session ,它可以在其中显示一个图形实用程序,要求您输入解锁 SSH 私钥所需的密码或密码短语,该私钥将用于身份验证远程系统。

即使您取消设置它“看到”的环境变量并使用它将 x11-ssh-askpass 对话路由到您的屏幕 (DISPLAY),那可能不会为您产生预期的效果,因为所需的 key 将丢失并且 scp 操作将失败。

我在这里推荐的解决方案之一是设置“无密码”登录(如果适用于给定的安全环境),使用 ssh-keygen(1) 生成不受密码保护的“身份 key ”。

您可以探索其他可能性,例如在文件中或在命令行选项中提供密码,对您来说效果更好。请查看 ssh(1) 联机帮助页的环境部分。

关于linux - 如何消除运行 "setsid scp"时出现的对话框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10910607/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com