The usual suspects failed me last night when the
$DISPLAY environment variable wasn’t being set after I logged in via SSH to my Pi. The usual suspects being to make sure that the X11 forwarding options were turned on in
/etc/ssh/sshd_config on the server and in
ssh_config on the client, or to use the command line options
So I tried logging in again with the debug level turned up (
-vvv) and saw the message,
X11 forwarding request failed on channel 0. I had remembered from when this happened to me before that you also need a particular package on the server side to allow X11 authentication, whatever package contains the
xauth binary. However, it was there and seemed to be working properly.
The Googles turned up this link, which showed that a new option may need to be in your
sshd_config on a newer version of OpenSSH:
I then did a
sudo service ssh restart, which thankfully is smart enough not to kill your existing SSH session, and logged in again. Finally, I saw
$ echo $DISPLAY
and once again, all was well with the world.