Skip to content

Instantly share code, notes, and snippets.

@julik
Created September 7, 2009 23:44
Show Gist options
  • Save julik/182624 to your computer and use it in GitHub Desktop.
Save julik/182624 to your computer and use it in GitHub Desktop.
__________________________________________________
Setup for Remote Control of Flame(Linux) via VNC
__________________________________________________
GENERAL NOTES:
-- For the sake of simplicity, I've referred to the Autodesk application as "Flame", since that's what I'm using, although this will probably work for any other Autodesk Linux system.
-- It's necessary to set up two vnc servers on two different ports - one, an X11 vnc server for accessing the GUI login screen of the machine in order to do the initial login to the Flame account and another vnc server - KDE Desktop Sharing - in order to effectively run the application - to support mouse clicks and proper screen refreshes. The port numbers used - 5902 and 5901 can be changed to whatever will work for your particular situation.
-- It's necessary to have a speedy local area network or Internet connection to do anything worthwhile. Don't expect to see anything resembling realtime playback, unless you've got a connection that's orders of magnitude faster than what most people have! On a fast local network, however, there is actually quite a bit that you can do. Over the Internet, good luck. Your mileage may vary.
-- If you are accessing your machine over any unsecured network - e. g., the Internet - you would be wise to establish your connection via ssh, vpn or whatever secured connection you may be able to set up. At the very least, use an industrial strength password. VNC has known vulnerabilities and passing it through a secured connection is the only way to help prevent unauthorized access to your machine and network. 'Nuff said. If you are accessing your machine through a firewall, you will probably have to set up port forwarding for the vnc ports you are using. But that's beyond the scope of this how-to description.
-- I have tested the vnc connection setup on an iMac, running Mac OS X 10.5.5, using Apple's 'Screen Sharing' application and also 'Chicken of the VNC' and 'JollysFastVNC'. I suspect that this will work fine when connecting from a PC, another Linux box or whatever. However, I'll leave that for someone else to try out...
__________________________________
SETUP INSTRUCTIONS:
__________________________________
_______________________
On the Linux Side...
-----------------------
1) Login to the Flame account that you want to control.
2) Click on the Red Hat Icon (lower left of screen) to access the KDE Desktop Sharing configuration GUI:
-- Go to System Tools and select "Desktop Sharing"
-- Click on [Configure]
-- Click on the [Access] tab and configure Desktop Sharing as follows:
[x] Allow uninvited connections
[x] Announce service on the network
[ ] Confirm uninvited connections before accepting
[x] Allow uninvited connections to control the desktop
Password:
[************** ]
-- Click [Apply].
Note: Don't check 'Confirm uninvited connections before accepting'or else someone will need to confirm the connection on the Linux system side before the connection can be made. And, be sure to enter a password.
-- Click on the [Network] tab.
-- Uncheck "Assign port automatically" and set the Port number to [5901].
-- Click [Apply].
Important Note: I have had problems making these settings "stick" when accessing the Desktop Sharing setup via the System Tools menu. Another way to access the Desktop Sharing configuration menus is to select "Control Center" from the Red Hat menu, then click "Internet & Network" and then "Desktop Sharing". The same settings tabs are available and the settings seem stick when I Apply them. Must be a bug in the Red Hat menus...
3) Check that you have the file:
/usr/X11R6/lib64/modules/extensions/vnc.so
Note: It is part of the vnc-server RPM which all the Autodesk linux systems seemto have installed already. If it's there, no need to do anything...
4) Add one line -- Load "vnc" --to your /etc/X11/xorg.conf "Module" section:
Note: Please MAKE ACOPY of the xorg.conf file before making any changes to it!
EXAMPLE:
# Module loading section
Section "Module"
Load "glx" # OpenGL X protocol interface
Load "extmod" # Misc. required extensions
Load "vnc" # Add this line!
EndSection
5) Add two "Option" lines to your /etc/X11/xorg.conf "Screen" section; one for the vnc password file location and one for the X11 vnc port:
Note: There are many "Screen" sections in the xorg.conf file. The two "Option" lines that need to be added are only necessaryin the "Screen" section for your particular hardware configuration. Look in the section called "ServerLayout" at the beginning of the file to see which"Screen" definition is active (uncommented) for your machine. Search for that name in the "Screen" sections below and add the lines to that section.
EXAMPLE:
Section "Screen"
Identifier "Screen Sony SDM-P234 / EIZO CE240W FX5500G 1920x1200"
Device "NVIDIA Quaddro FXx500 Sony SDM-P234"
Monitor "Sony SDM-P234 FX5500 1920x1200"
DefaultDepth 24
SubSection "Display"
Modes "1920x1200x5994"
Modes "1920x1200x50"
Modes "1920x1200x60"
Modes "1920x1200x48"
Modes "1920x1200x47"
Depth 24
EndSubSection
Option "passwordFile" "/etc/X11/vncpasswd" # Add this line!
Option "rfbport" "5902" # Add this line!
EndSection
6) Create the vnc password file:
/usr/bin/vncpasswd /etc/X11/vncpasswd
Note: The path to the password file must match the 'Option "passwordFile"' definition that you put in the xorg.conf file. I only mention this because I had a typo in mine that prevented the authentication from working properly and caused me a lot headaches to track down the problem...
7) Restart the X server:
--Logout and type ALT+E ...or ALT-CNTRL-BACKSPACE ...or use the [Menu] at the bottom of the login GUI and select 'Resart X Server'.
Note: The output of the command 'xdpyinfo' should now have VNC-EXTENSION in theextension list (DISPLAY must point to your linux display).
_______________________
On the Mac Side...
-----------------------
1) Run the "Screen Sharing.app" application - located in /System/Library/CoreServices/
Note: This is the standalone version of the same screen sharing that iChat uses and probably Apple Remote Desktop, as well. In this example, I am using Apple's built-in application, since it doesn't require any additional software downloads or configuration. Sometimes I have problems connecting to the X11 vnc server with Apple's Screen Sharing app. So, other, more sophisticated choices for vnc access on a Mac might include applications such as "Chicken of the VNC or "JollysFastVNC" and others. I have found that JollysFastVNC seems to be significantly more responsive than Chicken of the VNC. However, it is still in Alpha development and might contain bugs. Still, I was notified of two software updates for JollysFastVNC, just in the past two days, so the developer seems to be updating it regularly...
2) Enter the IP address and port number for the machine you want to
control:
EXAMPLE: 192.168.1.100:5902 (Local Area Network example)
70.10.5.200:5902 (Internet example)
Note: The 5902 port is the one we set up for the X11 vnc server. This will allow access to the GUI login screen. After that connection is made, and you have logged into the Flame account, you will need to close the connection and open a new one, using port 5901, which will use the KDE Desktop Sharing vnc server to drive Flame.
-- Type the password you used when you created the X11 vnc password file (/usr/bin/vncpasswd /etc/X11/vncpasswd) on the Linux machine system.
-- If all goes well, you should now be connected and seeing the Linux login GUI.
3) Use the GUI to login to the Flame account.
4) Close the Screen Sharing connection.
5) Run the Screen Sharing.app again to establish a new connection. This time using port 5901:
EXAMPLE: 192.168.1.100:5901 (Local Area Network example)
70.10.5.200:5901 (Internet example)
Note: The 5901 port is the one we set up for the KDE Desktop Sharing vnc server.
-- Type the password you used when you configured KDE Desktop Sharing.
-- You should now be connected again and looking at the Flame Linux account desktop.
6) Click on the terminal screen icon on the desktop toolbar at the bottom of the screen to open a new Linux shell window.
7) Type this at the command prompt:
setenv DL_POINTER_EVENT_USE_GENERIC
Note: Without this environment variable being set, you will not be able to use the mouse to control Flame.
8) *In the same shell window*, type 'flame' to start the application.
You should be able to drive the application remotely, now!
Note: When you are done, you can exit Flame and logout. This will automatically kill the vnc connection, since KDE Desktop Sharing is killed when the account is logged out.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment