Linux 从crontab运行shell脚本时权限被拒绝

Linux 从crontab运行shell脚本时权限被拒绝,linux,shell,permissions,runtime-error,crontab,Linux,Shell,Permissions,Runtime Error,Crontab,我在Linux中登录到我的id,然后作为超级用户登录,因为我没有主目录。当我在crontab上设置它时,我得到一个错误: /bin/sh: /export/home/****/somefoldername/Check.sh: Permission denied. 我已通过发布以下文件授予对该文件的完全访问权限: chmod 777 请让我知道如何解决这个问题 # m h dom mon dow user command 0 * * * * root /root/scr/s

我在Linux中登录到我的id,然后作为超级用户登录,因为我没有主目录。当我在crontab上设置它时,我得到一个错误:

 /bin/sh: /export/home/****/somefoldername/Check.sh: Permission denied.
我已通过发布以下文件授予对该文件的完全访问权限:

chmod 777
请让我知道如何解决这个问题

# m h dom mon dow user  command
0 *    * * *   root    /root/scr/script.sh

我不知道您使用的是哪个linux发行版,但在Ubuntu上,您可以指定crontab应该运行的用户。

crontab进程(其用户)还必须有权访问文件夹somefoldername。而且,如果/export/home位于网络文件系统上(顾名思义;-),则运行crontab进程的用户必须具有网络文件系统的权限。在这种情况下,解决方案取决于您的设置。请您的网络管理员帮助您。somefoldername是超级用户..我没有主目录,因此我以su-somefoldername登录并从那里进行计划。通过在命令行上调用
su-somefoldername
切换到非超级用户(root)的用户
somefoldername
。[如果somefoldername的用户ID为0;-),则它可能是超级用户]。一个问题可能是文件夹
somefoldername
没有足够的权限更改为该文件夹并在其中执行脚本/程序。另一方面,路径
export/home
使我认为home dir位于网络文件系统上。那么crontab可能会有问题,因为它具有访问网络的权限。这是网络管理员的情况。谢谢Peter,我将与网络管理员核实我使用的是Redhat Linux。ubuntu 16.04没有“用户”栏。