Headless YellowDog

yellowdog-general at lists.terrasoftsolutions.com yellowdog-general at lists.terrasoftsolutions.com
Mon Oct 11 16:44:28 MDT 2004


> Genericaly something is a server if it provides some sort of 
> service.  In X, 
> the service that the X server provides is an interface to a monitor, 
> keyboard, and mouse.  So your X server running on your 
> computer manages the 
> monitor/kdb/mouse and the various programs your run (X 
> clients) use that 
> service.
> 
> In most cases there is only one X server running on a system. 
>  It is possible, 
> but not very common, to have a computer with 2 monitors, 2 
> keyboards, and 2 
> mice that two people can use at once.  When you run a X 
> client program, you 
> need to tell it which display to use.  That is specified as 
> system:display.screen, where system is the hostname or IP 
> address, and 
> display is the display number (starting with 0).  I'll ignore 
> screens for 
> now.  Both 'display' and 'screen' can be omitted and you get 
> :0 for example.  
> This refers to the first display on the local system.  BTW 
> :0.0 is the same 
> as :0 and unix:0 is also the same is :0.   If you set your 
> display to :1 that 
> refers to the senond display on that system.

A more precise definition, since I have never seen a system that has two
physical keyboards and mice, is that the system allows for multiple X
servers simply by numbering them sequentially. In the case of PC's, there's
usually the concept of virtual consoles. On Sun's, there's a single keyboard
and mouse but I can attach several different display adapters to the system
with a monitor (screen) on each.

In your above example, you said "'display' and 'screen' can be omitted" but
I think you meant system and screen. You have to have at least display,
i.e., :1 or :0, the others will be inferred (localhost:0.0).

 
> Now bring VNC into the picture.  The VNC server is a X server 
> that doesn't 
> manage any monitor/keyboard/mouse.  It just makes it look 
> like it does to any 
> X client program that connects to it.  In order to be able to 
> see and control 
> anything in that virtual X server you need a VNC viewer 
> program.  The VNC 
> viewer connects to a X server (not the vncserver) and 
> displays a window.  It 
> also makes a connection to the virtual X server (VNC server). 
>  The VNC server 
> tells the VNC viewer what to display in the window it created 
> on the other X 
> server.

Not exactly, because you have to make sure you are talking about the right
scenario. In all cases, the client always connects to a VNC server
component. In the case of stand-alone vncserver, it has already forked its
own X session, so it mediates between the X session and the client. In the
case of an X session on the console using the VNC module, the VNC module is
run under control of the X session, not the other way around. This has
importance because of the way the screen is handled.
 
> If you startup vncserver on a system already running another 
> X server (most 
> likely on display :0) then vncserver will need to use some 
> other display.  
> Unless told otherwise it'll grab the next available one i.e.  :1.
> 
> 
> > I understand that I don't need to connect to the local X 
> session on the
> > server in the basement, but VNC can start it's own X session. Great!
> >
> > Next point: I would like to display the VNC session on my 
> YDL box in a
> > separate console (or virtual terminal?), like MOL can be run in a
> > separate console. I haven't managed that just yet. I only can have a
> > window in my existing X session on my YDL box. What magic should be
> > performed here ?
> 
> Whenever you display a VNC session, you need to run a VNC 
> viewer.  As it is 
> another X client, it'll need to talk to a X server.  So you 
> cannot directly 
> display the VNC session on another virtual console.  But you 
> can run another 
> X server on that virtual console.

On Linux, the typical VNC client is an X client. That is not the case on
other platforms. You don't need to run *another* X server to use the client,
though. You can just run it in the existing X session.

> This is a slight variation of the multiple 
> monitor/keyboard/mouse previously 
> mentioned.  Lets say you already have a X server running (:0) 
> and it is on 
> virtual console 7.  You can run another X server on another 
> virtual console.
> Run "startx -- :1" (that's 2 dashes). This will startup an 
> new X server (:1) 
> on the next available virtual console (8 probably).  Now you 
> can switch 
> between the two with ctrl-alt-f7 and ctrl-alt-f8.
> 
> Now in your second (:1) X server on vc8 run your vncclient 
> and point it to 
> your vncserver running on some other box.  Make it full 
> screen and now you 
> can switch back and forth between your regualr desktop and 
> the VNC one by 
> using the usual VC switching (ctrl-alt-Fx).

Why do you need to run another X session just to run the viewer? If you
wanted to do this, it would make more sense to just run it this way:

xinit /usr/bin/vncviewer -- :1

because there's no need for a window manager if you're just using the
client.
 
> > Also, as I am using the system now, when I open the Remote Desktop
> > Connection tool on my YDL box, it starts with the following 
> error message:
> >
> > "Browsing the network is not possible. You probably did not 
> install SLP
> > support correctly"
> >
> > I have no clue what SLP is all about, and even less of a clue how to
> > install it. Any ideas ?
> 
> Not me.
> _______________________________________________
> yellowdog-general mailing list
> yellowdog-general at lists.terrasoftsolutions.com
> http://lists.terrasoftsolutions.com/mailman/listinfo/yellowdog-general
> HINT: to Google archives, try  '<keywords> 
> site:terrasoftsolutions.com'
> 


More information about the yellowdog-general mailing list