Debian サーバー - 1 つのスクリーン・セッションで 2 つのサーバーを自動的に開始します。

Debian サーバー - 1 つのスクリーン・セッションで 2 つのサーバーを自動的に開始します。

小さな仮想サーバーでプライベートMinecraftとTeamspeakサーバーを実行したいと思います。手動で起動すると正常に動作しますが、サーバーの起動時にサーバーが自動的に起動したいと思います。

2台のサーバーを実行するときは、screenを使用して複数のウィンドウを表示します。しかし、2つのウィンドウでスクリーンセッションを開始し、起動時に実行される単一のスクリプトを使用して各ウィンドウでサーバーを実行する方法がわかりません。

別々の画面セッションを開始し、実行コマンドを送信し、そのセッションで新しいウィンドウを開き、別のコマンドを送信できますか?

私は次のようなことを考えました。

screen -dmS test -t win1              # create new screen session, name it test 
                                      #    and name the first window win1
screen -S test -X mcStart.sh          # start the minecraft server
screen -S test -X screen -t win2      # create a new window, name it win2
screen -S test -X tsStart.sh          # start teamspeak server

私の考えには良いようですが、まったく動作しません。 「win1」と「win2」という名前の2つの空のウィンドウを持つスクリーンセッションのみが表示されます。

これを行うために私が何をすべきか教えてください。

注:可能であれば、単一画面セッションで各サーバーを実行したくありません。

答え1

-Xうまくいかないのは、実行中のコマンドだからです。実行screenするには、以下を使用する必要があります。mcStart.shtsStart.sh

screen -dmS test -t win1 mcStart.sh
screen -rS test -X screen -t win2 tsStart.sh

関連情報