ubuntu 通过bash启动python脚本时权限被拒绝

hjzp0vay  于 2023-04-20  发布在  Python
关注(0)|答案(9)|浏览(221)
# ./scripts/replace-md5sums.py
bash: ./scripts/replace-md5sums.py: Permission denied

replace-md5sums.py具有chmod 600

# ls -l ./scripts/replace-md5sums.py
-rw------- 1 ubuntu ubuntu 661 2011-04-27 16:30 ./scripts/replace-md5sums.py
68bkxrlz

68bkxrlz1#

您应该能够运行脚本,键入:

$ chmod 755 ./scripts/replace-md5sums.py
$ ./scripts/replace-md5sums.py

有时您当前登录的用户没有更改文件模式位的权限。在这种情况下,如果您有root密码,则可以通过以下方式更改文件权限:

$ sudo chmod 755 ./scripts/replace-md5sums.py
8aqjt8rx

8aqjt8rx2#

  • 在终端中输入:chmod u+x脚本名,最后带有'.py'扩展名。
  • 记住,u代表user,x代表对文件的读、写和执行操作。
  • 请记住,必须在Python脚本顶部的行是:#!/usr/bin/python3.9使用root用户可以轻松识别python的版本和路径。
  • 现在重新执行一次。
xmakbtuz

xmakbtuz3#

使用“exec”选项挂载Windows分区-在某些发行版上默认为“noexec”。

q3aa0525

q3aa05254#

我解决了我的问题。这只是解释器从第一行读取的python版本。删除到版本号为我做了,即。

#!/usr/bin/python2.7 --> #!/usr/bin/python
kulphzqa

kulphzqa5#

试试这个

python ./scripts/replace-md5sums.py
b5buobof

b5buobof6#

我是一个Ubuntu用户,我遇到了同样的问题,当我试图通过bash脚本运行python脚本,而文件位于NTFS分区(即使使用su也不起作用),然后我把它移回家(ext4),然后它工作了。

oxcyiej7

oxcyiej77#

好的,首先检查你是否在你的python脚本所在的正确目录中。
在网络上,他们说运行命令:

python3 your_file_name.py

但它不起作用。
然而,对我起作用的是:

python -u my_file_name.py
xeufq47z

xeufq47z8#

#strace ./scripts/replace-md5sums.py
mbjcgjjk

mbjcgjjk9#

检查id。它可能具有root权限。
因此,键入su,然后以./scripts/replace-md5sums.py的形式执行脚本。
它的工作。

相关问题