You are not logged in.
I have a problem with Xorg/X11 after installing daedalus. Spent the last day and
a half googling a solution without finding a fix.
What I have:
users "me" and root
hosts "here" and "there"
"here" is a Dell running x86_64 (daedalus, installed this week).
"there" is a very much older i686 Dell running (beowulf, installed ages ago).
I use fluxbox as my window manager, no desktop environment because I don't
need the delays - on the same hardware WMs are _always_ a lot faster than desktops.
I always have a few xterms open, some of which allow me to run gui tools, if
needed, on other hosts. I use csh for interactive use.
On the box running daedalus, after doing a "su someOtherUser", I can't get _any_
X11 program to display it's output on "my" display.
So, to wit:
I've double and triple checked my sshd_configs on all hosts and there's no real
difference.
Although I don't use a gui often after "su -", when I need to, I'm usually desperate.
Any pointers would be appreciated.
ks
What I do: every box except daedalus: on the box with daedalus:
here% xclock opens small window, shows time opens small window, shows time
su -
here# xclock opens small window, shows time Error: Can't open display: localhost:10
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^D
here% ssh "there"
there% xclock opens window on display (@here) opens window on my display (@here)
and shows the time. and shows the time.
su -
there# xclock opens window on display (@here) opens window on display (@here)
and shows the time and shows the time.
I've double and triple checked my sshd_config files and there are no differences between old
and the new daedalus system.
Any pointers would make wrap up this year nicely.
tia
ks
Offline
I think your problem is related to the fact that after Beowulf, the su command got moved to another package. (to or from util-linux. I forget which) and they changed the way the PATH is handled. If you use 'su -' you can no longer open graphical programs on the user's desktop. To revert to the old behavior, do one of the following:
- Edit or create /etc/default/su and add the following line
ALWAYS_SET_PATH yes
OR
- Edit the ENV_SUPATH line in /etc/login.defs to include /usr/local/sbin, /usr/sbin and /sbin
Then use just 'su' to get root. You might also notice that you don't change directory when you become root.
Offline
Well, I'll be damned
all I needed to do is 'unalias su' which was aliased to 'su -' in my .cshrc, but, as you say, I have to get used to not being in the home directory of whoever I 'su' to.
Creating /etc/default/su didn't change anything, so I undid this. The ENV_SUPATH line in /etc/login.defs was already as required, so all that was left to do was the unalias.
Thank you very much.
ks
ps: just posting another problem that got me stumped.
Offline
Thank you!
I had, in fact, got ALWAYS_SET_PATH and ENV_SUPATH set up as above, but I was unable to open an X window. I then realised that it might be because I was using lxqt-sudo. On checking, I found that just using su did have $PATH set and I could open X programs. A quick check of the man page for lxqt-sudo showed that what I needed was the -s flag (for su rather than sudo).
Now when I run :-
lxqt-sudo -s rxvt -rv &
I have $PATH set and I can run X programs.
I run rxvt in reverse video so that I can easily spot that it is a root window.
Geoff
Offline
Or I could simply have used :-
lxsu rxvt -rv&
One difference in using su rather than sudo is that it asks for the root password rather than your own!
Geoff
Offline