如何避免在Raspbian中使用xdp下的某些程序使用sudo?

时间:2016-07-14 21:31:59

标签: linux xrdp

背景:我为基金会照看了Scratch的Raspberry Pi版本。这主要是关于Smalltalk编程,VM开发以及使用shell脚本的一些非常令人沮丧的时刻。

现在,当使用xrdp从任何其他计算机连接到Pi时,我对看起来可能是unix权限或相关问题感到困惑和烦恼。我知道直接使用Squeak VM并不是一个问题,因为谷歌已经发现了其他一些具有类似外观问题的应用程序。我的部分问题是,我对这个领域知之甚少,不知道要搜索什么来缩小范围。

所以,问题描述 - 当前的Scratch系统在Squeak Cog VM上运行(参见https://github.com/OpenSmalltalk/opensmalltalk-vm),其中包括使用pthread并需要设置线程优先级。曾经是需要修改一些配置的东西,但是更新的(Raspbian)内核没有问题。

除了使用xrdp时,这很痛苦,因为我主要通过xrdp将我的Pi工作到我的iMac。为了解决这个问题,我必须预先设置一个“sudo -E”,这对于开发人员来说是可以容忍的,但对普通用户来说并不是很好。 我在VM make过程中使用了一个简单的文件复制命令也有类似的问题,并且它不使用任何线程的东西也没有优先级工作,但确实需要我在终端窗口中sudo make

作为一项实验,我尝试使用tightvnc,看看是否有更好的效果。阅读完整安装说明(https://www.raspberrypi.org/documentation/remote-access/vnc/)并添加自动启动init.d脚本等后,似乎我们运气好,因为不需要sudo!万岁!当然,我对看似较慢的显示处理感到有些失望,但没关系。

可悲的是,这甚至还没有接近故事的结尾。我最近一直致力于完成对X合成输入窗口系统的支持,该系统允许日语和其他非Latin1类型语言用户更容易地输入字符。一旦你安装了iBus,Anthy,很多字体并完成了一些设置,它就非常聪明了。但是,虽然它在带有直接显示的Pi上运行得非常好,而且在xrdp显示上很好(当然,sudo允许Scratch首先运行),它无法通过vnc工作,无论是否有须藤。

谷歌搜索显示大量其他应用程序在相关的XCreateIC()调用中以奇怪的方式出现问题(请参阅https://github.com/OpenSmalltalk/opensmalltalk-vm/blob/Cog/platforms/unix/vm-display-X11/sqUnixX11.c行:1659以供我们使用)但是我无法与vnc建立多少连接。为了增加烦恼,终端的组合窗口显示正常!

总结 - 直接显示 - pthread优先级或compo窗口没有问题 xrdp - 需要sudo的pthreads优先级,但compo窗口工作正常 vnc - pthread优先级不需要sudo但是compo窗口不起作用。

我需要什么:帮助找出导致这些问题甚至是解决方案的原因。将xrdp配置为不需要'sudo'的方法会很好。

1 个答案:

答案 0 :(得分:0)

令我高兴的是,一位同事发现了一个看似非常有效的答案;似乎/etc/pam.d/common-session文件需要添加一行。 编辑文件并添加       会话需要pam_limits.so 这允许我以前拥有权限相关问题的所有应用程序在xrdp下运行。另一个使用PuTTY遇到类似问题的Scratch用户报告说它也解决了这个问题。