Multiseat solution with VMwarePlayer and Plugable DC-125 device in a modern Linux environment.
>> How to: DisplayLink USB Single Monitor on Linux by Jerome (Posted on 23. Dec, 2011)
First of all Thanks to Plugable and Jerome for the above great and clear article it was the key to my new idea.
I wanted to get a Multiseat without any long, difficult and tricky settings unlike this:
Even if we used these more complicated settings in the Linux inside we would need to follow the version changing.
So I think also this task is waiting for the Linux developers to build it to the distributions in normal case.
Until that we can use the DC-125 device with a virtual Linux box,
and it acts like an X terminal. In this case we need to adopt Jerome’s settings on a virtual Linux box only.
So our real Linux environment (on the hardware) can be absolutely free from any magic settings.
This real Linux environment will act as our application server and it will be the placeholder all of our actual software.
There are some circumstances (e.g. in education or office environment…) where it is more preferable to see a desktop of the application server, and for some people this remote desktop only means the real Multiseat solution.In this case we have a simple and standard method also, basically we need to enable the XDMCP on the
‘main’ real Linux environment and start a nested X server e.g. Xephyr on our virtual Linux box.
I have been using the VMwareWorkstation and VMPlayer for quite a while but I think it is not too difficult to start to use it (or any other appropriate virtual box) for a general Linux user.
The advantage of VMwarePlayer that it is free but VMwareWorkstation is more efficient for using more seats. Every seat (beyond the main seat) is made up of a DC-125 and a virtual Linux box.
My experimental configuration has got one plus seat only so I am using the VMwarePlayer with a DC-125 now.
The virtual boxes could be optimized for low memory usage. So the overhead left by virtual machines can be a reasonable compromise to yield standard solution.
I have been using the above configuration for some weeks and it seems to be very stable and fast. There was no problem with the suspend state of the real Linux, too.
I would like to give an outline of my configuration.
Gigabyte GA-870A / AMD Phenom II X2 560 3GHz /Kingmax DDR3 1333MHz 6GByte
Display card: Asus HD5450 512MB
One DC-125 and two L1942s LG monitor (1280x1024)
OS: Ubuntu 11.10 \n \l 64-bit Kernel Linux 3.0.0-14-generic
and VMwarePlayer 4 64bit
After the VMwarePlayer 64bit installation ( http://www.vmware.com/ ) the guest OS (virtual Linux box Ubuntu 11.10 64 or 32 bit) can be installed.
When the guest Ubuntu 11.10 has already been running under the VMwarePlayer, the WMware tools should be installed under the guest OS. It is important to provide the appropriate interface between guest and VMwarePlayer. Bridge is my preferred LAN setting in VMwarePlayer. In this case the guest OS has its own MAC address on the LAN. And the IP setting can be
DHCP or static both of OS and useful to fill in the /etc/hosts file also.
At this point we have two independent Linux OS (the main on the PC and guest under the VMwarePlayer) and both of them can see the Internet and each other on the virtual local LAN.
Still we have been using the guest OS’s desktop through the VMwarePlayer’s GUI and we can prepare and check the important settings on the main display and keyboard without the DC-125.
The connection of the DC-125 to the guest OS will be only the last step.
We need to create some users, mainly on the main OS because we need to connect to it with different user.
Now we can install the remained necessary softwares: SSH server/client and Xephyr on both OS for the simplicity.
#apt-get install openssh-server
#apt-get install openssh-client
#apt-get install xserver-xephyr
Append the above two lines into the /etc/lightdm/lightdm.conf on the main host for enable the XDMCP.
Eventually we can enable to choose the Classic GNOME desktop on both OS (and we are using this at the login time instead of Unity)
#apt-get install gnome-session-fallback
Moreover I installed several DM on the main host and I could choose between them at login time.
#apt-get install xfce4
#apt-get install gnome-shell
#apt-get install kde-plasma-desktop
#apt-get install twm
Now we can ssh as a different user from guest to the main host with -X option for graphics application and we can check these:
You can set the passwordless authentication : https://help.ubuntu.com/11.10/serverg… .
We can also check the remote DM of main OS from the guest. Only you need to start Xephyr on the guest OS.
#Xephyr :1 -screen 1024x768 -query host_or_ip # sg like this and choose the desktop manager at graphics login prompt except unity.
Don’t forget to login with different user.
There are a lot of useful option for Xephyr e.g.; -fullscreen also. (You can grab the mouse with Shift+Cntrl instead of Cntrl+Shift that looks in the title bar.)
The Xephyr is useful also locally to use more DM to collect the work space. I note that the Xnest was unusable.
Finally we can setup the DC125. Plug it to USB2 of the PC with display, keyboard, mouse, speaker, microphone.
The next step to create two files on the guest OS according to the mentioned article: http://plugable.com/2011/12/23/usb-gr… .
/etc/modprobe.d/50-displaylink.conf and /usr/share/X11/xorg.conf.d/60-plugable.conf
Shutdown the guest and check the VMwarePlayer settings that USB Controller has been added and sound card must not be added.
After it you can boot the guest OS, it will come up with black screen in the GUI of WMwarePlayer of course.
It is needed to confirm to pick up the drivers of DC-125 on GUI of VMwarePlayer.
Newnham Plugable DC-125 #display
Elan Input device #keyboard
Pixart Imaging USB Optical Mouse #mouse
C-Media USB Multimedia Audio Device #sound
Now the guest OS is ready for use through DC-125 as a second seat and we have a graphic login to the guest OS on it.
After login you can connect to the main OS the same way that was tested above
#ssh -X main_host and/or #Xephyr :1 -screen 1024x768 -query main_host.
So the guest OS acts like an X terminal and we are working on the main OS except the sound availability. The microphone and speaker connected to DC-125
can work only with guest OS because they are the local peripheries of guest OS now.
However if you would loss the GUI of second station you can restart its DM from the main OS e.g.:
#ssh root@guest service lightdm restart
In addition I mention that an MS XP/SP3 is also usable as a guest with DC-125 installing the driver
from Plugable : http://plugable.com/2011/12/17/displa…
and setting the Display properties :
Display: DisplayLink Graphics Adapter (1280x1024)
Use this device as the primary monitor.
Extend my windows desktop this monitor.
On this XP seat I started the MobaXterm (download from here http://mobaxterm.mobatek.net/ ) and I chose the XDMCP session from its X server on the GUI menu.
I had got the DM login to the main Linux OS like with Xephyr.
Some more questions that I’d like to know:
Now I am working behind a router and firewall but on the public network it should be needed to look after the secret settings of
XDMCP if it is enabled. When we start the Xephyr on the real Linux box with “ssh -X host” from the virtual environment, it is working but has a little bit slow response.
Also could be an interesting question to minimize the memory usage of virtual Linux box if it needs to act only as a dumb X terminal and we are using more seats.
In this situation probably it would be more efficient to use VMwareWorkstation than the VMwarePlayer.
I would interest if such a device like the DC-125 is available but with LAN interface instead of USB ?