可执行脚本在 Linux 机器上获得权限被拒绝

use*_*714 5 linux permissions bash

尝试在 Ubuntu 14.04 上运行脚本。

$ bash MirroirHome
Run Code Online (Sandbox Code Playgroud)

运行良好

$ ./MirroirHome
bash: ./MirroirHome: Permission denied

$ ls -l
total 32
-rwxr-xr-x 1 gerald gerald  214 nov 14 15:44 MirroirHome
Run Code Online (Sandbox Code Playgroud)

我是文件的所有者并且权限位打开,这是怎么回事?

这是脚本以防万一。

#!/bin/bash
rsync \
--archive \
--verbose \
--compress \
--update \
--delete \
/home/ /media/Data/MirroirHome
Run Code Online (Sandbox Code Playgroud)

Sto*_*ica 4

如果分区是在该noexec标志打开的情况下安装的,则可能会发生这种情况。您可以通过运行来验证这一点mount:在输出中找到分区,并且在标志列表中,可能会有noexec.

要解决此问题,请重新挂载不带该标志的分区noexec。或者,将脚本复制到已安装的另一个分区(不带noexec.