如何让 Ubuntu Server 自动在两个虚拟终端上启动程序?

如何让 Ubuntu Server 自动在两个虚拟终端上启动程序?

所以我有一个 Minecraft 服务器和一个网站,我想在计算机启动时启动两个东西:Minecraft 服务器和 Minecraft 概览器。我想让服务器在 tty1 中启动,让概览器在 tty2 中启动。(apache 东西启动正常并在后台运行。)顺便说一句,概览器只是一个overviewer --config ~/overviewer/config每小时重复一次的 bash 脚本。

我该如何做呢?

答案1

要在启动时启动特定进程tty,您必须编辑此文件:/etc/init/tty*.conf。用*数字替换tty。将服务器的启动脚本添加到此文件。示例可能是:

exec /sbin/getty -n -l /path/to/minecraft-server/startup.sh -8 38400 tty1

如果您的脚本没有明确调用/sbin/login!这可能不允许您登录。

回想起来,openvt可能更适合您的需求。编辑您的/etc/rc.local文件并添加openvt命令。

openvt -c 1 sh /path/to/minecraft-server/startup.sh

该脚本将在启动时自动运行@tty1:)


您需要cron为 设定一个作业overviewercron是一个计划任务(您定义/配置的)以特定间隔运行的程序。阅读更多关于cron 这里

示例cron作业条目可能overviewer如下所示:

0 * * * * root /path/to/overviewer/overviewer --config ~/overviewer/config

该条目将进入crontab位于 的文件中/etc/crontab

条目的格式crontab为:

minute hour day-of-month month day-of-week user command

希望这可以帮助!

相关内容