
SSH를 통해 연결하는 헤드리스 Linux 서버가 있습니다. 저는 최근에 일반적인 작업 외에도 C#으로 작성된 [게임 서버][1]를 Mono와 함께 호스팅하는 데 사용하기 시작했습니다. 그것은 훌륭하게 수행됩니다! 그러나 SSH 세션 연결을 끊으면 연결이 끊기고 게임 클라이언트 연결이 끊어집니다.
게임 서버를 시작하려면 명령을 실행합니다 mono KMPServer.exe
. 그 후 서버 소프트웨어가 시작되고 구성 정보가 표시됩니다. 그러나 게임 서버는 를 입력할 때까지 실행되지 않습니다 /start
.
그 때문에 사용할 수 없습니다 nohup
. 서버를 시작하는 과정에는 먼저 모노로 서버를 실행한 다음 서버와 상호 작용하여 " /start
" 명령을 실행하는 과정이 포함됩니다. 흥미롭게도 프로세스의 배경을 설명할 수도 없습니다(Mono의 경우 이것이 정상인가요?).
SSH 세션 연결을 끊을 때 게임 서버가 닫히지 않도록 실행하는 방법이 있나요?
요약:
- 서버 소프트웨어(데드 링크 제거됨)는 타사 멀티플레이어 서버(모드의 일부)입니다.커발 우주 프로그램.
- Linux 서버는 Arch Linux x86_64를 실행하고 있습니다.
- 설치된 Mono 버전은 3.2.3입니다.
답변1
스크린 세션을 사용할 수 있어야 할 것 같습니다. 화면 도구에 익숙하지 않은 경우 매뉴얼 페이지를 확인하거나화면 명령 예: Linux/Unix 터미널 제어권 얻기.
먼저 pacman -S screen
. 그런 다음 로 새 세션을 시작 screen mono KMPServer.exe
하고 필요한 모든 작업을 수행한 다음 ++ Ctrl로 세션을 분리합니다 . 세션을 다시 연결해야 하는 경우 를 사용하세요 .ADscreen -x