SSH 接続を閉じても Mono がハングアップしないようにできますか?

SSH 接続を閉じても Mono がハングアップしないようにできますか?

私はヘッドレス Linux サーバーを持っており、SSH 経由で接続しています。最近、通常のタスクに加えて、Mono を使用して C# で記述された [ゲーム サーバー][1] をホストするためにこのサーバーを使い始めました。パフォーマンスは素晴らしいです。ただし、SSH セッションから切断すると、セッションがハングアップし、ゲーム クライアントが切断されます。

ゲーム サーバーを起動するには、 コマンド を実行しますmono KMPServer.exe。この後、サーバー ソフトウェアが起動し、構成情報が表示されます。ただし、 と入力するまでゲーム サーバーは実行されません/start

そのため、使用できませんnohup。サーバーを起動するプロセスでは、最初に mono でサーバーを実行し、次にサーバーと対話して " /start" コマンドを発行する必要があります。興味深いことに、プロセスをバックグラウンドで実行することもできません (これは Mono では正常ですか?)。

SSH セッションを切断したときにゲーム サーバーが閉じないように実行する方法はありますか?

まとめ:

  • サーバーソフトウェア(リンク切れ削除)は、サードパーティのマルチプレイヤーサーバー(MODの一部)です。カーバル宇宙計画
  • Linux サーバーは Arch Linux x86_64 を実行しています。
  • インストールされているMonoバージョンは3.2.3です

答え1

スクリーンセッションを使用できるようです。スクリーンツールに詳しくない場合は、マニュアルページを確認するか、スクリーンコマンドの例: Linux / Unix ターミナルの制御を取得する

まず、 を使用してインストールしますpacman -S screen。次に、 を使用して新しいセッションを開始しscreen mono KMPServer.exe、必要な操作をすべて実行して、Ctrl+ A+を使用してセッションをデタッチします。Dセッションを再度アタッチする必要がある場合は、 を使用しますscreen -x

関連情報