Add an X11 server

From SaruWiki
Revision as of 21:06, 30 July 2008 by Saruman! (talk | contribs) (added dpkg-reconfigure)
Jump to navigation Jump to search

First make sure that your kernel supports "userspace software suspend". If it doesn't (as might be with a homegrown kernel), then reconfigure your kernel to include CONFIG_SOFTWARE_SUSPEND=Y, recompile, reboot.

Now, log into the real console of your server. If you use a terminal, the setup of X will "hang" at the end.

You can update your apt using

apt-get update

Now run

tasksel

Under Choose software to install, remove all asterisks except for "desktop environment". When you select OK the system gets going. After installing a LOT of software, Tasksel will ask you what you want your default resolutions to be. Select at least those that you want to be able to use. Then Tasksel installs and configures some more.

However, since this will make your server start up with a GUI, we now take out the graphic desktop manager with

update-rc.d -f gdm remove

This means that you still boot into the text mode console. So how do we then get that graphic desktop (should we ever need it)? Simply by issuing

startx

at the root prompt on the real console.

That's it!

Use X programs on a Windows client

Here is a very instructive explanation. In short:

  • Install Xming. Create a local Xming server that runs on display 10. Start it; your tooltip should say "Xming server:10.0"
  • Install PuTTy, if you don't have already.
  • For the PuTTy session to your Debian machine where you want to run X programs: enable X11 forwarding, with an X display location of "localhost:10" or something alike, and MIT-Magic-Cookie-1 as X11 authentication protocol
  • On your OpenSSH server, enable the option "AllowX11Forwarding yes"; restart your SSH daemon
  • On your server, enable use of X11 for all users by running
    dpkg-reconfigure x11-common
    ; this presents you with the question which users are allowed to start the X server. The Debian (safe!) default is "Console Users Only"; change this to "Anybody".
  • in your user's profile, put the setting "export DISPLAY=localhost:10.0"
  • log out, log on again
  • start xclock or xeyes, and see the program appear on your windows host. Better yet, start the program in the background (xclock &) to get it on your windows machine AND be able to continue to work at the commandline