Startup

如何在啟動時啟動腳本文件?

  • December 20, 2018

我正在執行一個小我的世界伺服器。

我希望 Lubuntu 在伺服器啟動時執行以下腳本。不在登錄時,也不在重新啟動時(當然,除非它正在啟動)。

該腳本目前位於:

/home/mc/server/craftbukkit.sh

我可以通過進入目錄並鍵入來手動啟動腳本./craftbukkit.sh。但是我想在機器啟動時觸發腳本。

我從 debian 終端執行我的世界伺服器,這可能是錯誤的方法,但它有效。首先,sudo apt-get install screen然後將以下腳本另存為/etc/init.d/minecraft

#!/bin/bash
case "$1" in
 start)
   screen -S minecraft /home/mc/server/craftbukkit.sh
   echo "Server started on screen minecraft"
   ;;
 stop)
   screen -X -S minecraft kill
   echo "Server shutting down"
   ;;
 *)
   echo "Usage: /etc/init.d/minecraft {start|stop}"
   exit 1
   ;;
esac

exit 0

現在,以 root 身份執行以下命令:

update-rc.d -f minecraft defaults

這將使我的世界伺服器在系統啟動時在後台執行。要查看控制台,請screen -x minecraft在終端中執行。要退出控制台,請按 Ctrl+A,然後按 D。

在最新的 Ubuntu 上,你應該這樣做,創建/etc/init/bukkit.conf(無論是什麼 .conf),

description     "Some java server"
author          "Moi <moi@x.com>"

start on runlevel [2345]   # change start / stop level if needed
stop on runlevel [016]

pre-start script
  echo "script is abort to start"
end script

exec /path/to/script param1 param2

post-start script
  echo "script is started" # if you needed any post-start hack
end script

更多資訊在這裡。

引用自:https://unix.stackexchange.com/questions/44903