Difference between revisions of "Getting Started with Server"

From RAGE Multiplayer Wiki
Jump to navigation Jump to search
Line 2: Line 2:
 
== Introduction ==
 
== Introduction ==
  
This brief tutorial waill show you how to run your server on both Windows and Linux distributions.
+
This brief tutorial will show you how to run your server on both Windows and Linux distributions.
  
 
By default, the server makes use of port 22005 UDP for server access so make sure to have done the port forwarding on your router process and have also unblocked the port on your firewall before running the server.
 
By default, the server makes use of port 22005 UDP for server access so make sure to have done the port forwarding on your router process and have also unblocked the port on your firewall before running the server.

Revision as of 23:00, 12 November 2017

Introduction

This brief tutorial will show you how to run your server on both Windows and Linux distributions.

By default, the server makes use of port 22005 UDP for server access so make sure to have done the port forwarding on your router process and have also unblocked the port on your firewall before running the server.

Windows

Troubleshooting

Linux

Installing GCC 6

Debian, Ubuntu, and derivatives

Ubuntu 16.04.x and older

sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install gcc-6 g++-6

Installing the server

# Downloading server
cd /tmp
wget https://cdn.rage.mp/lin/server
mkdir ~/srv
mv server ~/srv
cd ~/srv 
chmod +x server
./server

# Firewall commands (iptables only) (dont forget to save the rule after adding it)
iptables -A INPUT -p udp --dport 22005 -j ACCEPT


Setting up

Installing screen

For running the server in background, we recommend using screen mainly for its ease of use

Debian based (Ubuntu & derivatives)

sudo apt-get install screen

CentOS 6.x/7.x

yum install screen

Starting the server

screen -dmS GTASERVER -L bash -c 'cd ~/srv && ./server' &

# Parameter explanation
# screen -dmS = starts a separate shell without directly opening an interface towards it (detached mode). The S param defines a session name for the newly created session, so that it is easier to manage in the future.
# screen -L = basically logs whatever error that is shown by the server through the separate shell into a file for easier reference in the future.
# !IMPORTANT!
# Log output will be saved as screenlog._number_ in the server directory.
# &: IS IMPORTANT IF YOU WANT TO TERMINATE THE PROCESS GRACEFULLY

Stopping the server

To stop the server, there's usually two ways to do that, one that we call a graceful shutdown that sends the server a signal for termination and the other, well, a crash since it does not allow the code to run through the termination process correctly.

RECOMMENDED:

kill $(ps h --ppid $(screen -ls | grep GTASERVER | cut -d. -f1) -o pid)

NOT RECOMMENDED: It does not shut down the server gracefully

screen -S GTASERVER -X quit

Troubleshooting