I have noticed this before on RedHat that when a user
logs in the /dev/console it is still left as owner root
and group root. This stops the logged in user from opening
console with xconsole.
On other distributions upon login the /dev/console is
chown'd to the user thus allowing access.
As a quick fix /dev/console can be chown'd by root to one
user, then xconsole can be opened OK, I'm still checking
to see if works OK - certainly anything pipped to
/dev/console comes out ok.
Another point is that XConsole opens OK, but doesn't show
anything pipped to /dev/console.
When Red Hat is configured to run XDM as the login manager, there is a
script in /etc/X11/xdm called GiveConsole that does this for you.
Otherwise it will need to be done manually when just using startx.