FreeSurfer Remote Access
Suppose you want to run freesurfer from home remotely? (this means freesurfer runs on a different computer, and the screen is forwarded to a different computer)
For simplicity, let's call the host computer (the one running freesurfer) "WORK". And the remote computer (the one viewing the copy of the screen) "HOME".
1. Get a VNC client:
To view freesurfer remotely, you need a VNC viewer program for HOME.
For linux
vncviewer
For windows
realVNC
For Mac
chicken of the VNC
All three abovementioned programs are free and available on the web.
2. Get a VNC server
You also need a vnc server on WORK. vncserver.glx and vncserver are free linux programs. Get them if you don't have them already.
3. If needed, learn about SSH tunnelling
If you are logging into a remote computer with fancy security, you may need to use SSH tunnelling. Check the internet for details about how to do this. (it is not hard)
4. Run your vncserver.glx
From the WORK computer, simply enter:
vncserver.glx
(note: password protection is available... see vncserver documentation)
5. Run your vnc client
From you HOME computer, run the client, and log into the WORK computer.
ADDITIONAL NOTES:
- VNC is supposed to be optimized for sending remote screen images. Therefore, it is preferred over using X forwarding if you are not on a local intranet.
- If you are using SSH tunnelling, then you have encrypted the connection, which is a good thing if whatever you are doing shouldn't be seen by others.
vncserver WILL NOT run freesurfer correctly. Only vncserver.glx will do the job. Here is the vncserver.glx script if your server is not at the NMR Center (in which case you will also need xf4vnc, to get GLX support with VNC).
- On some machines, the colors will be funky with vncserver.glx. They will be normal with vncserver. That's just how it is.
If these instructions are not working for you, then try these.
An issue with the newer MESA GL libraries that come by default with RHEL5/CentOS5 is that they do not work for some reason. A lot of proprietary vendors base their GL libs on Mesa and seem to have the same issue (such as ATI). The only GL libs that seem to work are the MESA ones from RHEL4/CentOS4 or NVIDIA's proprietary GL libs that are installed. The later NVIDIA ones are only used when local. So for remote use of Freesurfer, one must use the Mesa GL libs from RHEL4/CentOS4. The NMR Center systems copy these to /usr/lib/GLoverride for 32 bit and /usr/lib64/GLoverride for 64 bit. On a 64bit box you have to have both so you can run both. So on a 64bit box your LD_LIBRARY_PATH would have: /usr/lib64/GLoverride:/usr/lib/GLoverride and you have to download both sets of libs and put them in the appropriate places. here is a tarball containing the 32b /usr/lib/GLoverride files, and the 64b /usr/lib64/GLoverride files. p.raines