2014-09-12 147 views
0

你好,我有一个服务器运行我创建的游戏,它有三个SH脚本需要在单独的终端运行,所以我想知道的是2件事。崩溃时自动重启SH脚本?

1:有没有一种方法,我可以得到我双击并启动所有三个脚本,在那里我可以看到外壳(调试)

2一个脚本:有什么办法说脚本在退出或崩溃时会自动重启? (全自动化的访问时,该服务器由一个开发为无人值守)

服务器规格: 6GB内存60GB SSD 6核心CPU 的Ubuntu 14.04 与VNC的桌面控制

回答

1

这里是为您SH脚本。

running=1 

finish() 
{ 
    running=0 
} 

trap finish SIGINT 

while ((running)); do 
    // Execute the command here that starts your server. 
    echo "Restarting server on crash.." 
    sleep 5 
done 

您可以在它自己的screen每个服务器上运行此脚本。这样你可以看到每个控制台的输出。例如:

screen -S YOURUNIQUENAME -m THESCRIPTABOVE.sh

为了从屏幕分离,然后按Ctrl + A,然后按CTRL + D.你能回到屏幕上通过使用screen -x YOURUNIQUENAME

有关使用一个很好的指南screen命令,请参阅此文章:http://www.rackaid.com/blog/linux-screen-tutorial-and-how-to/。它甚至有一个视频来展示它的使用方式。

+0

运行此脚本时,出现以下错误 server.sh:running:not found 有没有想法? – Ryan 2014-09-13 02:44:24