I’m following in Generating SSH Keys, it says
sudo apt-get install xclip
Downloads and installs xclip. If you don\'t have <
Based on the date of this question the original poster wouldn't have been using Windows Subsystem for Linux. But if you are, and you get the same error, the following alternative works:
clip.exe < ~/.ssh/id_rsa.pub
Thanks to this page for pointing out Windows' clip.exe (and you have to type the ".exe") can be run from the bash shell.
DISPLAY=:0 xclip -sel clip < ~/.ssh/id_rsa.pub
didn't work for me (ubuntu 14.04
), but you can use :
cat ~/.ssh/id_rsa.pub
to get your public key
This was too good of an answer not to post it here. It's from a Gilles, a fellow user from askubuntu:
The clipboard is provided by the X server. It doesn't matter whether the server is headless or not, what matters is that your local graphical session is available to programs running on the remote machine. Thanks to X's network-transparent design, this is possible.
I assume that you're connecting to the remote server with SSH from a machine running Linux. Make sure that X11 forwarding is enabled both in the client configuration and in the server configuration. In the client configuration, you need to have the line
ForwardX11 yes
in~/.ssh/config
to have it on by default, or pass the option-X
to thessh
command just for that session. In the server configuration, you need to have the lineX11Forwarding yes
in/etc/ssh/sshd_config
(it is present by default on Ubuntu).To check whether X11 forwarding is enabled, look at the value of the
DISPLAY
environment variable:echo $DISPLAY
. You should see a value likelocalhost:10
(applications running on the remote machine are told to connect to a display running on the same machine, but that display connection is in fact forwarded by SSH to your client-side display). Note that ifDISPLAY
isn't set, it's no use setting it manually: the environment variable is always set correctly if the forwarding is in place. If you need to diagnose SSH connection issues, pass the option-vvv
tossh
to get a detailed trace of what's happening.If you're connecting through some other means, you may or may not be able to achieve X11 forwarding. If your client is running Windows, PuTTY supports X11 forwarding; you'll have to run an X server on the Windows machine such as Xming.
By Gilles from askubuntu
In case you are trying to use xclip on remote host just add -X to your ssh command
ssh user@host -X
More detailed information can be found here : https://askubuntu.com/a/305681
The following is also working for me:
ssh <user>@<host> "cat <filepath>"|pbcopy
Have read the documentation you've linked. That's totally silly! xclip
is just a clipboard. You'll find other ways to copy paste the key... (I'm sure)
If you aren't working from inside a graphical X session you need to pass the $DISPLAY
environment var to the command. Run it like this:
DISPLAY=:0 xclip -sel clip < ~/.ssh/id_rsa.pub
Of course :0
depends on the display you are using. If you have a typical desktop machine it is likely that it is :0