hzxie / voj

A cross-platform online judge system based on Spring MVC framework and ActiveMQ.
https://verwandlung.org
GNU General Public License v3.0
569 stars 121 forks source link

如何不删除/tmp目录下创建的文件夹或文件? #34

Closed chinghonsun closed 6 years ago

chinghonsun commented 6 years ago

如何不删除/tmp目录下创建的文件夹或文件?

hzxie commented 6 years ago

为什么不删除? 不删除可能会带来额外的安全问题. 如果你想不删除, 可以注释掉judger/src/main/java/org/verwandlung/voj/judger/core/Dispatcher.java中63行的代码.

chinghonsun commented 6 years ago

os.system()返回值为512,十六位二进制数示为:00000010,00000000,高八位转乘十进制为 2 对应 linux命令返回值 2

"OS error code 2: No such file or directory"

我这边出现错误,是因为/tmp/voj-*****目录创建了又删除了,导致任务执行不完整

chinghonsun commented 6 years ago

文件夹被删除,并不是因为cleanUp()方法,在执行compile后就被删除了

chinghonsun commented 6 years ago

我已经创建了系统用户和密码,已添加到用户组others里面了,我觉得是因为一些权限的问题导致的,但是就是不知道是哪里的问题

chinghonsun commented 6 years ago

image 这是什么原因?

chinghonsun commented 6 years ago

image

hzxie commented 6 years ago

你注释掉 CleanUp 那个函数, 然后检查一下对应的文件是否存在? 如果文件存在, 请尝试执行一下对应的命令, 看提示什么?

chinghonsun commented 6 years ago

我已经注释掉CleanUp 函数。就是文件和文件夹都不存在啊

hzxie commented 6 years ago

嗯。那就说明文件创建失败了。 检查一下运行Judger的用户是否有权限创建文件呢?