我有一个安装了某些服务器的vps linux ubuntu 16.04。
我已经厌倦了一直手动重启服务器。 我该怎么解决这个问题?
我的服务器运行时带有“屏幕”
在所有需要重新启动服务器的时间,我都需要这样做:
重启服务器时,有一种方法可以自动执行所有这些步骤吗?
谢谢。
答案 0 :(得分:0)
我要做的是我的主目录中有一个名为onboot.sh
的文件。该文件的内容为:
#!/bin/bash
cd /home/server
screen -Ldm -S ScreenSessionName bash server.sh
L
是可选的。它将在包含脚本输出日志的目录中创建一个名为screenlog.0
的文件。 -S
设置会话名称。 -d
会在创建屏幕后分离屏幕,并且-m
会强制创建一个新的屏幕会话。
要使脚本在引导时运行,我使用cron
。就我而言,我使用sudo crontab -e
编辑根用户的crontab并添加以下行:
@reboot sudo -u username bash /home/username/onboot.sh
这将以给定用户身份运行onboot.sh
。如果您希望以root用户身份运行它,只需输入
@reboot bash /home/username/onboot.sh
在crontab中。
以您希望运行crontab -e
脚本的用户身份执行server.sh
。
添加以下行:
@reboot cd /home/server && screen -Ldm -S ScreenSessionName bash server.sh
保存文件。而已。