这是我的情况。
用户A当前登录在计算机A上。
用户B通过ssh登录到计算机A。
用户B通过终端A记录(osascript -e 'set volume 0')运行
这是我的错误日志:
Oct 20 13:25:17 osascript[29389] <Error>: Set a breakpoint at CGSLogError to catch errors as they are logged.
Oct 20 13:25:17 osascript[29389] <Error>: This user is not allowed access to the window system right now.
Oct 20 13:25:17 osascript[29389] <Warning>: CGSConnectionByID: 0 is not a valid connection ID.
Oct 20 13:25:17 osascript[29389] <Warning>: CGSConnectionByID: 0 is not a valid connection ID.
Oct 20 13:25:17 osascript[29389] <Warning>: CGSConnectionByID: 0 is not a valid connection ID.
2015-10-20 13:25:17.196 osascript[29389:1503684] CFPasteboardRef CFPasteboardCreate(CFAllocatorRef, CFStringRef) : failed to create global data
2015-10-20 13:25:17.197 osascript[29389:1503684] CFPasteboardRef CFPasteboardCreate(CFAllocatorRef, CFStringRef) : failed to create global data
2015-10-20 13:25:17.197 osascript[29389:1503684] CFPasteboardRef CFPasteboardCreate(CFAllocatorRef, CFStringRef) : failed to create global data
2015-10-20 13:25:17.197 osascript[29389:1503684] CFPasteboardRef CFPasteboardCreate(CFAllocatorRef, CFStringRef) : failed to create global data
Oct 20 13:25:17 osascript[29389] <Warning>: CGSConnectionByID: 0 is not a valid connection ID.
_RegisterApplication(), FAILED TO establish the default connection to the WindowServer, _CGSDefaultConnection() is NULL.
Oct 20 13:25:17 osascript[29389] <Warning>: CGSConnectionByID: 0 is not a valid connection ID.
Oct 20 13:25:17 osascript[29389] <Warning>: CGSConnectionByID: 0 is not a valid connection ID.
Oct 20 13:25:17 osascript[29389] <Warning>: CGSConnectionByID: 0 is not a valid connection ID.侧注释用户B被设置为admin
很久以前,我记得在没有任何错误的情况下执行这个情况。不确定这是否是具有权限的ARD设置?
发布于 2015-10-29 19:21:29
我找到了一个可行的选择..。
如果我加上
sudo -u username在osascript -e命令之前,然后它就工作了。
示例
sudo -u username osascript -e 'set volume 0' 从阅读上看,苹果似乎不允许用户在另一个用户登录时通过ssh会话打开应用程序。必须以当前用户身份登录才能运行osascripts,否则,添加以下命令sudo -u username
https://stackoverflow.com/questions/33247260
复制相似问题