Stanford farmshare with NX
Yaaaay! Nomachine NX combines the advantages of both VNC and F forwarding. Summarized all Features of this approach:
- Windows seamlessly integrate into client desktop (as if Cadence, MATLAB etc. would run locally), similar as X forwarding
- connection is persistent (when connection gets lost), as for VNC
- No problems with clipboard
- Access to local devices (not tried)
Awesome! Unfortunately the FreeNX package is outdated and buggy, but after 2 hours work I got it running
Client side (Windows)
Download the old (3.5) version of the NX client for Windows: https://www.nomachine.com/NX-3-5-0-Download-Package&Prod_Id=3835
rename:
c:\Program Files (x86)\NX Client for Windows\bin\nxssh.exe
to
c:\Program Files (x86)\NX Client for Windows\bin\mxssh.exe
download nxssh.exe from http://prdownload.berlios.de/freenx/nxssh.exe and copy it to c:\Program Files (x86)\NX Client for Windows\bin\
Connection settings:
Server: @corn07.stanford.edu Port: 22 Desktop: Unix, Custom Login: nhammler@U:/afs/ir/users/n/h/nhammler/NX4U/bin/nxserver-usermode Password: [SUNET password]
- The "@" in front of the host name activates the nxssh wrapper (executes FreeNX usermode)
- The "U:" after the username executes usermode nxserver
- The path afterwards points to the nxserver-usermode binary
See source code: https://github.com/Fabianx/freenx/blob/master/freenx-utils/nxpublickey/nxssh-4US.c
Everything should work. Cadence needs some fonts (too lazy to find out which exactly), so it's recommended to install these add-on packages from: https://www.nomachine.com/NX-3-5-0-Download-Package&Prod_Id=3835:
- nxfonts-100dpi-3.5.0-1.exe
- nxfonts-misc-3.5.0-1.exe
- nxfonts-others-3.5.0-1.exe
- nxfonts-75dpi-3.5.0-1.exe
Finally, save the complete config into an nxs file (e.g., can be found in %USERPROFILE%\.nx\*.nxs) and create a shortcut. This either starts Cadence as if it would be called locally (or resumes all windows if the connection was lost).
My example:
- General -> Desktop Unix/Custom -> Settings -> Run the following command: /afs/ir/users/n/h/nhammler/EE315B/cad.sh
- ~/EE315B/cad.sh contains:
#!/bin/tcsh setenv EE315B_WORKDIR /afs/ir.stanford.edu/users/n/h/nhammler/EE315B source /usr/class/ee315b/DOT.cshrc cd $EE315B_WORKDIR/opus echo Now starting virtuoso ... virtuoso
Server side (corn)
First steps based on http://openfacts2.berlios.de/wikien/index.php/BerliosProject:FreeNX_-_Howto
- Download NX4U (http://sourceforge.net/projects/freenx.berlios/files/)
- untar to ~/NX4U
- edit NX4U/bin/nxloadconfig:
NX_DIR=$HOME/NX4U
- edit etc/node.conf:
ENABLE_USERMODE_AUTHENTICATION="1" ENABLE_PASSDB_AUTHENTICATION="0" ENABLE_SSH_AUTHENTICATION="0" COMMAND_MD5SUM="md5sum"
The last line is the most important one; it causes nxserver to fail without any useful messages. Hints found in: http://mail.kde.org/pipermail/freenx-knx/2012-March/009541.html
- install libXpm libraries:
corn is a 64 bit system but nx requires the 32 bit version of this library. Download libxpm4_3.5.10-1_i386.deb from: http://packages.ubuntu.com/de/raring/i386/libxpm4/download
and copy (with Midnight Commander - can open deb files) CONTENTS/usr/lib/i386-linux-gnu/*.* to NX4U/lib
Links
- http://openfacts2.berlios.de/wikien/index.php/BerliosProject:FreeNX_-_Howto
- http://openfacts2.berlios.de/wikien/index.php/BerliosProject:FreeNX_-_FAQ/Server
- http://blog.felipe-alfaro.com/2009/01/18/freenx-usermode-authentication-and-mac-os-x/
- http://mail.kde.org/pipermail/freenx-knx/2008-August/007324.html
- http://www.rrzn.uni-hannover.de/anl-nx-client.html
- http://www.rrzn.uni-hannover.de/anl-nx-linserv.html
- http://www-flc.desy.de/flc/flcwiki/J%C3%B6rgenSamson/NXClientUsermode
- http://mail.kde.org/pipermail/freenx-knx/2012-March/009541.html
- http://wiki.centos.org/HowTos/FreeNX