Subject: lshd: X11 forwarding request failed on channel 0

From: myglc2 <[email-masked]>
Date: Tue, 12 Jul 2016 16:46:26 -0400

>From 'Re: guixSD - problem with X11 forwarding' in [email-masked]

myglc2 <[email-masked]> writes:

> [email-masked] (Ludovic Courtès) writes:
>
>> myglc2 <[email-masked]> skribis:
>>
>>> On guixSD, with no packages installed in the login user profile, I get
>>> 'X11 forwarding request failed on channel 0'
>>
>> [...]
>>
>>> debug1: channel 0: new [client-session]
>>> debug1: Entering interactive session.
>>> debug1: Requesting X11 forwarding with authentication spoofing.
>>> debug1: Sending environment.
>>> debug1: Sending env LANG = en_US.UTF-8
>>> X11 forwarding request failed on channel 0
>>
>> Right, I see that as well.
>>
>> lshd gives some clues in /var/log/messages:
>>
>> Feb 23 18:14:09 localhost lshd[430]: lshd: Updating utmp for login failed (errno = 2): No such file or directory 
>> Feb 23 18:14:09 localhost lshd[430]: lshd: xauth invocation failed: exit code: 127 
>> Feb 23 18:14:33 localhost lshd[430]: lshd: Updating utmpx for logout failed (errno = 2): No such file or directory 
>> Feb 23 18:14:33 localhost lshd[430]: lshd: write_buffer: Attempt to write data to closed buffer. 
>> Feb 23 18:14:33 localhost lshd[430]: lshd: Disconnect for reason 11: disconnected by user 
>>
>> Indeed, server_x11.c in lsh reads:
>>
>> #ifndef XAUTH_PROGRAM
>> # define XAUTH_PROGRAM "/usr/X11R6/bin/xauth"
>> #endif
>>
>> I believe this is fixed by commit da35acf.
>>
>> To give it a try, you can run (as root):
>>
>>   # guix pull
>>   # herd stop ssh-daemon
>>   # guix system reconfigure your-config.scm
>
> I tried the above. 'ssh -v ...' still produces results quoted above and
> I see in /var/log/messages:
>
> Feb 29 20:43:54 localhost lshd[6959]: lshd: Failed to cd to `/tmp/.X11-unix' (errno = 2): No such file or directory 
> Feb 29 20:43:54 localhost lshd[6959]: lshd: Updating utmp for login failed (errno = 2): No such file or directory 
> Feb 29 20:45:35 localhost lshd[6959]: lshd: Updating utmpx for logout failed (errno = 2): No such file or directory 
> Feb 29 20:45:35 localhost lshd[6959]: lshd: write_buffer: Attempt to write data to closed buffer. 
> Feb 29 20:45:35 localhost lshd[6959]: lshd: Disconnect for reason 11: disconnected by user 
> Feb 29 20:45:47 localhost lshd[6959]: lshd: Failed to cd to `/tmp/.X11-unix' (errno = 2): No such file or directory 
> Feb 29 20:45:47 localhost lshd[6959]: lshd: Updating utmp for login failed (errno = 2): No such file or directory 
>
> I tried 'sudo mkdir /tmp/.X11-unix' which changed /var/log/messages to:
>
> Feb 29 20:54:04 localhost lshd[6959]: lshd: Updating utmp for login failed (errno = 2): No such file or directory 
> Feb 29 20:54:09 localhost lshd[6959]: lshd: Updating utmpx for logout failed (errno = 2): No such file or directory 
> Feb 29 20:54:09 localhost lshd[6959]: lshd: write_buffer: Attempt to write data to closed buffer. 
> Feb 29 20:54:09 localhost lshd[6959]: lshd: Disconnect for reason 11: disconnected by user 
>
> and 'ssh -v ...' still produces the results quoted above.

Don't think this is fixed yet. ssh in to GuixSD gives ...

'X11 forwarding request failed on channel 0'

... and on GuixSD in /var/log/messages I see ...

Jul 12 16:25:42 localhost lshd[384]: lshd: Failed to cd to `/tmp/.X11-unix' (errno = 2): No such file or directory 
Jul 12 16:25:42 localhost lshd[384]: lshd: Updating utmp for login failed (errno = 2): No such file or directory 

... or after ...

sudo mkdir /tmp/.X11-unix

... I see ...

Jul 12 16:21:53 localhost lshd[384]: lshd: Updating utmpx for logout failed (errno = 2): No such file or directory 
Jul 12 16:21:53 localhost lshd[384]: lshd: write_buffer: Attempt to write data to closed buffer. 
Jul 12 16:21:53 localhost lshd[384]: lshd: Disconnect for reason 11: disconnected by user 
Jul 12 16:22:00 localhost lshd[384]: lshd: Updating utmp for login failed (errno = 2): No such file or directory 

I am running from a git checkout ...

g1@g1 ~/src/guix$ git branch -av | grep '* master'
* master                                   0885881 gnu: obs: Remove compiler flags for non-Intel hardware.
g1@g1 ~/src/guix$ stat /home/g1/.config/guix/latest | grep File:
  File: ‘/home/g1/.config/guix/latest’ -> ‘../../src/guix’

system and user configs attached. TIA - George