-bash: ./manage.py: 权限被拒绝

53

运行以下命令后: $ ./manage.py migrate 我遇到了以下错误:

-bash: ./manage.py: Permission denied

尝试在对数据库进行更改后运行迁移。非常感谢您的任何建议。


3
你的脚本有什么权限?除非有执行权限,否则不能随意运行任何脚本。 - Jeff Mercado
5个回答

87

为了执行manage.py文件,需要将其设置为可执行文件。请执行chmod +x manage.py进行设置。另外,您也可以使用命令python manage.py <cmd>来代替。


16

要为包含脚本的文件赋予执行权限,请使用以下命令:

chmod u+rwx filename.py

如果要让其他用户具有读取和执行但不修改Shell脚本的权限,请使用:

chmod go+rx filename.py

参考资料 http://unixhelp.ed.ac.uk/scrpt/scrpt1.2.html


2

你可以尝试使用

python manage.py migrate

代替

/manage.py migrate


1
你的回答可以通过提供更多支持信息来改进。请编辑以添加进一步的细节,例如引用或文档,以便他人可以确认你的答案是正确的。您可以在帮助中心找到有关如何编写良好答案的更多信息。 - Community

0
在你的Python代码顶部添加这行;
#!/usr/bin/python3
然后通过在终端上输入chmod +x ,使你的文件可执行
然后再试一次

-2

我在输入了root后,键入了su root space,然后它就起作用了。

root是我的管理员密码,然后在管理员密码后面加上一个空格再输入CMD。


4
标点符号,请加上! - alekwisnia

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接