Today was the first day that I became severely confused about what really happened when I logged in to the computer. While writing this text, I'm still not quite sure about how I am connected to the computer that runs the application within which I write this text (a second computer is providing keyboard and monitor, and a third computer is providing (and saving) the file I now write).
I changed three things this evening
Now, I sat at one of the medium fast computers, and choosed via the XDMCP chooser to log in locally. However, I noticed a session type that I had not seen before "secure remote login", which turned out to be a remnant from an old gdm-installation on this box (it now runs kdm). I choosed that and then I got to choose a remote host to log in to. There, I gave the IP-number of the fastest computer in the network, and now I got the usual messages about different stages in the login-process being handled.
Now, this would not have been very confusing at all, had I not have had a highly customized .xsession which tries to ensure that I connect with xvncviewer to a dummy X-server running at localhost (if there is no Xdummy server running, .xsession will start one, if there is no x11vnc running .xsession will start one, and, finally, it will start .xvncviewer). When working within this framework, you don't log off, you just kill xvncviewer to disconnect from the session. It takes a while to learn.
As it happened, the usual vnc-stuff just worked and there I was, logged in to the fastest computer in the network. But was the traffic running over ssh? My first attempt to find out was
ps aux | grep ssh
but then I realised: to find a "ssh -X ..." process I would have to look not "here", but at the computer that I was sitting at. Happily I did know the IP of that computer, and was able to ssh into it.
hans@ingegerdsdator:~$ ps aux | grep ssh root 2812 0.0 0.1 5412 1012 ? S<s 22:00 0:00 /usr/sbin/sshd root 3861 0.0 0.3 8180 2916 ? S<s 22:09 0:00 sshd: root@pts/0 hans 4710 0.0 0.1 4348 1408 ? Ss 23:22 0:00 /bin/bash /usr/lib/gdm/gdm-ssh-session hans 4741 0.0 0.0 4752 596 ? Ss 23:22 0:00 /usr/bin/ssh-agent /usr/bin/dbus-launch --exit-with-session /usr/lib/gdm/gdm-ssh-session hans 4745 0.0 0.1 3104 828 ? S 23:22 0:00 /usr/bin/dbus-launch --exit-with-session /usr/lib/gdm/gdm-ssh-session hans 4748 0.2 0.4 6232 3348 ? S 23:22 0:04 ssh -A -X -T -n 192.168.0.7 /etc/X11/Xsession root 4862 0.5 0.3 8180 2648 ? S<s 23:57 0:00 sshd: hans [priv] hans 4865 0.0 0.2 8180 1680 ? S< 23:57 0:00 sshd: hans@pts/1
There it was:
ssh -A -X -T -n 192.168.0.7 /etc/X11/Xsession
So the traffic was tunneled over ssh, and xvncviewer was running at the fast computer, not at the computer in front of me. It felt fast enough, so I guess all was well.
My aim with setting up XDMCP-choosers and sharing /home of NFS was quite the opposite though: to let users - regardless of what particular computers that were on (or running a useless OS) - log in to one of the computers that were on and running linux and start programs, do stuff, and then logout again. (a lá Sun in the 1990s "the net is the computer").
Having a persistant session is also nice, but it puts you back to depency on particular computers again.
The really cool stuff would of course be a real "cloud", a decentralised session relying for computation on a hord of anonymous computers. A not-quite-that-cool solution would be to let the file-server handle the session and let all computers in the network run some cluster computation-hack, like open-mosix (which I read about way back in 2002 or so, but never tried in practice). I googled for "cluster ltsp" and found www.ltsp-cluster.org which seemed dead, Linux Cluster HOWTO which did not even mention Openmosix which is closed ("dead") as of March 1, 2008. What has happened with clustering?? Wikipedia says that Openmosix was discontinued because of the availablity of cheap multi-core processors, but it has been forked into LinuxPMI. But, LinuxPMI is not ready for use in "production systems", so there this post ends. Bye for now...