注意:如果我以 root 用户身份手动启动该脚本,它可以正常工作。
我将脚本添加到 crontab。它通过 @reboot 调用:
@reboot sh start.sh >/dev/null 2>&1
该脚本在启动后被调用,它如下所示:
touch file1.txt
screen -X -S miner kill >> miner.log
screen -dmS miner -L
screen -S miner -p 0 -X stuff "bash startminer.bash^M"
file.txt 生成,kill 命令的输出消息(“未找到 scrren 会话”)记录在 miner.log 中。但此后 screenlog.0 文件仅包含一个“#”,屏幕不存在。但就在自动启动时,如果我手动启动它,它工作正常。start.sh 具有 777 权限。为什么屏幕不启动或死机?
答案1
在文件中start.sh
,您可能有错误:您必须添加命令的第一个文件是:#!/bin/bash
。我认为更改后它会起作用