The Arrival of NX, Part 5: Using NX
This is the fifth in a seven-part series written by FreeNX Development Team member Kurt Pfeifle about his involvement with NX technology. Along the way, he gives some basic insight into the inner workings of NX and FreeNX while outlining its future road map. In Part 5, Kurt explains how you can start to explore what NX offers by following his step-by-step instructions. Much of what Kurt describes in this series can be reproduced and verified with one or two recent Knoppix CDs, version 3.6 or later. A working FreeNX Server setup and the NoMachine NX Client has been included in Knoppix now for over a year.
The NoMachine NX Client license says, "Redistribution of NX Client software, including commercial Closed Source packages, is allowed, free of charge, for commercial and non-commercial use...". This enabled Klaus Knopper to include the NoMachine NX Client in Knoppix, versions 3.6 and later, even though it is not free software. It also is included in Kanotix. The NX Client is released in binary form under a free for commercial and non-commercial use license similar to the Adobe Acrobat reader software that we find in most Linux distributions. A KDE-based NX client, kNX, also is available. kNX works and is used by quite a few people daily, but it more of a proof-of-concept implementation, though, and its use is not yet generally recommended.
Knoppix also includes FreeNX, a fully GPLed implementation of an NX server application, based on the NoMachine GPLed Core NX libraries and utilities. So Knoppix enables you to access any free or commercial NX server in the world or even run your own FreeNX one from CD-ROM.
We have arrived at a point in this series where we can conduct various hands-on exercises. I have been using the Knoppix-4.0 DVD Edition, as released by Klaus Knopper during LinuxTag 2005. However, any other CD- or DVD-version of Knoppix torrent or Kanotix torrent since the 3.6 release (March 2004) should work the same or similarly. Depending on whether you have one or two machines available booted from Knoppix, you should be able to follow along with most or all of the different activities we describe here:
Use the NoMachine NX Client started from Knoppix to run a remote NX session to the NoMachine "testdrive" NX server in Rome/Italy. How to do so is explained in this article.
Use the FreeNX server started from Knoppix to run a local NX session to the same Knoppix instance. This is explained in the next article, Part 6.
Use the NoMachine NX Client started from one Knoppix to run a remote FreeNX session to a second Knoppix. This also is explained in Part 6.
Implement some artificial TCP/IP "traffic shaping" for the NX connections to simulate link conditions on a modem line, and compare NX performance over this medium with plain vanilla X11 performance; also in Part 6.
Be aware that your performance measurements may deviate from the ones presented in this article. This will depend on how much your hardware--mainly RAM size and CPU power--differs from mine.
Boot up Knoppix, and make sure you have an Internet connection. As our first exercise is to run a remote NX session to the public NoMachine testdrive NX server, you need to create an account for yourself. Open a Web browser and go to http://www.nomachine.com/testdrive.php. There you need to register a temporary testdrive user account (see Figure 1) so you can access that testdrive server in Italy or, alternatively, another testdrive server in Germany.
Registration does not require any information beyond your name and e-mail address; see Figures 2 and 3. You then need to wait for the confirmation e-mail to show up in your inbox (Figure 4); it should arrive within a few minutes.
Use the remote testdrive offered by NoMachine to form an initial valid impression about NX's performance in a real-life environment over an Internet connection. This is the quickest way to come to an initial conclusion about the viability of NX or FreeNX for your remote terminal server requirements.
Be aware that there is an upper limit of 30 concurrent NX user sessions on testdrive.nomachine.com. Also, currently no public testdrive option is available for remote sessions to a Windows Terminal Server. If you urgently need to test that, send an e-mail to NoMachine and ask for special permission.

Figure 2. Your name and e-mail address is all that is required to receive a seven-day test account for the NoMachine NX server.
If you find the NX testdrive server interesting enough, you then can proceed with your own tests and set up your own (Free)NX server. One quick way to do so is by running the FreeNX server provided on any recent Knoppix Live CD.

Figure 3. A confirmation note assures you that an e-mail with your test account credentials is on its way to your mailbox.
Notice that the User ID text field is labeled Login in the NX client that you will use shortly.

