首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >cronjob中的bash脚本无法执行/sbin/fake hwclock

cronjob中的bash脚本无法执行/sbin/fake hwclock
EN

Unix & Linux用户
提问于 2022-02-03 09:57:23
回答 1查看 193关注 0票数 1

我已经编辑了我的根crontab以定期执行一个脚本:

代码语言:javascript
复制
sudo crontab -e

它应该以根用户身份执行以下脚本(位于安装的USB上):

代码语言:javascript
复制
* * * * * /mnt/usb0/fake-hwclock-cron.sh

然后脚本(1) fake-hwclock-cron.sh运行脚本(2) fake-hwclock以节省当前时间:

代码语言:javascript
复制
#!/bin/sh
echo "$(fake-hwclock save)"

脚本(2) fake-hwclock (位于“/sbin/ file hwclock”中)然后将时间节省到安装在USB上的文件(3) fake-hwclock.data

USB自动挂载有以下选项:

代码语言:javascript
复制
PARTUUID=1c921a37-01 /mnt/usb0 ext4 defaults,auto,users,rw,nofail 0 0

文件权限:

代码语言:javascript
复制
(1) -rwxrwxrwx 1 pi   pi    /mnt/usb0/fake-hwclock-cron.sh
(2) -rwxr-xr-x 1 root root  /sbin/fake-hwclock
(3) -rwxrwxrwx 1 pi   pi    /mnt/usb0/fake-hwclock.data

如果我理解正确的话,对于文件(1) fake-hwclock-cron.sh和(3) fake-hwclock.data,每个用户都可以读/写/执行。对于文件(2) fake-hwclock,每个用户都可以读取/执行。

。。但是忽略这些权限一秒钟,作为sudo执行的cron作业是否也执行带有su权限的脚本(1) fake-hwclock-cron.sh

更令人困惑的是:我可以在shell中没有su权限的情况下执行这两个脚本(1) / (2),但我不能使用su权限作为cron作业执行它们。

所以,有人能向我解释一下为什么我被“拒绝许可”错误吗?

/bin/sh: 1: /mnt/usb0/fake-hwclock-cron.sh: Permission denied

我希望我已经解释得够好了,否则请告诉我

EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2022-02-03 10:44:52

根据mount |grep usb0的输出,它显示挂载点是由noexec选项挂载的,它将阻止您只执行脚本,但是您可以使用shell解释器直接执行它,例如:

代码语言:javascript
复制
* * * * * sh /path/to/script.sh

对于后面的错误fake-hwclock: not found,您需要提供完整的fake-hwclock逗号。

请参阅有关诺埃克的更多信息。

票数 1
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/689100

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档