它说,我正在关注生成SSH密钥
sudo apt-get install xclip
#下载并安装xclip.如果没有
apt-get,可能需要使用其他安装程序(如yum)xclip -sel clip <〜/ .ssh/id_rsa.pub
#将id_rsa.pub文件的内容复制到剪贴板
但是在我跑完之后xclip -sel clip < ~/.ssh/id_rsa.pub我得到了Error: Can't open display: (null)
什么问题?我用Google搜索,但一无所获
小智 104
DISPLAY=:0 xclip -sel clip < ~/.ssh/id_rsa.pub不适用于我(ubuntu 14.04),但你可以使用:
cat ~/.ssh/id_rsa.pub
Run Code Online (Sandbox Code Playgroud)
获取您的公钥
Mar*_*ber 52
根据这个问题的日期,原始海报不会使用Windows子系统Linux.但是,如果您是,并且您得到相同的错误,则以下替代方案有效:
clip.exe < ~/.ssh/id_rsa.pub
Run Code Online (Sandbox Code Playgroud)
感谢这个页面指出Windows的clip.exe(你必须键入".exe")可以从bash shell运行.
Car*_*lea 28
这是一个很好的答案,不发布在这里.这是从一个老乡用户在askubuntu:
剪贴板由X服务器提供.无论服务器是否无头,都无关紧要,重要的是您的本地图形会话可供远程计算机上运行的程序使用.由于X的网络透明设计,这是可能的.
我假设您使用SSH从运行Linux的计算机连接到远程服务器.确保在客户端配置和服务器配置中都启用了X11转发.在客户端配置中,您需要将该行
ForwardX11 yes放入~/.ssh/config默认情况下,或者将该选项传递给该会话-X的ssh命令.在服务器配置,你需要有行X11Forwarding yes中/etc/ssh/sshd_config(这是默认存在在Ubuntu).要检查是否启用了X11转发,请查看
DISPLAY环境变量的值 :echo $DISPLAY.您应该看到一个值localhost:10(在远程计算机上运行的应用程序被告知连接到在同一台计算机上运行的显示器,但该显示连接实际上是通过SSH转发到客户端显示器).请注意,如果DISPLAY未设置,则手动设置是没有用的:如果转发到位,则始终正确设置环境变量.如果您需要诊断SSH连接问题,通过选项-vvv来ssh获得所发生的事情的详细跟踪.如果您通过其他方式进行连接,则可能会或可能无法实现X11转发.如果您的客户端运行Windows, PuTTY 支持X11转发; 你必须在Windows机器上运行X服务器,例如Xming.
- 来自askubuntu的Gilles
小智 16
如果您尝试在远程主机上使用xclip,只需在您的ssh命令中添加-X即可
ssh user@host -X
Run Code Online (Sandbox Code Playgroud)
更多详细信息可以在这里找到:https://askubuntu.com/a/305681
已阅读您链接的文档.那太傻了!xclip只是一个剪贴板.你会发现其他方法来复制粘贴密钥...(我敢肯定)
如果您不在图形X会话中工作,则需要将$DISPLAY环境var 传递给命令.像这样运行:
DISPLAY=:0 xclip -sel clip < ~/.ssh/id_rsa.pub
Run Code Online (Sandbox Code Playgroud)
当然:0取决于您使用的显示器.如果您有一台典型的台式机,那很可能就是这样:0
尝试这个,它将像一个魅力.我遇到了同样的错误,但这种方法对我有用:
ssh USER@REMOTE "cat file"|xclip -i
Run Code Online (Sandbox Code Playgroud)
以下内容对我也有用:
ssh <user>@<host> "cat <filepath>"|pbcopy
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
76168 次 |
| 最近记录: |