Figure 4. Indeed, a few minutes later the account credentials have arrived.
The mail details the NX server name, the (SSH) port number to use, your login name and your password. Asterisks were inserted to hide the real password in the figure. Test accounts are valid for one week and automatically expire thereafter.
You do not need to download and install the newest NX Client from NoMachine. The version included in Knoppix, namely 1.4.0, is good enough for now. I know that the more adventurous readers will be tempted to download the new 1.5.0 client, knowing that Knoppix with the new UnionFS filesystem easily can install and run new software packages while running from CD. If you know how to do this, go ahead.
Today’s modular x86 servers are compute-centric, designed as a least common denominator to support a wide range of IT workloads. Those generic, virtualized IT workloads have much different resource optimization requirements than hyperscale and cloud applications. They have resulted in a “one size fits all” enterprise IT architecture that is not optimized for a specific set of IT workloads, and especially not emerging hyperscale workloads, such as web applications, big data, and object storage. In this report, you will learn how shifting the focus from traditional compute-centric IT architectures to an innovative disaggregated fabric-based architecture can optimize and scale your data center.
Sponsored by AMD
Built-in forensics, incident response, and security with Red Hat Enterprise Linux 6
Every security policy provides guidance and requirements for ensuring adequate protection of information and data, as well as high-level technical and administrative security requirements for a system in a given environment. Traditionally, providing security for a system focuses on the confidentiality of the information on it. However, protecting the data integrity and system and data availability is just as important. For example, when processing United States intelligence information, there are three attributes that require protection: confidentiality, integrity, and availability.
Learn more about catching the bad guy in this free white paper.
Sponsored by DLT Solutions
| Making Linux and Android Get Along (It's Not as Hard as It Sounds) | May 16, 2013 |
| Drupal Is a Framework: Why Everyone Needs to Understand This | May 15, 2013 |
| Home, My Backup Data Center | May 13, 2013 |
| Non-Linux FOSS: Seashore | May 10, 2013 |
| Trying to Tame the Tablet | May 08, 2013 |
| Dart: a New Web Programming Experience | May 07, 2013 |
- RSS Feeds
- New Products
- Making Linux and Android Get Along (It's Not as Hard as It Sounds)
- Drupal Is a Framework: Why Everyone Needs to Understand This
- Home, My Backup Data Center
- A Topic for Discussion - Open Source Feature-Richness?
- Dart: a New Web Programming Experience
- What's the tweeting protocol?
- Developer Poll
- May 2013 Issue of Linux Journal: Raspberry Pi
- Reply to comment | Linux Journal
1 hour 57 min ago - Reply to comment | Linux Journal
3 hours 14 min ago - great post
3 hours 49 min ago - Google Docs
4 hours 11 min ago - Reply to comment | Linux Journal
9 hours 15 sec ago - Reply to comment | Linux Journal
9 hours 47 min ago - Web Hosting IQ
11 hours 20 min ago - Thanks for taking the time to
12 hours 57 min ago - Linux is good
14 hours 55 min ago - Reply to comment | Linux Journal
15 hours 12 min ago
Enter to Win an Adafruit Prototyping Pi Plate Kit for Raspberry Pi

It's Raspberry Pi month at Linux Journal. Each week in May, Adafruit will be giving away a Pi-related prize to a lucky, randomly drawn LJ reader. Winners will be announced weekly.
Fill out the fields below to enter to win this week's prize-- a Prototyping Pi Plate Kit for Raspberry Pi.
Congratulations to our winners so far:
- 5-8-13, Pi Starter Pack: Jack Davis
- 5-15-13, Pi Model B 512MB RAM: Patrick Dunn
- Next winner announced on 5-21-13!
Free Webinar: Linux Backup and Recovery
Most companies incorporate backup procedures for critical data, which can be restored quickly if a loss occurs. However, fewer companies are prepared for catastrophic system failures, in which they lose all data, the entire operating system, applications, settings, patches and more, reducing their system(s) to “bare metal.” After all, before data can be restored to a system, there must be a system to restore it to.
In this one hour webinar, learn how to enhance your existing backup strategies for better disaster recovery preparedness using Storix System Backup Administrator (SBAdmin), a highly flexible bare-metal recovery solution for UNIX and Linux systems.




Comments
Really awesome series of articles and the product itself, NX.
I have a local linux ws and a remote one sitting across in a different continent where I need to do extensive Java development using Eclipse IDE. I have been using NX for quite sometime now and it is working very well for me. This series of articles have clearly explained why.
Thanks
> installing FreeNX now that
> installing FreeNX now that NoMachine has released NX Server Free Edition.
Beware "NX Server Free Edition" is not "libre" software, it limits you to only two concurrent sessions, and so on.
FreeNX has not this limitations
When will Part 6 be out?
I am really enjoying reading this series and am impressed with NX. When will Part 6 be out? Thanks.
NX Server Free Edition
Fast forward a year from when this excellent article was written, there is probably not much point now in installing FreeNX now that NoMachine has released NX Server Free Edition.
This is fairly easy to install and offers more features than FreeNX.
freenx / nxserver: difficult to install
I've probably installed freenx and nxclient a dozen times, and each time it has been a hellishly difficult process. One can do a vanilla install on two hosts on the same LAN, with virtually everthing set up correctly, and still get the dreaded "Using auth method: publickey / Authentication failed" message. So my conclusion is that it might be better to seek other ways of remotely accessing machines at this point than freenx.
"I've probably installed
"I've probably installed freenx and nxclient a dozen times, and each time it has been a hellishly difficult process."
I can second that, I had to install freenx on some machines last year and the configuration almost drove me crazy. The same client asked me to update these machines to the new nx server. I tried to install it on some local machines and it went very smooth!
Using NX to connect to Windows
Hi,
NX really is great stuff, getting amazingly quick connections to my Ubuntu Breezy server at home whilst I'm sitting at work!
The only thing I can't seem to do is use the client to connect to my XP via RDP. I can run the nxdesktop from the ubuntu box no problem, am I missing something in the set-up?
Any help gratefully received!
thanks so far...
Hi Kurt,
thanks for the great series of articles about FreeNX which you publish here.
One thing tho, to which I never found a solution on the nomachine site or elsewhere:
When using the rdesktop feature from a Windows NoMachine client to a FreeNX (Debian-based) server (as proxy) to a Windows 2003 server at some client's site, I don't get a german keyboard layout - no matter what I choose in the NXclient. Even after adding german locales (and setting them as default) on the Debian proxy, there's no way to change that. Using version 1.5 didn't make a difference, and, suprisingly: when using the client on Debian (english desktop) as well, all just plain works [TM]!
So what do I have to do to make Windows clients play nicely?
Thanks again,
and kind regards,
wjl aka Wolfgang Lonien
same for me
Hey Wolfgang,
I'm getting the exact same bug i think: I connect with a Windows-NX-Client (2.0.0.98) to a SUSE linux machine with recent FreeNX straight from nomachine.com and the f***ing Keyboard layout will only be English! Even though i have on both machines German-Keyboard as default, and also selected "German" in the NXClient.
pls drop me a line if you could fix it!
best regards
Geli
stNOSPAM_AT_netrent.ch
keyboard mapping == nxdesktop bug ?
the problem you describe looks like a bug in NX' nxdesktop component (i mean to have read about it b4).
i assume you have tried the latest bugfix release of the nxclient for windows from nommachine already, yes? and also read their detailed release notes, yes?
if that didnt fix it for you, youll have to be patient and wait for the next release by nomachine.
Re: keyboard mapping == nxdesktop bug ?
This bug shouldn't affect the NoMachine NX server and, as far as I can say, it is not a bug of nxdesktop, as nxdesktop uses the keyboard correctly, according to the settings of the remote X server.
On Windows the keyboard settings are downloaded by the NX server to the client upon session startup. This is a feature of NX server that is activated whenever the remote X server is unable to handle the keyboard initialization locally, for example if the X server lacks the XKB tools and related keymap files. This makes much simpler to create thin client setups where only the X server is deployed, without the X libraries and the additional tools (as in the NX client for Windows).
I don't know how FreeNX handles this but the feature was implemented in November 2004. There was a long thread in the NX project's mailing list and Fabian and Kurt should have received copy of it. It shouldn't be difficult for the FreeNX guys to implement this in the same way as it is implemented in the NoMachine NX server.
/Gian Filippo.