Would it be possible to start GDM3 on a remote X server over a network?
by Sol33t303 from LinuxQuestions.org on (#5MP6E)
So, I'm currently doing a little bit of an experiment to try and improve my VMs graphical performance. So I hatched the idea to start an X server on my host that my guests can connect to and run on, instead of going through QXL, SPICE, etc. Allowing effectively full graphical performance with only the slight additional latency that is created by the VMs virtio network interface to my host.
So far it's working good. I am starting the X server on my host with "Xorg : -listen tcp -ac" (i'll remove -ac to improve security and try and make it so the X server is only listening on the interface that is created by libvirt and is VM facing later when i get everything else set up) and it seems to be working good. I can run "DISPLAY=192.168.122.1:1 xeyes" and xeyes pops up in the x server on VT8 on my host.
Naturally, now that that is working, the next step is to try and run my desktop on the remote X server, this is a vannila Ubuntu VM I started up for this test so GNOME3 and GDM3. Ideally I would like both GDM3 and GNOME3 to be running on the remote X server, so I could fully remove SPICE and QXL from my VM, run "virsh start Ubuntu" from the cli and just a bit later switch to VT8 and be greeted by GDM3 ready to log into my VM and then be shown GNOME3. All with basically full graphical performance.
Unfortunately I'm a bit stuck on GDM3. I can't seem to find how to convince it to not start it's own X server but instead connect to and take over an existing one, and a remote one at that. I belive there isn't anything from stopping it from doing so, looking at XDM it seems to have that functionality. documentation for it is here,
Quote:
If I'm not misunderstanding, it sounds like XDM can do what I want, however I'd like to try and stick to GDM3 (although if that is not possible I will jump to XDM). It mentions it does this through "XDMCP", which confuses me.
Reading online XDMCP sounds like remote desktop software much like say teamviewer or the like, which is weird, because for XDM to do what it says, to me it sounds like XDM either kind of forces the remote x server to connect to a local server using XDMCP (that does not sound right, for security reasons, nor do I want two x servers running if possible) or it starts and XDMCP server on the local X server and a connection must be initiated manually (again, still not ideal, and not really what I want to have to do).
GDM3 also seems to have an XDMCP secion that makes it sound like it's just listening on a remote connection instead of making a connection it's self and taking over and managing another X server.
So what do I do here? How does XDMCP work? Is what I want done even doable? Am I just going on a goose chase and looking into the wrong things for this task?
So far it's working good. I am starting the X server on my host with "Xorg : -listen tcp -ac" (i'll remove -ac to improve security and try and make it so the X server is only listening on the interface that is created by libvirt and is VM facing later when i get everything else set up) and it seems to be working good. I can run "DISPLAY=192.168.122.1:1 xeyes" and xeyes pops up in the x server on VT8 on my host.
Naturally, now that that is working, the next step is to try and run my desktop on the remote X server, this is a vannila Ubuntu VM I started up for this test so GNOME3 and GDM3. Ideally I would like both GDM3 and GNOME3 to be running on the remote X server, so I could fully remove SPICE and QXL from my VM, run "virsh start Ubuntu" from the cli and just a bit later switch to VT8 and be greeted by GDM3 ready to log into my VM and then be shown GNOME3. All with basically full graphical performance.
Unfortunately I'm a bit stuck on GDM3. I can't seem to find how to convince it to not start it's own X server but instead connect to and take over an existing one, and a remote one at that. I belive there isn't anything from stopping it from doing so, looking at XDM it seems to have that functionality. documentation for it is here,
Quote:
xdm offers display management two different ways. It can manage X servers running on the local machine and specified in Xservers, and it can manage remote X servers (typically X terminals) using XDMCP (the XDM Control Protocol) as specified in the Xaccess file. |
Reading online XDMCP sounds like remote desktop software much like say teamviewer or the like, which is weird, because for XDM to do what it says, to me it sounds like XDM either kind of forces the remote x server to connect to a local server using XDMCP (that does not sound right, for security reasons, nor do I want two x servers running if possible) or it starts and XDMCP server on the local X server and a connection must be initiated manually (again, still not ideal, and not really what I want to have to do).
GDM3 also seems to have an XDMCP secion that makes it sound like it's just listening on a remote connection instead of making a connection it's self and taking over and managing another X server.
So what do I do here? How does XDMCP work? Is what I want done even doable? Am I just going on a goose chase and looking into the wrong things for this task?