NX is a remote desktop type piece of software that lets you log in remotely to another linux computer. It is useful in that it lets you log in simultaneously with other users – that is, you can use it as well as another user as you log into a new session. It also works over SSH, so it’s secure. The data is compressed as well, so it’s pretty quick. In my experience, it’s much quicker than VNC, especially over the internet.
The server only works on computers running an X server, but the client works on any OS, so you can connect securely from Windows PCs to your home Linux box. This is really useful in public libraries, or when you are at a friends house, as you can use your own PC at almost native speed without any hassle.
Diagram showing how NX works. (Copyright NoMachine)
This only works to a normal X11 server, so Compiz Fusion or Beryl (or any other compositing window manager) doesn’t work over the connection, it’s only for standard window managers such as metacity, Kwin etc are fine.
Right then, let’s get going!
On your Linux pc (this tutorial is for Xandros, Debian and Ubuntu, though there are packages for Red Hat, Mandriva and Fedora as well), open a terminal and run:
sudo apt-get install openssh-server
To install the ssh server. This allows you to connect remotely using a normal shell. For more info on this, check the Ubuntu community page.
to make a directory to store the relevant packages.
to download the files.
sudo dpkg -i nxclient_3.0.0-84_i386.deb
sudo dpkg -i nxnode_3.0.0-93_i386.deb
sudo dpkg -i nxserver_3.0.0-79_i386.deb
to install the packages.
sudo /usr/NX/bin/nxserver --start
to start the server, changing start to status will let you know if it’s running or not.
On your Windows computer, download nxclient for Windows and install it. Notice how much more complex it is to download and install Windows software!
Once it’s installed, run it, and enter the IP address of your Linux computer to connect, give it a session name for your own reference, and choose your connection speed.
The next screen lets you choose what window manager to log in to, default is KDE – for Ubuntu, change that to Gnome.
Next, put in your username and password on your Linux computer – this is just your usual username and password.
The first time it will ask you if you trust the fingerprint of your computer. Say Yes – in future if you get this something has changed, so you might want to double check things. You should in theory only see this once.
Wait a few seconds for it to log in, and you will get something like this:
I use this on my old laptop to make a poor mans thin client, I boot it up, then connect to my real computer to get the most out of it.
If you want to use this over the internet, remember to forward port 22 on your router to your Linux computer. You might want to use DynDNS.org to set up an alias for your dynamic IP address if you have one to make things easier.