我有一个Django应用程序,该应用程序有一个名为codefiles
的自定义文件夹。在其中,有许多带有随机名称的子文件夹。此外,在每个文件夹中都有一个Makefile。我目前很困惑为什么在调用以下代码时会说OSError: [Errno 13] Permission denied
:
p = subprocess.Popen(["make", "-f", os.path.join(directory, "Makefile")], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.STDOUT, close_fds=True, shell=True)
这里可能是什么问题?
编辑: 即使调用以下代码,也会导致“权限被拒绝”错误:
current_directory = os.getcwd()
logging.debug("current_dir: " + str(current_directory));
EDIT2:这越来越奇怪了。即使是注释也会导致“权限被拒绝”错误。这是错误日志:
File "./src/tasks/views.py", line 1178, in test_run_code
# create the make file
File "/usr/lib/python2.7/subprocess.py", line 711, in __init__
errread, errwrite)
File "/usr/lib/python2.7/subprocess.py", line 1343, in _execute_child
raise child_exception
OSError: [Errno 13] Permission denied