linux - crontab 脚本不执行串行命令

标签 linux cron debian beagleboneblack autostart

我正在尝试让我的脚本工作,它应该在我的 Beaglebone 启动时执行。 如果我在终端中执行命令,一切正常。如果我重新启动 Beaglebone,脚本也能正常工作。但是,如果我关闭电源并再次启动它,除了通过串行接口(interface)的命令外,一切正常。

我的定时任务:

SHELL=/bin/bash
PATH=/usr/local/sbin:/usr/local/bin/:/bin:/usr/sbin:/usr/binusr/bin
@reboot /bin/bash /usr/bin/script.sh

我的脚本:

#!/bin/bash
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/binusr/bin
export DISPLAY=:0.0
/bin/stty -F /dev/ttyO1 raw
sleep 0.2
/bin/stty -F /dev/ttyO1 38400
sleep 0.2
echo 'ont' > /dev/ttyO1
echo "test"
exit 0

我也尝试过 rc.local 但没有成功

最佳答案

确认您没有使用任何 SELinux 权限。尝试取下“shields down”,意思是“setenforce 0”,再试一次,看看它是否有效。 (然后回到setenforce 1)

如果这样做成功了,在关闭 SELinux 的情况下,您将不得不设计如何通过检查审计日志来绕过某些权限。观察/var/log/audit/* 发生了什么,然后阅读 audit2why 和 audit2allow 以修改特定权限。

关于linux - crontab 脚本不执行串行命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32247610/

相关文章:

Linux at命令脚本不断重复

php - 为 wordpress 添加一个 cron-function

javascript - 仅适用于 linux chrome,不适用于 windows chrome

docker - 从 Dockerfile 构建并获取 "The following signatures couldn' t 被验证,因为公钥不可用 : NO_PUBKEY"

linux - Mex 无法识别类型 'Matrix'

c - 在 Windows 上获取 c 目录中的每个文件

cronjob中的python多线程问题

linux - 在 initramfs Raspbian 中以 Root 身份挂载 Squashfs

linux - 这行代码在 shell 中是如何工作的?

linux - 如何从 Linux Shell 中的句子中提取单词?