On Sat, Jul 23, 2011 at 02:31:57PM -0500, Mikkel L. Ellertson wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > On 07/23/2011 02:17 PM, David A. De Graaf wrote: > > Since doing fresh installs of Fedora 15 on two computers, I've found > > that the DISPLAY environment variable is not exported in some cases, > > despite being declared "exported". > > > > This seems to be a clear violation of the EXPORT rules in /bin/bash. > > It is a severe handicap in a root window, since most of the GUI > > commands in the system-config-* group will not run. > > ... > > Can anyone help? > > > I would expect the list of variable names to be different with the > root shell invoked with su -. When you use - or -l, things are set > just like you had logged in as that user. Because of /etc/pam.d/su, > DISPLAY and the "cookie" that lets you access X are carried over. > You may want to compare these 2 files, and see if they are the same > on both machines. You may also want to check /etc/pam.d/system-auth > to see if they point to the same file, and the files are the same. > > I am not sure, but it looks like a PAM problem to me. > > Mikkel Thank you Mikkel, for responding. Precisely to avoid the complexities introduced by switching to root, I merely switched to my own userID with su - dad . I fully (sort-of) understand the significance of the - to "make the shell a login shell". The original xterm window is a "login shell", or a somewhat distant descendant, since login occured in a console, and startxfce4 conspired to create that window, and several others. Therefore, it's environment should be based on, or inherited from, the original login shell, with obvious additions for X. As I understand it (from the golden years of UNIX), what happens when I type /bin/su - dad is roughly this: - the shell forks, creating a child with all of the parent's exported environment but not the rest, and including stdin, stdout, and stderr. - the child runs login and checks the passwd for the new user - that user's startup scripts, ie, profile, bashrc, etc. are run, possible changing some of the environment - PATH, PS1, etc. - a bash prompt is presented That's it! Since the parent's user and the child's user are the same, I would expect the environment to be the same, or very similar. They're not! Some other process must be deliberately changing or undefining variables - such as DISPLAY, but also many others. I don't know who or why. To answer your specific suggestions, all the files you mentioned, /etc/pam.d/su, /etc/pam.d/system-auth, and indeed all of /etc/pam.d/ are identical on both machines. I really don't dig PAM, but given the congruence, it's hard to believe PAM is responsible. -- David A. De Graaf DATIX, Inc. Hendersonville, NC dad@xxxxxxxx www.datix.us The most terrifying words In the English language are: I'm from the government and I'm here to help. - Ronald Reagan -- users mailing list users@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe or change subscription options: https://admin.fedoraproject.org/mailman/listinfo/users Guidelines: http://fedoraproject.org/wiki/Mailing_list_guidelines