运行脚本中的权限被拒绝

时间:2014-02-02 07:04:22

标签: linux bash shell centos

我正在运行一个脚本,但有一个不寻常的警告: 这就是我的控制台中发生的事情

#whoami
root
#ls -l test.sh
-rwxr-xr-x. 1 root root 1894 Feb  2 01:58 test.sh*
#./test.sh
-bash: ./test.sh: Permission denied

编辑: 我的剧本:

#!/bin/bash
while read pass port user ip file; do
  echo "startt------------------------------------" $ip
  ping $ip -c 4
  if [ $? -eq 0 ]; then
    echo $ip ok...
  else
    echo $ip failed...
  fi
  echo "finish------------------------------------" $ip
done <<____HERE
pass  22  root  1.1.1.1  test.txt
____HERE

任何想法? 谢谢

1 个答案:

答案 0 :(得分:-1)

我正在/ tmp目录中运行脚本 如你所见,ls的结果是:

-rwxr-xr-x. 1 root root 1894 Feb  2 01:58 test.sh*

在权限之后有.,表示SELinux安全上下文适用于该文件。所以我在另一个目录中复制了test.sh ......

问题解决了

ls -l /
drwxrwxrwt.   8 root root  1024 Feb  2 07:44 tmp/

我在一个目录中,可执行文件驻留可能是一个坏主意

这些也可以起作用:

setenforce 0 | reboot

OR

echo 0 > /selinux/enforce | reboot

OR:

putting SELINUX=disabled in /etc/selinux/config and reboot (making sure to comment out anything in that file enabling selinux)

SELINUX状态:sestatus