r语言 - Rmpi、OpenCPU 和 Apparmor:拒绝"/"请求



我有一个R包,它将一个作业发送到我通过Rmpi包运行的OpenMPI集群。在从控制台运行的R会话中,所有工作都符合预期。然而,当我尝试从我的OpenCPU服务器执行相关功能时,如下所示(为了保护无辜,更改了细节):

curl -XPOST http://99.999.999.99/ocpu/library/MyPackage/R/my_cluster_function

我得到这个错误:

R call failed: process died.

(包中的其他非集群调用函数通过OpenCPU按预期工作)。我注意到在/var/log/kern.log中,apparmor将各种请求称为DENIED,并且通过在/etc/apparmor.d/opencpu.d/custom中添加条目以允许OpenMPI访问所需的文件,我已经能够解决其中的大多数请求。然而,我无法解决与位置"/":的"打开"请求相关的这两个问题(再次,IP地址更改)

Oct 26 03:49:58 99.999.999.99 kernel: [142952.551234] type=1400 audit(1414295398.849:957): apparmor="DENIED" operation="open" profile="opencpu-main" name="/" pid=22486 comm="orted" requested_mask="r" denied_mask="r" fsuid=33 ouid=0
Oct 26 03:49:58 99.999.999.99 kernel: [142952.556422] type=1400 audit(1414295398.857:958): apparmor="DENIED" operation="open" profile="opencpu-main" name="/" pid=22485 comm="apache2" requested_mask="r" denied_mask="r" fsuid=33 ouid=0

将此添加到我的服装规则中没有帮助:

/* r,

两个问题:

  1. 为什么opencpu试图从我的根级目录中读取(或者这意味着其他什么)
  2. 更紧迫的是,我该如何解决这个幽灵问题

谢谢。

您可能需要添加两个apparmor规则

/ r,
/* r,

第一条规则允许/的目录列表,第二条规则允许读取/下的任何文件。

我不明白为什么Rmpi想要读取/,或者为什么你得到了process died错误而不是拒绝访问。你确定问题已经完全解决了吗?

相关内容

  • 没有找到相关文章

最新更新