This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
dslab:testvideowall [2010/12/06 23:08] – hps1 | dslab:testvideowall [2011/01/30 19:49] (current) – hps1 | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ==== Basic Video Wall Setup Tutorial ==== | ||
+ | This tutorial covers how to set up a 2 node video wall with Debian Squeeze 6.0. The video wall is made up of a host and client. The host runs Xdmx and takes keyboard and mouse input. The client is then controlled by the host. | ||
+ | This tutorial uses generic names for the computers. In any of the commands in this file, you should replace these generic names with the appropriate names or ip addresses for your setup. | ||
+ | |||
+ | **host-computer**: | ||
+ | |||
+ | **client-computer**: | ||
+ | |||
+ | |||
+ | |||
+ | === Step 0: Debian Installation === | ||
+ | This tutorial assumes that you have two computers with a clean installation of Debian Squeeze 6.0. Also you should install and setup Xorg. I won't cover how to do this here as it falls outside the scope of this tutorial. | ||
+ | |||
+ | === Step 1: Enable Xorg TCP Listening === | ||
+ | By default, Xorg disables TCP listening. We need to enable it so that the host and client x sessions can communicate over the network. | ||
+ | |||
+ | <WRAP round info box> | ||
+ | |||
+ | |||
+ | Do the following on both the host and client computers: | ||
+ | === Step 1.1: Edit / | ||
+ | it will read: | ||
+ | < | ||
+ | #!/bin/sh | ||
+ | |||
+ | exec /usr/bin/X -nolisten tcp " | ||
+ | </ | ||
+ | |||
+ | remove the " | ||
+ | < | ||
+ | #!/bin/sh | ||
+ | |||
+ | exec /usr/bin/X " | ||
+ | </ | ||
+ | |||
+ | === Step 1.2: Ensure X Started with Correct Options === | ||
+ | |||
+ | To verify that X is now listening for TCP connections, | ||
+ | < | ||
+ | root@computer# | ||
+ | </ | ||
+ | |||
+ | Switch to another virtual terminal, and execute: | ||
+ | < | ||
+ | root@computer# | ||
+ | </ | ||
+ | |||
+ | Find the X process. It should be running without the " | ||
+ | |||
+ | === Step 1.3: Verify Port 6000 is Open === | ||
+ | |||
+ | While X is running, verify that X is listening on port 6000 by running: | ||
+ | < | ||
+ | root@computer# | ||
+ | </ | ||
+ | You should see that port 6000 is open. | ||
+ | |||
+ | === Step 2: Install Xdmx === | ||
+ | |||
+ | We will use the Xdmx binary from node132 because it is old enough that it still works. | ||
+ | SSH into node132 and execute the following command to copy the binary to your host computer: | ||
+ | < | ||
+ | scp / | ||
+ | </ | ||
+ | |||
+ | <WRAP round info box>The versions of Xdmx in the Debian repositories have been broken ever since Debian Lenny. The older Etch package still works. This used to mean that you could download the old package from the Debian Etchpackage archives. However, Debian no longer holds all the old Etch packages. If you find an online source for the working package, let me know or post it here.</ | ||
+ | |||
+ | === Step 3: Setup Allowed Hosts === | ||
+ | On both the client and host computers, run xhost to allow any computer to connect to each x server. | ||
+ | Execute these commands while X is running. You will need to repeat these commands every time you restart Xorg. | ||
+ | |||
+ | < | ||
+ | root@computer# | ||
+ | root@computer# | ||
+ | </ | ||
+ | |||
+ | === Step 4: Start Xdmx === | ||
+ | On the host machine, run the following command to initialize Xdmx. | ||
+ | |||
+ | < | ||
+ | root@host-computer# | ||
+ | </ | ||
+ | |||
+ | === Next Steps === | ||
+ | Figure out how to run a window manager on top of Xdmx | ||
+ | Automate the process of starting Xdmx | ||
+ | |||
+ | === Resources === | ||
+ | Much of this tutorial comes from this site: http:// | ||
+ | |||
+ | For ideas on how to automate the process of starting Xdmx, investigate the /root/menu2 and / |