【发布时间】:2017-06-20 18:05:09
【问题描述】:
我有一个问题,我无法在启动时使用 rc.local 文件启动屏幕会话。我正在启动的特定屏幕是用于 spigot minecraft 服务器。
这是我的 rc.local 文件:
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
/home/pi/Documents/bootlog.sh
/home/spigot1_12/startspigot.sh
exit 0
这是 startspigot.sh 脚本(使用 chmod u+x):
#!/bin/bash
cd /home/spigot1_12
boot=$(date)
echo "Starting spigot server in screen \"minecraft\" @ $boot " >> /home/pi/Documents/minecraftlog
screen -S minecraft java -Xms512M -Xmx1008M -jar /home/spigot1_12/spigot-1.12.jar nogui
minecraftlog 文件在每次启动时都会更新,因此脚本会运行。
当我运行命令“sudo sh startspigot.sh”时,一切正常。屏幕启动并更新 minecraftlog 文件。我可以用“sudo screen -ls”再次找到屏幕
然而,在启动时,“sudo screen -ls”和“screen -ls”都没有返回任何套接字。
是什么原因造成的?仅有的两个用户是“pi”和root。
提前致谢!
【问题讨论】:
-
Stack Overflow 是一个编程和开发问题的网站。这个问题似乎离题了,因为它与编程或开发无关。请参阅帮助中心的What topics can I ask about here。也许Super User 或Unix & Linux Stack Exchange 会是一个更好的提问地点。
标签: linux bash gnu-screen rc