[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

20051001: Running IDV on account not owning console



>From: Dave Dempsey <address@hidden>
>Organization: SF State
>Keywords: 200510020335.j923ZQG7028889 IDV Mac

Hi Dave-

>I've installed the IDV on a bunch of Mac G4 laptops running OS X 10.3.9 in
>a computer lab. The account that each of these machines logs into by
>default and that owns the console is a generic account called "student".
>Students open an X-window, type "runIDV", and the IDV runs fine.

Okay.

>Howeover, I'd like to set things up so that students can run the IDV after
>they log onto their own, individual accounts on these machines. They would
>log onto their accounts by running "ssh acctname@localmachine" in an
>X-window. ("acctname" is the name of the student's individual
>account--which is shared by a remote account server via NIS--and
>"localmachine" is the dynamic IP address of the local machine.)
>
>Unfortunately, when we try to do this, the IDV is denied permission to
>open its GUI because the individual student accounts don't own the console
>(the generic "student" account does). Here's an example session:

We have a paucity of expertise on Mac OS-X today, but I'll do my best.
What happens if they try ssh -Y acctname@localmachine? (to tunnel
the xwindows).

>student_ai-03% ssh ddempsey@130.212.215.105
>ddempsey@130.212.215.105's password:
>Welcome to Darwin!
>ddempsey_ai-03% runIDV
>kCGErrorRangeCheck : Window Server communications from outside of session
>allowed for root and console user only
>Exception in thread "main" java.lang.InternalError: Can't connect to
>window server - not enough permissions.
>        at java.lang.ClassLoader$NativeLibrary.load(Native Method)
>        at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1586)
>        at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1503)
>        at java.lang.Runtime.loadLibrary0(Runtime.java:788)
>        at java.lang.System.loadLibrary(System.java:834)
>        at
>sun.security.action.LoadLibraryAction.run(LoadLibraryAction.java:50)
>        at java.security.AccessController.doPrivileged(Native Method)
>        at sun.awt.NativeLibLoader.loadLibraries(NativeLibLoader.java:38)
>        at sun.awt.DebugHelper.<clinit>(DebugHelper.java:29)
>        at java.awt.Component.<clinit>(Component.java:506)
>        at ucar.unidata.util.LogUtil.checkConsole(LogUtil.java:549)
>        at ucar.unidata.util.LogUtil.consoleMessage(LogUtil.java:561)
>        at ucar.unidata.util.LogUtil.printException(LogUtil.java:739)
>        at ucar.unidata.util.LogUtil.printException(LogUtil.java:670)
>        at
>ucar.unidata.idv.IntegratedDataViewer.logException(IntegratedDataViewer.java:2
> 098)
>        at
>ucar.unidata.idv.IntegratedDataViewer.<init>(IntegratedDataViewer.java:283)
>        at ucar.unidata.idv.DefaultIdv.<init>(DefaultIdv.java:81)
>        at ucar.unidata.idv.DefaultIdv.main(DefaultIdv.java:144)
>
>
>Is there anything I can do about this?

Try the -Y option to SSH and see if that helps.  I'll talk to our
Mac OS gurus when they are around and see if there are other solutions.

Don
NOTE: All email exchanges with Unidata User Support are recorded in the
Unidata inquiry tracking system and then made publicly available
through the web.  If you do not want to have your interactions made
available in this way, you must let us know in each email you send to us.